Forráskód Böngészése

1.业务数据渠道 毛利润逻辑修改

wuhp 1 éve
szülő
commit
2197f5b8f2

+ 13 - 0
src/main/java/com/ydtech/modules/admin/model/dto/QxFrontlineAgentDto.java

@@ -1,5 +1,6 @@
 package com.ydtech.modules.admin.model.dto;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -132,6 +133,18 @@ public class QxFrontlineAgentDto implements Serializable {
     @ApiModelProperty(value = "预计利润")
     private BigDecimal estimatedProfit;
 
+    //入口总金额
+    @ApiModelProperty(value = "入口总金额")
+    private BigDecimal entranceAllFee;
+
+    //出口总金额
+    @ApiModelProperty(value = "出口总金额")
+
+    private BigDecimal exportAllFee;
+    //毛利润
+    @ApiModelProperty(value = "毛利润")
+    private BigDecimal distributionAmount;
+
     private Integer totalManpowerNum;
 
     private Double totalPremiumNum;

+ 5 - 5
src/main/java/com/ydtech/modules/admin/service/impl/UserReportServiceImpl.java

@@ -271,8 +271,8 @@ public class UserReportServiceImpl implements UserReportService {
                 }
                 qxFrontlineAgentVo.setUserId(dto.getUserId());
                 //预期净利润
-//                BigDecimal ExpectNetProfit = insAreaCompanyService.getExpectNetProfit(qxFrontlineAgentVo);
-//                dto.setEstimatedProfit(ExpectNetProfit);
+                BigDecimal ExpectNetProfit = insAreaCompanyService.getExpectNetProfit(qxFrontlineAgentVo);
+                dto.setEstimatedProfit(ExpectNetProfit);
 
             }
             resultPage.setContent(qxFrontlineAgentDtos);
@@ -374,9 +374,9 @@ public class UserReportServiceImpl implements UserReportService {
                 }
             }
             qxFrontlineAgentVo.setUserId(dto.getUserId());
-            //预期净利润
-            BigDecimal ExpectNetProfit = insAreaCompanyService.getExpectNetProfit(qxFrontlineAgentVo);
-            dto.setEstimatedProfit(ExpectNetProfit);
+//            //预期净利润
+//            BigDecimal ExpectNetProfit = insAreaCompanyService.getExpectNetProfit(qxFrontlineAgentVo);
+//            dto.setEstimatedProfit(ExpectNetProfit);
 
             QxFrontlineAgentExcel qxFrontlineAgentExcel = new QxFrontlineAgentExcel();
             BeanUtils.copyProperties(dto,qxFrontlineAgentExcel);

+ 2 - 10
src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyServiceImpl.java

@@ -1125,16 +1125,8 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
             BigDecimal entranceAllFee = insAreaCompany.getEntranceAllFee();// 入口金额
             BigDecimal exportAllFee = insAreaCompany.getExportAllFee(); // 出口金额
             BigDecimal distributionAmount = insAreaCompany.getDistributionAmount(); // 毛利润
-//            // 计算三级分销金额
-//            HashMap<String,BigDecimal> distribution  =baseMapper.getDistributionAllAmount(qxFrontlineAgentVo);
-//            if(!distribution.isEmpty()){
-//                BigDecimal bigDecimal = distribution.get("distributionAmount");
-//                // 利润= 入口- 出口 - 分销
-//                return entranceAllFee.subtract(exportAllFee).subtract(bigDecimal);
-//            }else {
-//                return entranceAllFee.subtract(exportAllFee) ;
-//            }
-            entranceAllFee.subtract(exportAllFee).subtract(distributionAmount);
+            return  entranceAllFee.subtract(exportAllFee).subtract(distributionAmount);
+
         }
         return BigDecimal.ZERO;
     }

+ 8 - 8
src/main/resources/mapper/modules/order/InsAreaCompanyMapper.xml

@@ -3294,10 +3294,10 @@
 
     <select id="getExpectNetProfit" resultType="com.ydtech.modules.order.entity.InsAreaCompany">
         select
-        IFNULL(ifon.jq_costs_premiums,0) + IFNULL(ifon.sy_costs_premiums,0) + IFNULL (ifon.no_costs_premiums,0) as "entranceAllFee",
-        IFNULL(jq_export_other_costs_premiums,0) + IFNULL(jq_export_supervise_costs_premiums,0) +IFNULL(sy_export_other_costs_premiums,0) +IFNULL(sy_export_supervise_costs_premiums,0)
-        +IFNULL(no_export_supervise_costs_premiums,0)+IFNULL(no_export_supervise_costs_premiums,0)  as "exportAllFee",
-        IFNULL(b.distributionAmount,0) as "distributionAmount"
+        sum(IFNULL(ifon.jq_costs_premiums,0) + IFNULL(ifon.sy_costs_premiums,0) + IFNULL (ifon.no_costs_premiums,0)) as "entranceAllFee",
+        sum(IFNULL(jq_export_other_costs_premiums,0) + IFNULL(jq_export_supervise_costs_premiums,0) +IFNULL(sy_export_other_costs_premiums,0) +IFNULL(sy_export_supervise_costs_premiums,0)
+        +IFNULL(no_export_supervise_costs_premiums,0)+IFNULL(no_export_supervise_costs_premiums,0) ) as "exportAllFee",
+        sum(IFNULL(b.distributionAmount,0)) as "distributionAmount"
         from ins_area_company iac
         left join ins_orders io on io.orderno = iac.orderno
         LEFT JOIN ins_fee_order_new ifon ON iac.id = ifon.ins_order_no
@@ -3316,7 +3316,7 @@
                     ifon.first_level_user_id  =#{vo.userId}
                 </if>
                 <if test="vo.ids  != null  and  vo.ids.size()>0 ">
-                    AND io.userid IN
+                    AND ifon.first_level_user_id IN
                     <foreach item="item"  collection="vo.ids" open="(" separator="," close=")">
                         #{item}
                     </foreach>
@@ -3339,7 +3339,7 @@
                     ifon.two_level_user_id  =#{vo.userId}
                 </if>
                 <if test="vo.ids  != null  and  vo.ids.size()>0 ">
-                    AND io.userid IN
+                    AND ifon.two_level_user_id IN
                     <foreach item="item"  collection="vo.ids" open="(" separator="," close=")">
                         #{item}
                     </foreach>
@@ -3363,7 +3363,7 @@
                     ifon.three_level_user_id  =#{vo.userId}
                 </if>
                 <if test="vo.ids  != null  and  vo.ids.size()>0 ">
-                    AND io.userid IN
+                    AND ifon.three_level_user_id IN
                     <foreach item="item"  collection="vo.ids" open="(" separator="," close=")">
                         #{item}
                     </foreach>
@@ -3377,7 +3377,7 @@
         ) b   on b.firstLevelUserId =iac.leader_id
         <where>
             <if test="vo.userId !=null  and  vo.userId  !=''">
-                iac.leader_id  =#{vo.userId}
+                io.userid  =#{vo.userId}
             </if>
             <if test="vo.ids  != null  and  vo.ids.size()>0 ">
                 AND io.userid IN