puzhibing
2024-12-18 9834270f97f63dd46cb4aa845cd6b63f1c9382a7
Merge remote-tracking branch 'origin/master'

# Conflicts:
# ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopBalanceStatementServiceImpl.java
5个文件已修改
62 ■■■■ 已修改文件
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopBalanceStatement.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopPointController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/ShopBalanceStatementMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopBalanceStatementServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/ShopBalanceStatementMapper.xml 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/ShopBalanceStatement.java
@@ -3,11 +3,13 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
@@ -82,4 +84,16 @@
    @TableField(exist = false)
    @Excel(name = "联系电话")
    private String phone;
    @ApiModelProperty(value = "开始时间")
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String startTime;
    @ApiModelProperty(value = "结束时间")
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String endTime;
}
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopPointController.java
@@ -41,7 +41,7 @@
     * 门店积分统计
     */
    @GetMapping("/statistics")
    @ApiModelProperty("门店积分统计")
    @ApiModelProperty(value = "门店积分统计")
    public R<ShopPointStatistics> statistics(ShopPoint shopPoint) {
        ShopPointStatistics statistics = shopPointService.statistics(Page.of(shopPoint.getPageNum(), shopPoint.getPageSize()), shopPoint);
        return R.ok(statistics);
@@ -51,7 +51,7 @@
     * 导出门店积分统计
     */
    @GetMapping("/export")
    @ApiModelProperty("导出门店积分统计")
    @ApiModelProperty(value = "导出门店积分统计")
    public void export(HttpServletResponse response , ShopPoint shopPoint) {
        ShopPointStatistics statistics = shopPointService.statistics(Page.of(1, Integer.MAX_VALUE), shopPoint);
        if (statistics!=null){
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/mapper/ShopBalanceStatementMapper.java
@@ -17,4 +17,7 @@
 */
public interface ShopBalanceStatementMapper extends BaseMapper<ShopBalanceStatement> {
    List<ShopBalanceStatement> findLatestChangeByType(ShopBalanceStatement shopBalanceStatement);
    IPage<ShopBalanceStatement> queryShopBalanceStatementPage(@Param("page") IPage<ShopBalanceStatement> page,
                                                              @Param("bs") ShopBalanceStatement shopBalanceStatement);
}
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/ShopBalanceStatementServiceImpl.java
@@ -53,19 +53,7 @@
                .add(shopCommissionStatisticsVO.getTotalSubordinateCommission())
                .add(shopCommissionStatisticsVO.getTotalServiceCharge()));
        IPage<ShopBalanceStatement> statementIPage = page(page, new LambdaQueryWrapper<ShopBalanceStatement>());
        List<ShopBalanceStatement> records = statementIPage.getRecords();
        if (!CollectionUtils.isEmpty(records)){
            List<Integer> shopIds = records.stream().map(ShopBalanceStatement::getShopId).collect(Collectors.toList());
            List<Shop> shopList = shopService.listByIds(shopIds);
            records.forEach(st -> {
                shopList.stream().filter(shop -> shop.getId().equals(st.getShopId())).findFirst().ifPresent(shop -> {
                    st.setShopName(shop.getName());
                    st.setShopManagerName(shop.getShopManager());
                    st.setPhone(shop.getPhone());
                });
            });
        }
        IPage<ShopBalanceStatement> statementIPage = this.baseMapper.queryShopBalanceStatementPage(page, shopBalanceStatement);
        shopCommissionStatisticsVO.setStatementIPage(statementIPage);
        return shopCommissionStatisticsVO;
    }
ruoyi-service/ruoyi-other/src/main/resources/mapper/other/ShopBalanceStatementMapper.xml
@@ -32,4 +32,31 @@
        WHERE
            rn = 1
    </select>
    <select id="queryShopBalanceStatementPage" resultType="com.ruoyi.other.api.domain.ShopBalanceStatement">
        SELECT
            tsbs.*,
            ts.`name` shopName,
            ts.shop_manager shopManagerName,
            ts.phone
        FROM
            t_shop_balance_statement tsbs
                INNER JOIN t_shop ts ON ts.id = tsbs.shop_id AND ts.del_flag = 0
        <where>
            <if test="bs.shopName != null and bs.shopName != ''">
                AND ts.`name` like concat('%', #{bs.shopName}, '%')
            </if>
            <if test="bs.shopManagerName != null and bs.shopManagerName != ''">
                AND ts.shop_manager like concat('%', #{bs.shopManagerName}, '%')
            </if>
            <if test="bs.phone != null and bs.phone != ''">
                AND ts.phone like concat('%', #{bs.phone}, '%')
            </if>
            <if test="bs.type != null">
                AND tsbs.type = #{bs.type}
            </if>
            <if test="bs.startTime != null and bs.endTime != null">
                AND tsbs.create_time BETWEEN #{bs.startTime} AND #{bs.endTime}
            </if>
        </where>
    </select>
</mapper>