فهرست منبع

业绩统计 三级团队

785834757 2 سال پیش
والد
کامیت
9be5b8b379

+ 15 - 5
src/main/java/com/ydtech/modules/esm/service/impl/EsmUserReferrerServiceImpl.java

@@ -347,6 +347,9 @@ public class EsmUserReferrerServiceImpl extends ServiceImpl<EsmUserReferrerMappe
             EsmTeamPolicyVO esmTeamPolicyVO0 = this.baseMapper.queryOrderCountHz(userList0, record.getStartdate(), record.getEnddate());
             EsmTeamPolicyVO esmTeamPolicyVO1 = new EsmTeamPolicyVO();
             EsmTeamPolicyVO esmTeamPolicyVO2 = new EsmTeamPolicyVO();
+            EsmTeamPolicyVO esmTeamPolicyVO3 = new EsmTeamPolicyVO();
+            esmTeamPolicyVO2.setTeamlevel("二级团队");
+            esmTeamPolicyVO3.setTeamlevel("三级团队");
             if (esmTeamPolicyVO0 == null) {
                 esmTeamPolicyVO0 = new EsmTeamPolicyVO();
                 esmTeamPolicyVO0.setSumpremium(0);
@@ -383,14 +386,18 @@ public class EsmUserReferrerServiceImpl extends ServiceImpl<EsmUserReferrerMappe
                     }
                     esmTeamPolicyVO2.setTeamnum(userList2.size());
                     // 三级团队信息
-                    /*userList3 = this.baseMapper.getIdDown_3(esmUserReferrer.getId());
+                    userList3 = this.baseMapper.getIdDown_3(esmUserReferrer.getId());
                     if(userList3!=null && userList3.size()>0){
-                        userPolicyList3=this.baseMapper.queryOrderCount(userList3);
-                        EsmTeamPolicyVO esmTeamPolicyVO3=this.baseMapper.queryOrderCountHz(userList3);
+                        userPolicyList3=this.baseMapper.queryOrderCount(userList3,record.getStartdate(), record.getEnddate());
+                        EsmTeamPolicyVO esmTeamPolicyVO3_t=this.baseMapper.queryOrderCountHz(userList3,record.getStartdate(), record.getEnddate());
                         esmTeamPolicyVO3.setTeamlevel("三级团队");
                         esmTeamPolicyVO3.setTeamnum(userList3.size());
-                        hzList.add(esmTeamPolicyVO3);
-                    }*/
+                        if (esmTeamPolicyVO2_t != null) {
+                            esmTeamPolicyVO3.setSumpremium(esmTeamPolicyVO3_t.getSumpremium());
+                            esmTeamPolicyVO3.setUsernum(userPolicyList3.size());
+                        }
+
+                    }
                 }
 
             }
@@ -406,6 +413,7 @@ public class EsmUserReferrerServiceImpl extends ServiceImpl<EsmUserReferrerMappe
             userList.addAll(userList0);
             userList.addAll(userList1);
             userList.addAll(userList2);
+            userList.addAll(userList3);
             userList.addAll(registList);
             userPolicyList = this.baseMapper.queryOrderCount(userList, record.getStartdate(), record.getEnddate());
             EsmTeamPolicyVO esmTeamPolicyVO = new EsmTeamPolicyVO();
@@ -420,12 +428,14 @@ public class EsmUserReferrerServiceImpl extends ServiceImpl<EsmUserReferrerMappe
             hzList.add(esmTeamPolicyVO0);
             hzList.add(esmTeamPolicyVO1);
             hzList.add(esmTeamPolicyVO2);
+            hzList.add(esmTeamPolicyVO3);
             hzList.add(esmTeamPolicyVO9);
             esmUserCountVO.setHzList(hzList);
             esmUserCountVO.setUserPolicyList(userPolicyList);
             esmUserCountVO.setUserPolicyList0(userPolicyList0);
             esmUserCountVO.setUserPolicyList1(userPolicyList1);
             esmUserCountVO.setUserPolicyList2(userPolicyList2);
+            esmUserCountVO.setUserPolicyList2(userPolicyList3);
         } else {
             throw new SystemException("内部错误");
         }

+ 2 - 2
src/main/java/com/ydtech/modules/order/controller/InsOrdersController.java

