Explorar el Código

费用明显调整以及审核保存费用不重复保存总保费

helixiao hace 1 año
padre
commit
c3dd099200

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

@@ -146,6 +146,23 @@ public class APPPartnerController extends BaseController {
 
         return HttpResult.ok("success",this.sysPartnerService.getCommissionInfo(commissionInfoDto));
     }
+
+    /**
+     * 改版后的总佣金组成明细
+     *
+     * @return
+     */
+    @PostMapping("/getCommissionInfos")
+    @ApiOperation(value = "改版后的总佣金组成明细")
+    public HttpResult<List<SysPremiumDetailsVo>> getCommissionInfos(@RequestBody CommissionInfoDto commissionInfoDto) {
+
+
+        return HttpResult.ok("success",this.sysPartnerService.getCommissionInfos(commissionInfoDto));
+    }
+
+
+
+
     /**
      *  app工作室新增人员统计
      */

+ 85 - 0
src/main/java/com/ydtech/modules/admin/model/vo/SysPremiumDetailsVo.java

@@ -0,0 +1,85 @@
+package com.ydtech.modules.admin.model.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+@Data
+public class SysPremiumDetailsVo {
+
+
+
+    /**
+     * 用户id
+     */
+    @ApiModelProperty(value = "代理人id")
+    private String issuerId;
+    /**
+     * 用户name
+     */
+    @ApiModelProperty(value = "代理人name")
+    private String issuerName;
+
+    /**
+     * 子订单id
+     */
+    @ApiModelProperty(value = "子订单id")
+    private String companyId;
+
+    /**
+     * 总保费
+     */
+    @ApiModelProperty(value = "总保费")
+    private BigDecimal sumpremium;
+
+    /**
+     * 佣金
+     */
+    @ApiModelProperty(value = "佣金")
+    private BigDecimal extractFee;
+
+
+    /**
+     * 状态(0:未审核 1:审核通过)
+     */
+    @ApiModelProperty(value = "状态(0:未审核 1:审核通过)")
+    private Integer status;
+    /**
+     * 行业领域 1:汽车-车险
+     */
+    @ApiModelProperty(value = "行业领域 1:汽车-车险")
+    private Integer industrySector;
+    /**
+     * 创建时间
+     */
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    /**
+     * 车牌号
+     */
+    @ApiModelProperty(value = "车牌号")
+    private String licenseno;
+
+    /**
+     * 费用来源(1,2,3,4,5级)
+     */
+    @ApiModelProperty(value = "费用来源(1,2,3,4,5级)")
+    private Integer source;
+
+    /**
+     * 存放贡献费用每集合伙人的等级和比例
+     */
+    @ApiModelProperty(value = "费用来源和比例")
+    private List<Map<Integer,String>> proportionalList;
+
+    @ApiModelProperty(value = "费用来源和费用")
+    private List<Map<Integer,BigDecimal>> extractFeeList;
+
+
+}

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

