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

Merge remote-tracking branch 'origin/test' into test

hxl13994548489 1 éve
szülő
commit
68e22b184e

+ 3 - 3
src/main/java/com/ydtech/modules/admin/controller/APPPartnerController.java

@@ -32,11 +32,11 @@ public class APPPartnerController extends BaseController {
     /**
      * 首页信息
      */
-    @GetMapping("/getHomePage")
+    @PostMapping("/getHomePage")
     @ApiOperation(value = "APP首页信息")
-    public HttpResult<AppPartnerNumVo> getHomePage(@RequestParam("type") Integer type) {
+    public HttpResult<AppPartnerNumVo> getHomePage(@RequestBody AppHomePageDto appHomePageDto) {
 
-        return HttpResult.ok("success", this.sysPartnerService.getHomePage(type));
+        return HttpResult.ok("success", this.sysPartnerService.getHomePage(appHomePageDto));
     }
 
 

+ 21 - 0
src/main/java/com/ydtech/modules/admin/model/dto/AppHomePageDto.java

@@ -0,0 +1,21 @@
+package com.ydtech.modules.admin.model.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+@Data
+public class AppHomePageDto {
+
+    @ApiModelProperty(value = "类型1:合伙人 2:工作室")
+    private Integer type;
+
+    @ApiModelProperty(value = "开始时间")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private String beginTime;
+
+    @ApiModelProperty(value = "结束时间")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private String endTime;
+
+}

+ 6 - 0
src/main/java/com/ydtech/modules/admin/model/report/company/CompanyQutationCountDataQueryDto.java

@@ -63,5 +63,11 @@ public class CompanyQutationCountDataQueryDto {
     @ApiModelProperty(value = "用户ids")
     private List<String> userIds;
 
+    @ApiModelProperty(value = "传参任务类型")
+    private String taskType;
+    @ApiModelProperty(value = "筛选签单开始时间")
+    private String signingTimeStart;
 
+    @ApiModelProperty(value = "筛选签单结束时间")
+    private String signingTimeEnd;
 }

+ 13 - 15
src/main/java/com/ydtech/modules/admin/model/vo/AppPartnerNumVo.java

@@ -1,6 +1,7 @@
 package com.ydtech.modules.admin.model.vo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -8,17 +9,14 @@ import java.math.BigDecimal;
 import java.util.List;
 
 @Data
+@ApiModel("合伙人APP首页信息")
 public class AppPartnerNumVo {
-
     /**
      * 总保费
      */
     @ApiModelProperty(value = "总保费")
     @JsonFormat(pattern = "0.00")
     private BigDecimal sumPremium;
-
-
-
     /**
      * 抽成费用
      */
@@ -26,18 +24,24 @@ public class AppPartnerNumVo {
     @JsonFormat(pattern = "0.00")
     private BigDecimal extractFee;
     /**
-     * 团队总人数
+     * 账户余额
      */
-    @ApiModelProperty(value = "团队总人数")
-    private Integer TeamManNum;
+    @ApiModelProperty(value = "账户余额")
+    @JsonFormat(pattern = "0.00")
+    private BigDecimal balanceFee;
 
+    @ApiModelProperty(value = "订单数")
+    private Integer orderNumber;
+    /**
+     * 会员总人数
+     */
+    @ApiModelProperty(value = "会员总人数")
+    private Integer TeamManNum;
     /**
      * 所有合伙人数
      */
     @ApiModelProperty(value = "下级所有合伙人数")
     private Integer partnerNum;
-
-
     /**
      * 合伙人直接工作室数
      */
@@ -47,7 +51,6 @@ public class AppPartnerNumVo {
     @ApiModelProperty(value = "管理员ids")
     private List<String> leaderIds;
 
-
     //工作室
     @ApiModelProperty(value = "工作室下团队人数")
     private Integer workroomManNum;
@@ -58,9 +61,4 @@ public class AppPartnerNumVo {
     @ApiModelProperty(value = "工作室下团队ids")
     private List<String> deptIds;
 
-
-
-
-
-
 }

+ 9 - 0
src/main/java/com/ydtech/modules/admin/model/vo/OrdersDataVo.java

@@ -74,4 +74,13 @@ public class OrdersDataVo {
     private List<String> deptIds;
     @ApiModelProperty(value = "用户ids")
     private List<String> userIds;
+
+    @ApiModelProperty(value = "传参任务类型")
+    private String taskType;
+    @ApiModelProperty(value = "筛选签单开始时间")
+    private String signingTimeStart;
+
+    @ApiModelProperty(value = "筛选签单结束时间")
+    private String signingTimeEnd;
+
 }

+ 3 - 0
src/main/java/com/ydtech/modules/admin/model/vo/TaskStatisticsVo.java

@@ -172,4 +172,7 @@ public class TaskStatisticsVo implements Serializable {
 
     @ApiModelProperty(value = "弹窗传参类型")
     private String reviewType;
+
+    @ApiModelProperty(value = "传参任务类型")
+    private String taskType;
 }

+ 1 - 1
src/main/java/com/ydtech/modules/admin/service/SysPartnerService.java

@@ -47,7 +47,7 @@ public interface SysPartnerService extends IService<SysPartner> {
 
     APPPartnerInfoFreeVo getTeamInfo(PartnerGradeInfo partnerGradeInfo);
 
-    AppPartnerNumVo getHomePage(Integer type);
+    AppPartnerNumVo getHomePage(AppHomePageDto appHomePageDto);
 
     AppUserInfoVo getUserInfo(Integer type);
 

+ 13 - 2
src/main/java/com/ydtech/modules/admin/service/impl/CompanyDataReportServiceImpl.java

@@ -84,13 +84,24 @@ public class CompanyDataReportServiceImpl implements CompanyDataReportService {
      */
     @Override
     public BasePageResult<CompanyQutationCountDataDto> queryCompanyQutationCountDataPage(CompanyQutationCountDataQueryDto companyQutationCountDataQueryDto) {
+
         Page<QuotationCountDataDto> page = new Page<>(companyQutationCountDataQueryDto.getPageNum(), companyQutationCountDataQueryDto.getPageSize());
         //判断开始时间和结束时间是否为空,如果为空的走时间类型逻辑
         HashMap<String, String> dateMapByType = getDateMapByType(companyQutationCountDataQueryDto.getDateType(), companyQutationCountDataQueryDto.getBeginDate(), companyQutationCountDataQueryDto.getEndDate());
-        companyQutationCountDataQueryDto.setBeginDate(dateMapByType.get("startDate"));
-        companyQutationCountDataQueryDto.setEndDate(dateMapByType.get("endDate"));
+//        companyQutationCountDataQueryDto.setBeginDate(dateMapByType.get("startDate"));
+//        companyQutationCountDataQueryDto.setEndDate(dateMapByType.get("endDate"));
         page.setSearchCount(false).setOptimizeCountSql(false);//关闭count查询
 
+        if(StringUtils.isNotEmpty(companyQutationCountDataQueryDto.getTaskType()) && "1".equals(companyQutationCountDataQueryDto.getTaskType())){
+            companyQutationCountDataQueryDto.setBeginDate(null);
+            companyQutationCountDataQueryDto.setEndDate(null);
+            companyQutationCountDataQueryDto.setSigningTimeStart(dateMapByType.get("startDate"));
+            companyQutationCountDataQueryDto.setSigningTimeEnd(dateMapByType.get("endDate"));
+        }else {
+            companyQutationCountDataQueryDto.setBeginDate(dateMapByType.get("startDate"));
+            companyQutationCountDataQueryDto.setEndDate(dateMapByType.get("endDate"));
+        }
+
         Page<CompanyQutationCountDataDto> resultSubOrder = insAreaCompanyMapper.queryCompanyQutationCountDataPage(companyQutationCountDataQueryDto, page);
         Long total = this.insAreaCompanyMapper.queryCompanyQutationCountDataPageTotal(companyQutationCountDataQueryDto);
 

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

@@ -779,16 +779,46 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
     }
 
     @Override
-    public AppPartnerNumVo getHomePage(Integer type) {
+    public AppPartnerNumVo getHomePage(AppHomePageDto appHomePageDto) {
         AppPartnerNumVo appPartnerNumVo = new AppPartnerNumVo();
+        Integer type = appHomePageDto.getType();
         //合伙人:1 ;工作室管理员:2
         String userId = BaseController.getUserId();
         SysPartnerAccount sysPartnerAccount = sysPartnerAccountMapper.selectOne(new LambdaQueryWrapper<SysPartnerAccount>()
                 .eq(SysPartnerAccount::getUserId, userId));
         if (sysPartnerAccount != null) {
-            appPartnerNumVo.setSumPremium(sysPartnerAccount.getSumPremium());
-            appPartnerNumVo.setExtractFee(sysPartnerAccount.getExtractFee());
+//            appPartnerNumVo.setSumPremium(sysPartnerAccount.getSumPremium());
+//            appPartnerNumVo.setExtractFee(sysPartnerAccount.getExtractFee());
+            appPartnerNumVo.setBalanceFee(sysPartnerAccount.getCashFee());
         }
+        BigDecimal sumPremium=BigDecimal.ZERO;
+        //增加时间筛选
+        List<SysPremiumDetails> sysPremiumDetails = sysPremiumDetailsMapper.selectList(new LambdaQueryWrapper<SysPremiumDetails>()
+                .eq(SysPremiumDetails::getUserId, userId)
+                .between(StringUtils.isNotEmpty(appHomePageDto.getBeginTime()) && StringUtils.isNotEmpty(appHomePageDto.getEndTime()),
+                        SysPremiumDetails::getCreateTime, appHomePageDto.getBeginTime(), appHomePageDto.getEndTime())
+                .eq(SysPremiumDetails::getStatus, 1));
+
+        Map<String, List<SysPremiumDetails>> map = sysPremiumDetails.stream().sorted(Comparator.comparing(SysPremiumDetails::getId))
+                .collect(Collectors.groupingBy(SysPremiumDetails::getCompanyId));
+        for (String s : map.keySet()) {
+            List<SysPremiumDetails> sysPremiumDetails1 = map.get(s);
+            sumPremium = sumPremium.add(sysPremiumDetails1.get(0).getSumpremium());
+        }
+        BigDecimal extractFee= sysPremiumDetails.stream().map(SysPremiumDetails::getExtractFee).reduce(BigDecimal.ZERO, BigDecimal::add);
+        appPartnerNumVo.setSumPremium(sumPremium);
+        appPartnerNumVo.setExtractFee(extractFee);
+        appPartnerNumVo.setOrderNumber(map.size());
+//        //历史提现
+//        List<SysAgencyFeeApproval> sysAgencyFeeApprovals = sysAgencyFeeApprovalMapper.selectList(new LambdaQueryWrapper<SysAgencyFeeApproval>()
+//                .eq(SysAgencyFeeApproval::getUserId, userId)
+//                .eq(SysAgencyFeeApproval::getStatus, 1)
+//                .between(StringUtils.isNotEmpty(appHomePageDto.getBeginTime()) && StringUtils.isNotEmpty(appHomePageDto.getEndTime()),
+//                        SysAgencyFeeApproval::getCreateTime, appHomePageDto.getBeginTime(), appHomePageDto.getEndTime()));
+//        BigDecimal historyFee = sysAgencyFeeApprovals.stream().map(SysAgencyFeeApproval::getHistoryFee).reduce(BigDecimal.ZERO, BigDecimal::add);
+//        BigDecimal balanceFee = extractFee.subtract(historyFee);
+//        appPartnerNumVo.setBalanceFee(balanceFee);
+
         if (type == 1) {
             //下面合伙人(直接)数量
             List<SysRelationPerson> sysRelationPersonList1 = sysRelationPersonMapper.selectList(new LambdaQueryWrapper<SysRelationPerson>()
@@ -828,7 +858,9 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
                         if (sysDeptList.size() > 0) {
                             for (SysDept sysDept : sysDeptList) {
                                 List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
-                                        .likeRight(SysUser::getId, sysDept.getId()).ne(SysUser::getStatus, 0));
+                                        .likeRight(SysUser::getId, sysDept.getId()).ne(SysUser::getStatus, 0)
+                                        .between(StringUtils.isNotEmpty(appHomePageDto.getBeginTime()) && StringUtils.isNotEmpty(appHomePageDto.getEndTime()),
+                                                SysUser::getCreateTime, appHomePageDto.getBeginTime(), appHomePageDto.getEndTime()));
                                 deptManNum = deptManNum + sysUsers.size();
 
                             }
@@ -852,7 +884,9 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
             if (sysDeptList.size() > 0) {
                 for (SysDept sysDept : sysDeptList) {
                     List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
-                            .likeRight(SysUser::getId, sysDept.getId()).ne(SysUser::getStatus, 0));
+                            .likeRight(SysUser::getId, sysDept.getId()).ne(SysUser::getStatus, 0)
+                            .between(StringUtils.isNotEmpty(appHomePageDto.getBeginTime()) && StringUtils.isNotEmpty(appHomePageDto.getEndTime()),
+                                    SysUser::getCreateTime, appHomePageDto.getBeginTime(), appHomePageDto.getEndTime()));
                     deptManNum = deptManNum + sysUsers.size();
                     deptIds.add(sysDept.getId());
                 }

+ 12 - 2
src/main/java/com/ydtech/modules/admin/service/impl/TaskStatisticsServiceImpl.java

@@ -31,6 +31,7 @@ import com.ydtech.modules.base.model.vo.PageVo;
 import com.ydtech.modules.inv.utils.EasyExcelUtils;
 import com.ydtech.modules.order.dao.InsAreaCompanyMapper;
 import com.ydtech.modules.order.dao.InsOrdersMapper;
+import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -121,8 +122,17 @@ public class TaskStatisticsServiceImpl  implements TaskStatisticsService {
             }
         }
         HashMap<String, String> dateMapByType = getDateMapByTypeNew(taskStatisticsVo.getDays(), taskStatisticsVo.getBeginDate(), taskStatisticsVo.getEndDate());
-        taskStatisticsVo.setBeginDate(dateMapByType.get("startDate"));
-        taskStatisticsVo.setEndDate(dateMapByType.get("endDate"));
+
+//       控制台逻辑  人员渠道跳转任务的时间应该是签单日期查询
+        if(StringUtils.isNotEmpty(taskStatisticsVo.getTaskType()) && "1".equals(taskStatisticsVo.getTaskType())){
+            taskStatisticsVo.setBeginDate(null);
+            taskStatisticsVo.setEndDate(null);
+            taskStatisticsVo.setSigningTimeStart(dateMapByType.get("startDate"));
+            taskStatisticsVo.setSigningTimeEnd(dateMapByType.get("endDate"));
+        }else {
+            taskStatisticsVo.setBeginDate(dateMapByType.get("startDate"));
+            taskStatisticsVo.setEndDate(dateMapByType.get("endDate"));
+        }
 
         IPage<TaskStatisticsDto> list = this.insAreaCompanyMapper.queryPageTaskStatistics(page,taskStatisticsVo);
         Long  total  = this.insAreaCompanyMapper.queryPageTaskStatisticsTotal(taskStatisticsVo);

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

@@ -906,6 +906,9 @@
         <if test="vo.beginDate  != null  and  vo.beginDate!=''  and vo.endDate  != null  and  vo.endDate!=''">
             AND iac.createtime BETWEEN #{vo.beginDate} AND #{vo.endDate}
         </if>
+        <if test="vo.signingTimeStart !=null and vo.signingTimeStart != '' and vo.signingTimeEnd !=null and vo.signingTimeEnd != ''">
+            AND   DATE_FORMAT( iac.signing_time, '%Y-%m-%d')   BETWEEN  DATE_FORMAT( #{vo.signingTimeStart}, '%Y-%m-%d') AND  DATE_FORMAT( #{vo.signingTimeEnd}, '%Y-%m-%d')
+        </if>
         <if test="vo.managementSource  != null  and  vo.managementSource!=''">
             AND sd.management_source =#{vo.managementSource}
         </if>
@@ -1069,6 +1072,9 @@
         <if test="vo.companyId  != null  and  vo.companyId!='' ">
             AND  agree.insurance_company_id = #{vo.companyId}
         </if>
+        <if test="vo.signingTimeStart !=null and vo.signingTimeStart != '' and vo.signingTimeEnd !=null and vo.signingTimeEnd != ''">
+            AND   DATE_FORMAT( iac.signing_time, '%Y-%m-%d')   BETWEEN  DATE_FORMAT( #{vo.signingTimeStart}, '%Y-%m-%d') AND  DATE_FORMAT( #{vo.signingTimeEnd}, '%Y-%m-%d')
+        </if>
         <if test="vo.parterCompanyId  != null  and  vo.parterCompanyId!='' ">
             AND agree.partner_companies_id = #{vo.parterCompanyId}
         </if>
@@ -1193,6 +1199,10 @@
                 AND   DATE_FORMAT( iac.createtime, '%Y-%m-%d')   BETWEEN  DATE_FORMAT( #{taskStatisticsVo.beginDate}, '%Y-%m-%d') AND  DATE_FORMAT( #{taskStatisticsVo.endDate}, '%Y-%m-%d')
             </if>
 
+            <if test="taskStatisticsVo.signingTimeStart !=null and taskStatisticsVo.signingTimeStart != '' and taskStatisticsVo.signingTimeEnd !=null and taskStatisticsVo.signingTimeEnd != ''">
+                AND   DATE_FORMAT( iac.signing_time, '%Y-%m-%d')   BETWEEN  DATE_FORMAT( #{taskStatisticsVo.signingTimeStart}, '%Y-%m-%d') AND  DATE_FORMAT( #{taskStatisticsVo.signingTimeEnd}, '%Y-%m-%d')
+            </if>
+
             <if test="taskStatisticsVo.deptIds != null and taskStatisticsVo.deptIds != '' and taskStatisticsVo.deptIds.size() > 0">
                 AND sd.id  in
                 <foreach collection="taskStatisticsVo.deptIds" item="item" open="(" separator="," close=")">
@@ -1428,6 +1438,10 @@
                 and io.deptid like "${taskStatisticsVo.houseId}%"
             </if>
 
+            <if test="taskStatisticsVo.signingTimeStart !=null and taskStatisticsVo.signingTimeStart != '' and taskStatisticsVo.signingTimeEnd !=null and taskStatisticsVo.signingTimeEnd != ''">
+                AND   DATE_FORMAT( iac.signing_time, '%Y-%m-%d')   BETWEEN  DATE_FORMAT( #{taskStatisticsVo.signingTimeStart}, '%Y-%m-%d') AND  DATE_FORMAT( #{taskStatisticsVo.signingTimeEnd}, '%Y-%m-%d')
+            </if>
+
             <if test="taskStatisticsVo.createtimeStart !=null and taskStatisticsVo.createtimeStart != '' and taskStatisticsVo.createtimeEnd !=null and taskStatisticsVo.createtimeEnd != ''">
                 AND   DATE_FORMAT( io.createtime, '%Y-%m-%d')   BETWEEN #{taskStatisticsVo.createtimeStart} AND #{taskStatisticsVo.createtimeEnd}
             </if>
@@ -2091,6 +2105,10 @@
                 and iac.company_id =#{taskStatisticsVo.companyId}
             </if>
 
+
+            <if test="taskStatisticsVo.auditTimeStart !=null and taskStatisticsVo.auditTimeEnd != '' and taskStatisticsVo.auditTimeStart !=null and taskStatisticsVo.auditTimeEnd != ''">
+                AND   DATE_FORMAT( ifa.audittime, '%Y-%m-%d')   BETWEEN  DATE_FORMAT( #{taskStatisticsVo.auditTimeStart}, '%Y-%m-%d')   AND  DATE_FORMAT( #{taskStatisticsVo.auditTimeEnd}, '%Y-%m-%d')
+            </if>
             <if test="taskStatisticsVo.audittime !=null  and  taskStatisticsVo.audittime !=''">
                 and ifa.audittime =#{taskStatisticsVo.audittime}
             </if>
@@ -2731,7 +2749,6 @@
         FROM
         (
         SELECT
-        io.orderstatus AS orderstatus,
         io.frameno AS frameno,
         REPLACE(JSON_EXTRACT(io.carinfo, '$.engineNo'), '"', '') as "modelCode",
         REPLACE(JSON_EXTRACT(io.carinfo, '$.modelcname'), '"', '') as "modelcname",