@@ -315,7 +315,7 @@ public class InsOrdersController extends BaseController {
      * 获取快到期的保单
      * @return
      */
-    @GetMapping("/getExpirationInsure")
+    @PostMapping("/getExpirationInsure")
     @ApiOperation(value = "获取快到期的保单")
     public HttpResult getExpirationInsure(@RequestBody OrderExpirationQueryVo orderExpirationQueryVo){
         Page page = buildPageRequest(orderExpirationQueryVo.getPageDto());
@@ -328,7 +328,7 @@ public class InsOrdersController extends BaseController {
      * 获取快到期的保单的数量
      * @return
      */
-    @GetMapping("/getExpirationInsureCount")
+    @PostMapping("/getExpirationInsureCount")
     @ApiOperation(value = "获取快到期的保单数量")
     public HttpResult getExpirationInsureCount(@RequestBody OrderExpirationQueryVo orderExpirationQueryVo){
         orderExpirationQueryVo.setUserid(getUserId());

+ 2 - 2
src/main/java/com/ydtech/modules/order/dao/InsOrdersMapper.java

@@ -87,7 +87,7 @@ public interface InsOrdersMapper extends BaseMapper<InsOrders> {
      */
     OrderVo selectEntityByinsOrderNo(@Param("insOrderNo") String insOrderNo,@Param("timeFiltering")  String timeFiltering);
 
-    int getExpirationInsureCount(@Param("userId") String userId,@Param("startDate") String startTime,@Param("endDate") String endTime,@Param("isJq")Integer isJq);
+    int getExpirationInsureCount(@Param("userId") String userId,@Param("startDate") String startTime,@Param("endDate") String endTime,@Param("isJq")Integer isJq,@Param("param") String param);
 
-    Page<OrderExpirationVo> getExpirationInsure(@Param("page") Page page,@Param("userId") String userId,@Param("startDate") String startTime,@Param("endDate") String endTime,@Param("isJq")Integer isJq);
+    Page<OrderExpirationVo> getExpirationInsure(@Param("page") Page page,@Param("userId") String userId,@Param("startDate") String startTime,@Param("endDate") String endTime,@Param("isJq")Integer isJq,@Param("param") String param);
 }

+ 2 - 0
src/main/java/com/ydtech/modules/order/entity/vo/OrderExpirationQueryVo.java

@@ -33,5 +33,7 @@ public class OrderExpirationQueryVo extends PageRequest {
     @ApiModelProperty(value = "商业终保时间")
     private String syEndDate;
 
+    @ApiModelProperty(value = "查询参数")
+    private String param;
 
 }

+ 3 - 0
src/main/java/com/ydtech/modules/order/entity/vo/OrderExpirationVo.java

@@ -60,6 +60,9 @@ public class OrderExpirationVo implements Serializable {
     @TableField(value = "company_id")
     private String companyId;
 
+    @TableField(value = "ins_company")
+    private String insCompany;
+
     /**
      * 交强险结束时间
      */

+ 6 - 6
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -1185,8 +1185,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             oneMonthAgo = currentTime.minus(1, ChronoUnit.MONTHS);
         }
         return baseMapper.getExpirationInsureCount(orderExpirationQueryVo.getUserid(),
-                currentTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
-                oneMonthAgo.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),isJq);
+                oneMonthAgo.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
+                currentTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),isJq,orderExpirationQueryVo.getParam());
     }
 
     @Override
@@ -1194,10 +1194,10 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         LocalDateTime currentTime,oneMonthAgo;
         Integer isJq = 1;
         if(orderExpirationQueryVo.getJqEndDate() != null){
-            currentTime = LocalDateTime.parse(orderExpirationQueryVo.getJqEndDate());
+            currentTime = LocalDateTime.parse(orderExpirationQueryVo.getJqEndDate(),DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
             oneMonthAgo = currentTime.minus(1, ChronoUnit.MONTHS);
         }else if(orderExpirationQueryVo.getSyEndDate() != null){
-            currentTime = LocalDateTime.parse(orderExpirationQueryVo.getSyEndDate());
+            currentTime = LocalDateTime.parse(orderExpirationQueryVo.getSyEndDate(),DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
             oneMonthAgo = currentTime.minus(1, ChronoUnit.MONTHS);
             isJq = 2;
         }else {
@@ -1205,7 +1205,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             oneMonthAgo = currentTime.minus(1, ChronoUnit.MONTHS);
         }
         return baseMapper.getExpirationInsure(page,orderExpirationQueryVo.getUserid(),
-                currentTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
-                oneMonthAgo.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),isJq);
+                oneMonthAgo.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
+                currentTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),isJq,orderExpirationQueryVo.getParam());
     }
 }

+ 28 - 14
src/main/resources/mapper/modules/order/InsOrdersMapper.xml

@@ -1237,9 +1237,12 @@
 
     <select id="getExpirationInsureCount" resultType="Integer">
         SELECT
-            count( orderno ) AS count
+            count( b.orderno ) AS count
         FROM
-            ins_orders
+            ins_orders a
+        left join
+            ins_area_company b
+        on a.orderno = b.orderno
         WHERE
             <if test="isJq == 1">
                 jqenddate BETWEEN #{startDate} AND #{endDate}
@@ -1247,19 +1250,23 @@
             <if test="isJq == 2">
                 syenddate BETWEEN #{startDate} AND #{endDate}
             </if>
-          AND orderstatus = 3
-          AND userid LIKE '${userId}%'
+        AND a.orderstatus = 3
+        AND b.orderstatus = 3
+        <if test="param != null and param != ''">
+            AND (a.licenseno = #{param} or a.ins_company = #{param})
+        </if>
+
     </select>
 
     <select id="getExpirationInsure" resultType="com.ydtech.modules.order.entity.vo.OrderExpirationVo">
         SELECT
-            ins_company,
-            orderno,
-            jqenddate,
-            syenddate,
-            productid,
-            product,
-            licenseno,
+            a.ins_company,
+            b.id as orderno,
+        a.jqenddate,
+        a.syenddate,
+        a.productid,
+        a.product,
+        a.licenseno,
             <if test="isJq == 1">
                 DATEDIFF( NOW(), jqenddate ) AS difference
             </if>
@@ -1268,7 +1275,10 @@
             </if>
 
         FROM
-            ins_orders
+            ins_orders a
+        left join
+            ins_area_company b
+        on a.orderno = b.orderno
         WHERE
             <if test="isJq == 1">
                 jqenddate BETWEEN #{startDate} AND #{endDate}
@@ -1277,8 +1287,12 @@
                 syenddate BETWEEN #{startDate} AND #{endDate}
             </if>
 
-          AND orderstatus = 3
-          AND userid LIKE '${userId}%'
+          AND a.orderstatus = 3
+        AND b.orderstatus = 3
+        <if test="param != null and param != ''">
+        AND (a.licenseno = #{param} or a.ins_company = #{param})
+        </if>
+
         ORDER BY
             jqenddate DESC
     </select>