@@ -57,6 +57,8 @@ public interface SysPartnerService extends IService<SysPartner> {
 
     BasePageResult<SysPremiumDetails> getCommissionInfo(CommissionInfoDto commissionInfoDto);
 
+    List<SysPremiumDetailsVo> getCommissionInfos(CommissionInfoDto commissionInfoDto);
+
     TeamUserInfosFreeVo getTeamUserInfo(TeamUserInfosDto teamUserInfosDto);
 
     FilterPartnerInfoVo queryFilterPartnerInfo(FilterPartnerInfoDto filterPartnerInfoDto);

+ 67 - 9
src/main/java/com/ydtech/modules/admin/service/impl/SysPartnerServiceImpl.java

@@ -32,6 +32,7 @@ import com.ydtech.modules.esm.dao.EsmUserReferrerMapper;
 import com.ydtech.modules.esm.model.EsmUserReferrer;
 import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.utils.StringUtils;
+import io.swagger.annotations.ApiModelProperty;
 import me.chanjar.weixin.common.bean.oauth2.WxOAuth2AccessToken;
 import me.chanjar.weixin.common.error.WxErrorException;
 import me.chanjar.weixin.mp.api.WxMpService;
@@ -42,7 +43,6 @@ import org.springframework.util.ObjectUtils;
 import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
-import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -99,7 +99,6 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
     private WxMpService wxMpService;
 
 
-
     @Override
     public List<SysPartner> queryRecommendAndPartner(String id) {
         List<SysPartner> sysPartnerList = sysPartnerMapper.selectList(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getDelFlag, 1)
@@ -203,7 +202,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
         b = sysPartnerMapper.insert(sysPartner) > 0;
         //一级合伙人添加默认比例
         if (sysPartnerDto.getLevel() == 1) {
-            SysProportionConfig sysProportionConfig = new SysProportionConfig(null,sysPartner.getUserId(),"0.5","0.1","0.1","0.1","0.1","0.1");
+            SysProportionConfig sysProportionConfig = new SysProportionConfig(null, sysPartner.getUserId(), "0.5", "0.1", "0.1", "0.1", "0.1", "0.1");
             sysProportionConfigMapper.insert(sysProportionConfig);
         }
         if (sysPartnerDto.getSuggestId() != null) {
@@ -1241,6 +1240,65 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
                 insOrdersPage.getRecords());
     }
 
+    @Override
+    public List<SysPremiumDetailsVo> getCommissionInfos(CommissionInfoDto commissionInfoDto) {
+        List<SysPremiumDetailsVo> list = new ArrayList<>();
+
+        List<Map<Integer,String>> proportionList = new ArrayList<>();
+        List<Map<Integer,BigDecimal>> extractFeeList = new ArrayList<>();
+
+
+        String userId = BaseController.getUserId();
+
+        List<SysPremiumDetails> sysPremiumDetails = sysPremiumDetailsMapper.selectList(new LambdaQueryWrapper<SysPremiumDetails>()
+                .eq(SysPremiumDetails::getUserId, userId)
+                .eq(commissionInfoDto.getIndustrySector() != 0, SysPremiumDetails::getIndustrySector, commissionInfoDto.getIndustrySector())
+                .between(StringUtils.isNotEmpty(commissionInfoDto.getBeginTime()) && StringUtils.isNotEmpty(commissionInfoDto.getEndTime()),
+                        SysPremiumDetails::getCreateTime, commissionInfoDto.getBeginTime(), commissionInfoDto.getEndTime())
+                .orderByDesc(SysPremiumDetails::getId).eq(SysPremiumDetails::getStatus,0));
+        if (CollectionUtil.isEmpty(sysPremiumDetails)) return list;
+
+        Map<String, List<SysPremiumDetails>> listMap = sysPremiumDetails.stream().sorted(Comparator.comparing(SysPremiumDetails::getId))
+                .collect(Collectors.groupingBy(SysPremiumDetails::getCompanyId));
+        for (String key : listMap.keySet()) {
+            SysPremiumDetailsVo sysPremiumDetailsVo = new SysPremiumDetailsVo();
+            sysPremiumDetailsVo.setCompanyId(key);
+
+            List<SysPremiumDetails> detailsList = listMap.get(key);
+
+            BigDecimal extractFee = detailsList.stream().map(SysPremiumDetails::getExtractFee).reduce(BigDecimal.ZERO, BigDecimal::add);
+            sysPremiumDetailsVo.setExtractFee(extractFee);
+            SysPremiumDetails sysPremiumDetails1 = detailsList.get(0);
+            sysPremiumDetailsVo.setSumpremium(sysPremiumDetails1.getSumpremium());
+            SysUser sysUser = sysUserMapper.selectById(sysPremiumDetails1.getIssuerId());
+            sysPremiumDetailsVo.setIssuerName(sysUser.getName());
+            sysPremiumDetailsVo.setIssuerId(sysPremiumDetails1.getIssuerId());
+            sysPremiumDetailsVo.setCreateTime(sysPremiumDetails1.getCreateTime());
+            sysPremiumDetailsVo.setLicenseno(sysPremiumDetails1.getLicenseno());
+            sysPremiumDetailsVo.setIndustrySector(sysPremiumDetails1.getIndustrySector());
+            sysPremiumDetailsVo.setStatus(sysPremiumDetails1.getStatus());
+
+            for (SysPremiumDetails premiumDetails : detailsList) {
+                Map<Integer,String> proportionalMap = new LinkedHashMap<>();
+
+                Map<Integer,BigDecimal> extractFeeMap = new LinkedHashMap<>();
+
+                proportionalMap.put(premiumDetails.getSource(),premiumDetails.getProportional());
+                extractFeeMap.put(premiumDetails.getSource(),premiumDetails.getExtractFee());
+                proportionList.add(proportionalMap);
+                extractFeeList.add(extractFeeMap);
+
+            }
+            sysPremiumDetailsVo.setProportionalList(proportionList);
+            sysPremiumDetailsVo.setExtractFeeList(extractFeeList);
+
+            list.add(sysPremiumDetailsVo);
+        }
+
+
+        return list;
+    }
+
     @Override
     public TeamUserInfosFreeVo getTeamUserInfo(TeamUserInfosDto teamUserInfosDto) {
         TeamUserInfosFreeVo teamUserInfosFreeVo = new TeamUserInfosFreeVo();
@@ -1597,7 +1655,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
         //查工作室下的团队
         SysAgencyLeader sysAgencyLeader = sysAgencyLeaderMapper.selectOne(new LambdaQueryWrapper<SysAgencyLeader>()
                 .eq(SysAgencyLeader::getDelFlag, 1).in(SysAgencyLeader::getUserId, userId));
-        List<SysUser> userList =new ArrayList<>();
+        List<SysUser> userList = new ArrayList<>();
         //根据机构id查下面团队
         List<SysDept> sysDeptList = sysDeptMapper.selectList(new LambdaQueryWrapper<SysDept>()
                 .likeRight(SysDept::getId, sysAgencyLeader.getDeptId())
@@ -1629,7 +1687,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
                         collect = userList.stream().filter(SysUser -> SysUser.getCreateTime().after(parse)
                                 && SysUser.getCreateTime().before(parse1)).collect(Collectors.toList());
 
-                    }else {
+                    } else {
                         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
                         Date date = new Date();
                         String format = simpleDateFormat.format(date);
@@ -1646,10 +1704,10 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
 
                     countUserVo.setCountSum(collect.size());
 
-                }catch (Exception e){
+                } catch (Exception e) {
                     throw new SystemException("系统繁忙,请联系管理员");
                 }
-            }else {
+            } else {
                 countUserVo.setCountSum(0);
             }
 
@@ -1966,7 +2024,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
         String token = StpUtil.createLoginSession(sysUser.getId());
         AlipayVo alipayVo = new AlipayVo(token, sysUser.getId());
         StpUtil.getSessionByLoginId(sysUser.getId()).set(SaSession.USER, sysUser);
-        return HttpResult.ok("",alipayVo);
+        return HttpResult.ok("", alipayVo);
     }
 
     @Override
