he2802 2 år sedan
förälder
incheckning
c683ba5a13

+ 18 - 0
zhongzheng-admin-saas/src/main/java/com/zhongzheng/controller/financial/TopDivideLogController.java

@@ -64,4 +64,22 @@ public class TopDivideLogController extends BaseController {
         return toAjax(iTopDivideLogService.updateRemark(bo) ? 1 : 0);
     }
 
+
+    @ApiOperation("查询业务员提成列表")
+    @PreAuthorize("@ss.hasPermi('system:log:list')")
+    @GetMapping("/sellerList")
+    public TableDataInfo<TopDivideLogVo> getSellerList(TopDivideLogQueryBo bo) {
+        startPage();
+        List<TopDivideLogVo> list = iTopDivideLogService.getSellerList(bo);
+        return getDataTable(list);
+    }
+
+    @ApiOperation("查询佣金列表")
+    @PreAuthorize("@ss.hasPermi('system:log:list')")
+    @GetMapping("/commissionList")
+    public TableDataInfo<TopDivideLogVo> getCommissionList(TopDivideLogQueryBo bo) {
+        startPage();
+        List<TopDivideLogVo> list = iTopDivideLogService.getCommissionList(bo);
+        return getDataTable(list);
+    }
 }

+ 9 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/bo/TopDivideLogAddBo.java

@@ -54,4 +54,13 @@ public class TopDivideLogAddBo {
     private BigDecimal deductMoney;
     @ApiModelProperty("机构ID")
     private String tenantId;
+    /** 业务员名称 */
+    @ApiModelProperty("业务员名称")
+    private String createUsername;
+    /** 业务员名称ID */
+    @ApiModelProperty("业务员名称ID")
+    private Long createSysUserId;
+    /** 业务号 */
+    @ApiModelProperty("业务号")
+    private String createNo;
 }

+ 9 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/bo/TopDivideLogEditBo.java

@@ -64,4 +64,13 @@ public class TopDivideLogEditBo {
     private BigDecimal deductMoney;
     @ApiModelProperty("机构ID")
     private String tenantId;
+    /** 业务员名称 */
+    @ApiModelProperty("业务员名称")
+    private String createUsername;
+    /** 业务员名称ID */
+    @ApiModelProperty("业务员名称ID")
+    private Long createSysUserId;
+    /** 业务号 */
+    @ApiModelProperty("业务号")
+    private String createNo;
 }

+ 9 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/bo/TopDivideLogQueryBo.java

@@ -70,4 +70,13 @@ public class TopDivideLogQueryBo extends BaseEntity {
 	private Long roleId;
 	@ApiModelProperty("月份时间(时间戳)")
 	private List<Long> monthTime;
+	/** 业务员名称 */
+	@ApiModelProperty("业务员名称")
+	private String createUsername;
+	/** 业务员名称ID */
+	@ApiModelProperty("业务员名称ID")
+	private Long createSysUserId;
+	/** 业务号 */
+	@ApiModelProperty("业务号")
+	private String createNo;
 }

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/domain/TopDivideLog.java

@@ -53,4 +53,10 @@ private static final long serialVersionUID=1L;
     private BigDecimal deductMoney;
 
     private String tenantId;
+    /** 业务员名称 */
+    private String createUsername;
+    /** 业务员名称ID */
+    private Long createSysUserId;
+    /** 业务号 */
+    private String createNo;
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/mapper/TopDivideLogMapper.java

@@ -21,4 +21,8 @@ public interface TopDivideLogMapper extends BaseMapper<TopDivideLog> {
     List<TopDivideLogVo> getCheckList(TopDivideLogQueryBo bo);
 
     TopDivideLogVo getSumMoney(TopDivideLogQueryBo bo);
+
+    List<TopDivideLogVo> getSellerList(TopDivideLogQueryBo bo);
+
+    List<TopDivideLogVo> getCommissionList(TopDivideLogQueryBo bo);
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/service/ITopDivideLogService.java

@@ -57,4 +57,8 @@ public interface ITopDivideLogService extends IService<TopDivideLog> {
 	boolean updateRemark(TopDivideLogEditBo bo);
 
 	TopDivideLogVo getSumMoney(TopDivideLogQueryBo bo);
+
+	List<TopDivideLogVo> getSellerList(TopDivideLogQueryBo bo);
+
+	List<TopDivideLogVo> getCommissionList(TopDivideLogQueryBo bo);
 }

+ 32 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/service/impl/TopDivideLogServiceImpl.java

@@ -142,4 +142,36 @@ public class TopDivideLogServiceImpl extends ServiceImpl<TopDivideLogMapper, Top
     public TopDivideLogVo getSumMoney(TopDivideLogQueryBo bo) {
         return baseMapper.getSumMoney(bo);
     }
+
+    @Override
+    public List<TopDivideLogVo> getSellerList(TopDivideLogQueryBo bo) {
+        List<TopDivideLogVo> list = baseMapper.getSellerList(bo);
+        for(TopDivideLogVo vo :list){
+            TopDivideLogQueryBo queryBo = new TopDivideLogQueryBo();
+            queryBo.setTenantId(vo.getTenantId());
+            queryBo.setDivideType(2);
+            queryBo.setRoleId(bo.getRoleId());
+            queryBo.setCheckStatus(bo.getCheckStatus());
+            queryBo.setMonthTime(bo.getMonthTime());
+            List<TopDivideLogVo> monthList = baseMapper.getCheckList(queryBo);
+            vo.setMonthList(monthList);
+        }
+        return list;
+    }
+
+    @Override
+    public List<TopDivideLogVo> getCommissionList(TopDivideLogQueryBo bo) {
+        List<TopDivideLogVo> list = baseMapper.getSellerList(bo);
+        for(TopDivideLogVo vo :list){
+            TopDivideLogQueryBo queryBo = new TopDivideLogQueryBo();
+            queryBo.setTenantId(vo.getTenantId());
+            queryBo.setDivideType(3);
+            queryBo.setRoleId(bo.getRoleId());
+            queryBo.setCheckStatus(bo.getCheckStatus());
+            queryBo.setMonthTime(bo.getMonthTime());
+            List<TopDivideLogVo> monthList = baseMapper.getCheckList(queryBo);
+            vo.setMonthList(monthList);
+        }
+        return list;
+    }
 }