@@ -2011,7 +2069,7 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
 
     //获取支付宝账户信息
     private static AlipayConfig getAlipayConfig() {
-        String privateKey  = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCmb0GfNv7ex5SmUiBnMn3szFP4XM5c8KnYll6HGoFCQTxwMSVYq652ELBtGAScqV9QOVcF/1Z1NF+a0AabGd0qSKKsPOhHNg3vG4yHHs4gwOdqFxwjATXqgHaZXSIQGnoPUJ3J05AlYLlinm9oOoTAY68880pM9h9d7t4Aq4WqVfnGteNaV5+oaV/KgX2OGo7m3WPR+e5Yjl9xxYXjVF1Uv7hznNER74KuYhRP44759lgfo0RlncGXuaygKHoxCpKTozGmvedP0hTO/WJTEi5l11Gp4mfMN9Gb/VtjsRDJaCFMmXU19UcHOFxyFOrKoyNYxdj3ue07/l51l4+8TVyJAgMBAAECggEBAJGR09qW9nsSIxEJ2e+I+RzpZjRfr9sYX+XhN1KBuzag6mTSh3Cz0IbReA4jKL2BYq0/Sb8kIpGmukwk0PJNv+Rg3W86YosOW0ecV+BC8FUzg/SFvAVd5LNzosfm7okZL1M/1pKVaYlXvS3ll1mZfUzso3Py8zS3PJ4i86ewXdupp2HcQt8c5O57lkzdhi35a38k9RrrSsYgnUClAMFWvmN4x1v7vuddzW0/q5Ztg1k9Ukz209dMOIc5cZ8+zyX5PO0rEofUETMtF5D5N2qtsMsMlDxvYq7aQoNq5I1p8e2mjZv5U7EvkLENTZmPRtAdddut1LGACU0AAlvvOOgu9wECgYEA27Q/EuQPfFh/aOYyi6zq0AWFN2U+tN/y3/nAvGymisdp6c2q1s6ESvENJep7v9PR/cownHKIllTJbzh03DKrQd0LYJrh4CFr6xv5DSUXMft5+6Te+t1FpULqhtkVLcqqTSqMRo8Yl/QMDxI6mRd4pmEFscOIEW+5lzyofxfL7mECgYEAwe4hNIyz2b/uBCCUMPA8CL8kJILqw0ZHB4EekoLugqYHAi3LPCDpJzFJ3pcZXjUdH9TUKQp67eizk+xedfFdicm0ENzPqCoUPidT88QZImaP8uP2LblTlxNCDf8D15BQzBHDlTDN+2tzFi7qAb3v2mgK5U9WGOOkicmMGzv8jykCgYARP3hIKmFQ2L2/5XqIXp3ckOJhc/BVUNOHY9sOr9TvRjJ5aW0FChd2rq/ijyMB70YoD2x7i75PVv6tXZhHBS9Or2TKQ76B0v3e6kZGEuhcQyrTZ6EdvqtOCw/QYFB6VNPD1RhIHcnHfCBKOpshE6ekIC/LQdd3zvaZ+egceijHYQKBgDgN250z2jxjZKnevNbUaZXhodHH4ZGl+5vor2yL2eL7mGUB1Y/At4OzlHV5WUTIt21e+CAQvm2L6HQmSztuE6pjGeAR4xfpacZ5WaPJF7bAzHTZfWvD+KxfTaV8A6FIPoJt1AmIfNFiQna0AsGUJAMONbAIWYuCKSoGjq/EjADZAoGAS0ZaZdPKKQnd4g/lqM8CnHTfhW11ANP/rPZDU+NvjW2jQ6SIdJhwJaKMEQCcDp63j0SADlghzrvm+KMbnTrFqTHlAizcFxnOOOxO1pKXKuOJWWsyNBN33suB3XPFrsobEtmtnWyvph1GoAZOX457RN5LSmBTbqpbyEsjKg/W1zc=";
+        String privateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCmb0GfNv7ex5SmUiBnMn3szFP4XM5c8KnYll6HGoFCQTxwMSVYq652ELBtGAScqV9QOVcF/1Z1NF+a0AabGd0qSKKsPOhHNg3vG4yHHs4gwOdqFxwjATXqgHaZXSIQGnoPUJ3J05AlYLlinm9oOoTAY68880pM9h9d7t4Aq4WqVfnGteNaV5+oaV/KgX2OGo7m3WPR+e5Yjl9xxYXjVF1Uv7hznNER74KuYhRP44759lgfo0RlncGXuaygKHoxCpKTozGmvedP0hTO/WJTEi5l11Gp4mfMN9Gb/VtjsRDJaCFMmXU19UcHOFxyFOrKoyNYxdj3ue07/l51l4+8TVyJAgMBAAECggEBAJGR09qW9nsSIxEJ2e+I+RzpZjRfr9sYX+XhN1KBuzag6mTSh3Cz0IbReA4jKL2BYq0/Sb8kIpGmukwk0PJNv+Rg3W86YosOW0ecV+BC8FUzg/SFvAVd5LNzosfm7okZL1M/1pKVaYlXvS3ll1mZfUzso3Py8zS3PJ4i86ewXdupp2HcQt8c5O57lkzdhi35a38k9RrrSsYgnUClAMFWvmN4x1v7vuddzW0/q5Ztg1k9Ukz209dMOIc5cZ8+zyX5PO0rEofUETMtF5D5N2qtsMsMlDxvYq7aQoNq5I1p8e2mjZv5U7EvkLENTZmPRtAdddut1LGACU0AAlvvOOgu9wECgYEA27Q/EuQPfFh/aOYyi6zq0AWFN2U+tN/y3/nAvGymisdp6c2q1s6ESvENJep7v9PR/cownHKIllTJbzh03DKrQd0LYJrh4CFr6xv5DSUXMft5+6Te+t1FpULqhtkVLcqqTSqMRo8Yl/QMDxI6mRd4pmEFscOIEW+5lzyofxfL7mECgYEAwe4hNIyz2b/uBCCUMPA8CL8kJILqw0ZHB4EekoLugqYHAi3LPCDpJzFJ3pcZXjUdH9TUKQp67eizk+xedfFdicm0ENzPqCoUPidT88QZImaP8uP2LblTlxNCDf8D15BQzBHDlTDN+2tzFi7qAb3v2mgK5U9WGOOkicmMGzv8jykCgYARP3hIKmFQ2L2/5XqIXp3ckOJhc/BVUNOHY9sOr9TvRjJ5aW0FChd2rq/ijyMB70YoD2x7i75PVv6tXZhHBS9Or2TKQ76B0v3e6kZGEuhcQyrTZ6EdvqtOCw/QYFB6VNPD1RhIHcnHfCBKOpshE6ekIC/LQdd3zvaZ+egceijHYQKBgDgN250z2jxjZKnevNbUaZXhodHH4ZGl+5vor2yL2eL7mGUB1Y/At4OzlHV5WUTIt21e+CAQvm2L6HQmSztuE6pjGeAR4xfpacZ5WaPJF7bAzHTZfWvD+KxfTaV8A6FIPoJt1AmIfNFiQna0AsGUJAMONbAIWYuCKSoGjq/EjADZAoGAS0ZaZdPKKQnd4g/lqM8CnHTfhW11ANP/rPZDU+NvjW2jQ6SIdJhwJaKMEQCcDp63j0SADlghzrvm+KMbnTrFqTHlAizcFxnOOOxO1pKXKuOJWWsyNBN33suB3XPFrsobEtmtnWyvph1GoAZOX457RN5LSmBTbqpbyEsjKg/W1zc=";
         String alipayPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP+St5P9dLhPmm/ggf3jPDc2552wu/+91QSAzlEqRSrdWAIwrHcntM0VY/4/+39Z8h44/0TBNTb0j1gdWrCyb+1ENxwwgCqs7f8C/5gClTQCcoNys4MtGAAM7BbNp/LzmswOuPTOMtjlUBArWFvJDgDoSQJ8vGwGHgRcLsSLPwlhwVdnqVbq60CI185U/yZgNITTCGpDXv5bnQQ26GrUbH+5Qm4fYmT2B/2ijAVJUYq+EaBMOyv+AD8C1+CtXcgH86+g13MdD1T8cw5nkV9/4fcPIWD8R1aj20C1+kCMujaydB4yDpHiqQcQEtJoVbZJk5MYp8JcctqDT01brVct5wIDAQAB";
         AlipayConfig alipayConfig = new AlipayConfig();
         alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");

+ 52 - 15
src/main/java/com/ydtech/modules/fnc/service/impl/InsFeeAuditServiceImpl.java

@@ -75,6 +75,7 @@ import java.util.*;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -361,24 +362,60 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
                     .eq(SysPremiumDetails::getType,2)
                     .eq(SysPremiumDetails::getStatus,0));
             if (sysPremiumDetails.size()>0) {
-                for (SysPremiumDetails sysPremiumDetail : sysPremiumDetails) {
-                    SysPartnerAccount sysPartnerAccount = sysPartnerAccountMapper.selectOne(new LambdaQueryWrapper<SysPartnerAccount>()
-                            .eq(SysPartnerAccount::getUserId,sysPremiumDetail.getUserId()));
-                    if (sysPartnerAccount == null) {
-                        SysPartnerAccount sysPartnerAccount1 = new SysPartnerAccount();
-                        sysPartnerAccount1.setCreateTime(new Date());
-                        sysPartnerAccount1.setSumPremium(sysPremiumDetail.getSumpremium());
-                        sysPartnerAccount1.setExtractFee(sysPremiumDetail.getExtractFee());
-                        sysPartnerAccount1.setCashFee(sysPremiumDetail.getExtractFee());
-                        sysPartnerAccount1.setUserId(sysPremiumDetail.getUserId());
-                        sysPartnerAccountMapper.insert(sysPartnerAccount1);
+
+                Map<String, List<SysPremiumDetails>> listMap = sysPremiumDetails.stream().sorted(Comparator.comparing(SysPremiumDetails::getId))
+                        .collect(Collectors.groupingBy(SysPremiumDetails::getUserId));
+
+                for (String key : listMap.keySet()) {
+                    List<SysPremiumDetails> sysPremiumDetails1 = listMap.get(key);
+
+                    if (sysPremiumDetails1.size() > 1) {
+
+                        SysPremiumDetails sysPremiumDetails2 = sysPremiumDetails1.get(0);
+                        SysPartnerAccount sysPartnerAccount = sysPartnerAccountMapper.selectOne(new LambdaQueryWrapper<SysPartnerAccount>()
+                                .eq(SysPartnerAccount::getUserId,sysPremiumDetails2.getUserId()));
+
+                        BigDecimal extractFee = sysPremiumDetails1.stream().map(SysPremiumDetails::getExtractFee).reduce(BigDecimal.ZERO, BigDecimal::add);
+                        if (sysPartnerAccount == null) {
+                            SysPartnerAccount sysPartnerAccount1 = new SysPartnerAccount();
+
+                            sysPartnerAccount1.setCreateTime(new Date());
+                            sysPartnerAccount1.setSumPremium(sysPremiumDetails2.getSumpremium());
+                            sysPartnerAccount1.setExtractFee(extractFee);
+                            sysPartnerAccount1.setCashFee(extractFee);
+                            sysPartnerAccount1.setUserId(sysPremiumDetails2.getUserId());
+                            sysPartnerAccountMapper.insert(sysPartnerAccount1);
+                        }else {
+                            sysPartnerAccount.setSumPremium(sysPartnerAccount.getSumPremium().add(sysPremiumDetails2.getSumpremium()));
+                            sysPartnerAccount.setExtractFee(sysPartnerAccount.getExtractFee().add(extractFee));
+                            sysPartnerAccount.setCashFee(sysPartnerAccount.getCashFee().add(extractFee));
+                            sysPartnerAccountMapper.updateById(sysPartnerAccount);
+                        }
+
                     }else {
-                        sysPartnerAccount.setSumPremium(sysPartnerAccount.getSumPremium().add(sysPremiumDetail.getSumpremium()));
-                        sysPartnerAccount.setExtractFee(sysPartnerAccount.getExtractFee().add(sysPremiumDetail.getExtractFee()));
-                        sysPartnerAccount.setCashFee(sysPartnerAccount.getCashFee().add(sysPremiumDetail.getExtractFee()));
-                        sysPartnerAccountMapper.updateById(sysPartnerAccount);
+                        for (SysPremiumDetails sysPremiumDetail : sysPremiumDetails1) {
+                            SysPartnerAccount sysPartnerAccount = sysPartnerAccountMapper.selectOne(new LambdaQueryWrapper<SysPartnerAccount>()
+                                    .eq(SysPartnerAccount::getUserId,sysPremiumDetail.getUserId()));
+                            if (sysPartnerAccount == null) {
+                                SysPartnerAccount sysPartnerAccount1 = new SysPartnerAccount();
+                                sysPartnerAccount1.setCreateTime(new Date());
+                                sysPartnerAccount1.setSumPremium(sysPremiumDetail.getSumpremium());
+                                sysPartnerAccount1.setExtractFee(sysPremiumDetail.getExtractFee());
+                                sysPartnerAccount1.setCashFee(sysPremiumDetail.getExtractFee());
+                                sysPartnerAccount1.setUserId(sysPremiumDetail.getUserId());
+                                sysPartnerAccountMapper.insert(sysPartnerAccount1);
+                            }else {
+                                sysPartnerAccount.setSumPremium(sysPartnerAccount.getSumPremium().add(sysPremiumDetail.getSumpremium()));
+                                sysPartnerAccount.setExtractFee(sysPartnerAccount.getExtractFee().add(sysPremiumDetail.getExtractFee()));
+                                sysPartnerAccount.setCashFee(sysPartnerAccount.getCashFee().add(sysPremiumDetail.getExtractFee()));
+                                sysPartnerAccountMapper.updateById(sysPartnerAccount);
+                            }
+                        }
                     }
+
                 }
+
+
             }
             sysPremiumDetailsMapper.updateStatus(insAreaCompany.getId());