+ 13 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/financial/vo/TopDivideLogVo.java

@@ -91,4 +91,17 @@ public class TopDivideLogVo {
 
 	@ApiModelProperty("总未付分成")
 	private BigDecimal unPayMoneyTotal;
+
+	/** 业务员名称 */
+	@Excel(name = "业务员名称")
+	@ApiModelProperty("业务员名称")
+	private String createUsername;
+	/** 业务员名称ID */
+	@Excel(name = "业务员名称ID")
+	@ApiModelProperty("业务员名称ID")
+	private Long createSysUserId;
+	/** 业务号 */
+	@Excel(name = "业务号")
+	@ApiModelProperty("业务号")
+	private String createNo;
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/impl/TopOldOrderServiceImpl.java

@@ -2163,6 +2163,9 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
     @Override
     public Map<String, Object> countOrderNum(TopOldOrderQueryBo bo) {
         Map<String, Object> map = new HashMap<>();
+        if(Validator.isEmpty(bo.getTotalType())){
+            throw new CustomException("参数缺少");
+        }
         if(bo.getTotalType()==1){
             List<TopOldOrderVo> vos = baseMapper.queryListAll();
 //        BigDecimal price = vos.stream().filter(x -> ObjectUtils.isNotNull(x.getOrderPrice())).map(TopOldOrderVo::getOrderPrice).reduce(BigDecimal.ZERO, BigDecimal::add);

+ 80 - 0
zhongzheng-system/src/main/resources/mapper/modules/top/TopDivideLogMapper.xml

@@ -17,6 +17,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="payStatus" column="pay_status"/>
         <result property="remark" column="remark"/>
         <result property="deductMoney" column="deduct_money"/>
+        <result property="createUsername" column="create_username"/>
+        <result property="createSysUserId" column="create_sys_user_id"/>
+        <result property="createNo" column="create_no"/>
     </resultMap>
 
     <select id="getCompanyList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideLogQueryBo"  resultType="com.zhongzheng.modules.top.financial.vo.TopDivideLogVo">
@@ -58,6 +61,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             dl.tenant_id
     </select>
 
+
+
     <select id="getCheckList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideLogQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopDivideLogVo">
         SELECT
         dl.*,
@@ -120,4 +125,79 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </if>
     </select>
 
+    <select id="getSellerList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideLogQueryBo"  resultType="com.zhongzheng.modules.top.financial.vo.TopDivideLogVo">
+        SELECT
+        dl.tenant_id,
+        dl.create_no,dl.create_username,
+        sum(
+        IF
+        ( pay_status = 1, dl.pay_money, 0 )) AS pay_money_total,
+        sum(
+        IF
+        ( pay_status = 1, dl.deduct_money, 0 )) AS deduct_money_total,
+        st.tenant_name
+        FROM
+        top_divide_log dl
+        LEFT JOIN sys_tenant st ON dl.tenant_id = st.tenant_id
+        LEFT JOIN
+        top_old_order_check_log cl ON dl.id = cl.month_divide_id AND  cl.check_sign = 1
+        WHERE
+        dl.divide_type = 2
+        <if test="tenantId != null and tenantId != ''">
+            AND dl.tenant_id = #{tenantId}
+        </if>
+        <if test="roleId != null and roleId != ''">
+            AND cl.role_id = #{roleId}
+        </if>
+        <if test="checkStatus != null and checkStatus != ''">
+            AND cl.check_status in
+            <foreach collection="checkStatus" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="monthTime != null and monthTime != ''">
+            AND dl.month_time in
+            <foreach collection="monthTime" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        GROUP BY
+        dl.tenant_id,dl.create_no,dl.create_username
+    </select>
+
+    <select id="getCommissionList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideLogQueryBo"  resultType="com.zhongzheng.modules.top.financial.vo.TopDivideLogVo">
+        SELECT
+        dl.tenant_id,
+        sum(
+        IF
+        ( pay_status = 1, dl.pay_money, 0 )) AS pay_money_total,
+        st.tenant_name
+        FROM
+        top_divide_log dl
+        LEFT JOIN sys_tenant st ON dl.tenant_id = st.tenant_id
+        LEFT JOIN
+        top_old_order_check_log cl ON dl.id = cl.month_divide_id AND  cl.check_sign = 1
+        WHERE
+        dl.divide_type = 3
+        <if test="tenantId != null and tenantId != ''">
+            AND dl.tenant_id = #{tenantId}
+        </if>
+        <if test="roleId != null and roleId != ''">
+            AND cl.role_id = #{roleId}
+        </if>
+        <if test="checkStatus != null and checkStatus != ''">
+            AND cl.check_status in
+            <foreach collection="checkStatus" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="monthTime != null and monthTime != ''">
+            AND dl.month_time in
+            <foreach collection="monthTime" item="item" index="index" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        GROUP BY
+        dl.tenant_id
+    </select>
 </mapper>