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

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

Qchen 1 éve
szülő
commit
44b9af76c3

+ 0 - 17
src/main/java/com/ydtech/config/scheduledConfig/ScheduledConfig.java

@@ -1,17 +0,0 @@
-package com.ydtech.config.scheduledConfig;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
-
-@Configuration
-public class ScheduledConfig {
-    @Bean
-    public ThreadPoolTaskScheduler threadPoolTaskScheduler() {
-        ThreadPoolTaskScheduler threadPoolTaskScheduler = new ThreadPoolTaskScheduler();
-        threadPoolTaskScheduler.setPoolSize(5);
-        threadPoolTaskScheduler.setRemoveOnCancelPolicy(true);
-        return threadPoolTaskScheduler;
-    }
-}
-

+ 2 - 5
src/main/java/com/ydtech/modules/admin/controller/SysPartnerController.java

@@ -1,18 +1,15 @@
 package com.ydtech.modules.admin.controller;
 
-import com.ydtech.aop.exception.DescribeException;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.admin.dao.SysProportionConfigMapper;
-import com.ydtech.modules.admin.model.SysAgencyLeader;
-import com.ydtech.modules.admin.model.SysPartner;
 import com.ydtech.modules.admin.model.SysProportionConfig;
+import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.dto.SysAgencyLeaderPageDto;
 import com.ydtech.modules.admin.model.dto.SysPartnerAPPPageDto;
 import com.ydtech.modules.admin.model.dto.SysPartnerDto;
 import com.ydtech.modules.admin.model.dto.SysPartnerPageDto;
 import com.ydtech.modules.admin.model.vo.AgencyExtractFeeVo;
-import com.ydtech.modules.admin.model.vo.SysAgencyLeaderVo;
 import com.ydtech.modules.admin.model.vo.SysPartnerAPPPageVo;
 import com.ydtech.modules.admin.model.vo.SysUserPartner;
 import com.ydtech.modules.admin.service.SysPartnerService;
@@ -77,7 +74,7 @@ public class SysPartnerController extends BaseController {
      */
     @GetMapping("/queryRecommendAndPartner/{id}/{level}")
     @ApiOperation(value = "根据部门id查询配置的推荐人接口")
-    public HttpResult<List<SysPartner>> queryRecommendAndPartner(@PathVariable(value = "id") @ApiParam("部门id") String id,@PathVariable(value = "level") @ApiParam("合伙人等级") Integer level) {
+    public HttpResult<List<SysUser>> queryRecommendAndPartner(@PathVariable(value = "id") @ApiParam("部门id") String id, @PathVariable(value = "level") @ApiParam("合伙人等级") Integer level) {
         return HttpResult.ok("success", this.sysPartnerService.queryRecommendAndPartner(id,level));
     }
 

+ 4 - 0
src/main/java/com/ydtech/modules/admin/dao/SysUserMapper.java

@@ -535,6 +535,10 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
      */
     SysUser getByRoleIdAndDeptId(@Param("roleId") String roleId, @Param("deptId") String deptId);
 
+    /**
+     * 根据登陆者 id deptId 查询
+     */
+    List<SysUser> selectLeaderBylanderInfo(@Param("deptId") String deptId, @Param("leaderId") String leaderId, @Param("userId") String userId);
 }
 
 

+ 2 - 2
src/main/java/com/ydtech/modules/admin/model/vo/SysUserBaseVO.java

@@ -120,10 +120,10 @@ public class SysUserBaseVO {
     @ApiModelProperty(value = "银行卡号信息")
     private String bankCardNumbers;
 
-
     @ApiModelProperty(value = "身份证号")
     private String identity;
 
     @ApiModelProperty(value = "居住地址")
-    private String liveAddress = "";
+    private String liveAddress;
+
 }

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

@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.model.SysPartner;
 import com.ydtech.modules.admin.model.SysPartnerAccount;
-import com.ydtech.modules.admin.model.SysPremiumDetails;
+import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.dto.*;
 import com.ydtech.modules.admin.model.vo.*;
 import com.ydtech.modules.order.entity.BasePageResult;
@@ -23,7 +23,7 @@ import java.util.List;
 public interface SysPartnerService extends IService<SysPartner> {
 
 
-    List<SysPartner> queryRecommendAndPartner(String id,Integer level);
+    List<SysUser> queryRecommendAndPartner(String id, Integer level);
 
     BasePageResult<SysUserPartner> queryByPage(SysPartnerPageDto sysPartnerPageDto);
 

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

@@ -102,16 +102,14 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
     private Map<String, WxMpService> wxMpService;
 
     @Override
-    public List<SysPartner> queryRecommendAndPartner(String id,Integer level) {
-        List<SysPartner> sysPartnerList = sysPartnerMapper.selectList(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getDelFlag, 1)
-                .likeRight(SysPartner::getUserId, id).lt(SysPartner::getType,level).orderByDesc(SysPartner::getId));
-        if (sysPartnerList.size() > 0) {
-            for (SysPartner sysPartner : sysPartnerList) {
-                SysUser sysUser = sysUserMapper.selectById(sysPartner.getUserId());
-                sysPartner.setUserName(sysUser.getName());
-            }
+    public List<SysUser> queryRecommendAndPartner(String id,Integer level) {
+        List<SysUser> sysPartnerList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
+                .ne(SysUser::getStatus, 0)
+                .likeRight(SysUser::getId, id)
+                .eq(SysUser::getType,1)
+                .lt(SysUser::getLevel,level)
+                .orderByDesc(SysUser::getId));
 
-        }
         return sysPartnerList;
     }
 

+ 84 - 8
src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java

@@ -876,13 +876,15 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Transactional(rollbackFor = Exception.class)
     public HttpResult saveUserInfoByPartner(SysUser2Vo sysUserVo) {
         SysUser sysUser = sysUserVo.getSysUser();
+        //1:合伙人 2:工作室管理员
+        Integer type = sysUser.getType();
         // 手机号
-        List<SysUser> mobileList = lambdaQuery().eq(SysUser::getMobile, sysUser.getMobile()).list();
+        List<SysUser> mobileList = lambdaQuery().eq(SysUser::getMobile, sysUser.getMobile()).eq(SysUser::getType,type).list();
         if (!mobileList.isEmpty()) {
             throw new SystemException("手机号已经注册请更换手机号。");
         }
         // 身份证号
-        List<SysUser> identityList = lambdaQuery().eq(SysUser::getIdentity, sysUser.getIdentity()).list();
+        List<SysUser> identityList = lambdaQuery().eq(SysUser::getIdentity, sysUser.getIdentity()).eq(SysUser::getType,type).list();
         if (!identityList.isEmpty()) {
             throw new SystemException("身份证号已经注册请更换身份证号。");
         }
@@ -967,7 +969,13 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             List<EsmUserImage> esmUserImages = esmUserImageVo.stream().map(x -> new EsmUserImage(x, finalUserId)).collect(Collectors.toList());
             esmUserImageService.saveBatch(esmUserImages);
         }
-        SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(sysUserVo.getSysUser().getReferrerId()).orElse("admin") );
+        String referrerId = sysUserVo.getSysUser().getReferrerId();
+        if (referrerId == null) {
+            SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, "admin");
+        }else {
+            SysUser sysUser1 = sysUserMapper.selectById(sysUserVo.getSysUser().getReferrerId());
+            SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(sysUser1.getName()).orElse("admin") );
+        }
         return HttpResult.ok("新增成功", sysUserMapper.selectById(userId));
     }
 
@@ -975,7 +983,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Transactional(rollbackFor = Exception.class)
     public HttpResult saveUserInfo1(SysUser2Vo sysUserVo) {
 
-        log.info("添加团队入参:{}", sysUserVo);
+        log.info("添加团队添加入参:{}", sysUserVo);
         SysUser sysUser = sysUserVo.getSysUser();
         sysUser.setType(3);
         sysUser.setCreateTime(new Date());
@@ -1040,12 +1048,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
 //        SysUser sysUser = sysUserVo.getSysUser();
         // 手机号
-        List<SysUser> mobileList = lambdaQuery().eq(SysUser::getMobile, sysUser.getMobile()).list();
+        List<SysUser> mobileList = lambdaQuery().eq(SysUser::getMobile, sysUser.getMobile()).eq(SysUser::getType,sysUser.getType()).list();
         if (!mobileList.isEmpty()) {
             throw new SystemException("手机号已经注册请更换手机号。");
         }
         // 身份证号
-        List<SysUser> identityList = lambdaQuery().eq(SysUser::getIdentity, sysUser.getIdentity()).list();
+        List<SysUser> identityList = lambdaQuery().eq(SysUser::getIdentity, sysUser.getIdentity()).eq(SysUser::getType,sysUser.getType()).list();
         if (!identityList.isEmpty()) {
             throw new SystemException("身份证号已经注册请更换身份证号。");
         }
@@ -1130,7 +1138,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             List<EsmUserImage> esmUserImages = esmUserImageVo.stream().map(x -> new EsmUserImage(x, finalUserId)).collect(Collectors.toList());
             esmUserImageService.saveBatch(esmUserImages);
         }
-        SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(sysUserVo.getSysUser().getReferrerId()).orElse("admin"));
+        SysUser referrerInfo = sysUserMapper.selectById(sysUserVo.getSysUser().getReferrerId());
+        SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, Optional.ofNullable(referrerInfo.getName()).orElse("admin"));
         return HttpResult.ok("新增成功", sysUserMapper.selectById(userId));
     }
 
@@ -1535,6 +1544,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         //获取领导字段不为空的人的ID
         List<SysUser> users = lambdaQuery().isNotNull(SysUser::getLeaderId).list();
 
+
         if (users == null || users.size() == 0) {
             return new ArrayList<>();
         }
@@ -1866,11 +1876,77 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     public List<SysUserBaseVO> getAllUsersByHospitality(SysUserVOExt sysUserVOExt) {
         if (StringUtils.isNotEmpty(sysUserVOExt.getUserId()) || StringUtils.isNotEmpty(sysUserVOExt.getIdentity()) ||
                 StringUtils.isNotEmpty(sysUserVOExt.getMobile()) || StringUtils.isNotEmpty(sysUserVOExt.getName())) {
-            return super.baseMapper.getAllUsersByHospitality(sysUserVOExt);
+            List<SysUserBaseVO> allUsersByHospitality = super.baseMapper.getAllUsersByHospitality(sysUserVOExt);
+            //数据隔离操作
+            List<SysUserBaseVO> divideUserInfo = this.dataDivide(allUsersByHospitality);
+            return divideUserInfo;
         }
         return new ArrayList<SysUserBaseVO>();
     }
 
+    private List<SysUserBaseVO> dataDivide(List<SysUserBaseVO> allUsersByHospitality) {
+        List<SysUser> userList = new ArrayList<>();
+        SysUser landerInfo = BaseController.getUser();
+        //超级管理员不做处理
+        if ("admin".equals(landerInfo.getId()) || "99D1501".equals(landerInfo.getId())) {
+            return allUsersByHospitality;
+        }
+
+        //获取查询结果id
+        List<String> userIds = new ArrayList<>();
+        //如果登陆者部门所属总裁办,则进行是否是运营中心领导人逻辑的判断
+        if ("99D15".equals(landerInfo.getDeptId())) {
+            //判断登陆者下属是否所属运营中心
+            LambdaQueryWrapper<SysUser> getLanderBranch = new LambdaQueryWrapper<>();
+            getLanderBranch.notLike(SysUser::getId, "M")
+                    .eq(SysUser::getDeptId, "9914D18")
+                    .eq(SysUser::getLeaderId, landerInfo.getId());
+            List<SysUser> sysUserList = list(getLanderBranch);
+
+            if (StringUtils.isNullOrEmpty(sysUserList) || sysUserList.isEmpty()) {
+                //如果不属于运营中心则不展示数据
+                return new ArrayList<>();
+            }
+            userIds.add(landerInfo.getId());
+            //获取运营中心全部员工
+            LambdaQueryWrapper<SysUser> getOperationUser = new LambdaQueryWrapper<>();
+            getOperationUser.notLike(SysUser::getId, "M")
+                    .eq(SysUser::getDeptId, "9914D18")
+                    .isNotNull(SysUser::getLeaderId);
+            userList.addAll(list(getOperationUser));
+        } else if ("9914D18".equals(landerInfo.getDeptId())) {
+            //查询登陆者组长信息
+            List<SysUser> sysUsers = super.baseMapper.selectLeaderBylanderInfo(landerInfo.getDeptId(), null, landerInfo.getLeaderId());
+            if (StringUtils.isNullOrEmpty(sysUsers) || sysUsers.size() < 1) {
+                userIds.add(landerInfo.getId());
+                //为空则登陆者为组长,id当做leaderID查询
+                sysUsers = super.baseMapper.selectLeaderBylanderInfo(landerInfo.getDeptId(), landerInfo.getId(), null);
+                userList.addAll(sysUsers);
+            } else {
+                SysUser sysUser = sysUsers.get(0);
+                userList.add(sysUser);
+                List<SysUser> sysUserList = super.baseMapper.selectLeaderBylanderInfo(landerInfo.getDeptId(), landerInfo.getLeaderId(), null);
+                userList.addAll(sysUserList);
+            }
+        } else {
+            //如果不属于运营中心则不展示数据
+            return new ArrayList<>();
+        }
+
+        //获取查询结果id
+         userIds.addAll(userList.stream()
+                .filter(user -> !StringUtils.isNullOrEmpty(user) && StringUtils.isNotEmpty(user.getId()))
+                .map(SysUser::getId)
+                .collect(Collectors.toList()));
+
+        List<SysUserBaseVO> divideUserInfo = allUsersByHospitality.stream()
+                .filter(allUser -> !StringUtils.isNullOrEmpty(allUser) && StringUtils.isNotEmpty(allUser.getLeaderId())
+                        && userIds.contains(allUser.getLeaderId()))
+                .collect(Collectors.toList());
+
+        return divideUserInfo;
+    }
+
     /**
      * @version
      * @author: hxl

+ 119 - 133
src/main/java/com/ydtech/modules/order/entity/api/chengtai/response/InsurePremiumResponse.java

@@ -8,134 +8,24 @@ import com.ydtech.utils.StringUtils;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
-import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.List;
 
 @NoArgsConstructor
 @Data
-public class InsurePremiumResponse extends ChengTaiBaseResponse{
-
+public class InsurePremiumResponse extends ChengTaiBaseResponse {
     @JsonProperty("orderId")
     private String orderId;
+    @JsonProperty("carRegistFlag")
+    private String carRegistFlag;
     @JsonProperty("biContract")
     private BiContractDTO biContract;
-//    @JsonProperty("insuredObject")
-//    private InsuredObjectDTO insuredObject;
-    @JsonProperty("ciContract")
-    private CiContractDTO ciContract;
     @JsonProperty("accContract")
     private AccContractDTO accContract;
-    @JsonProperty("carRegistFlag")
-    private String carRegistFlag;
-
-
-    @NoArgsConstructor
-    @Data
-    public static class AccContractDTO {
-        @JsonProperty("coverage")
-        private List<InsurePremiumResponse.AccContractDTO.CoverageDTO> coverage;
-        @JsonProperty("engage")
-        private List<InsurePremiumResponse.AccContractDTO.EngageDTO> engage;
-        @JsonProperty("contractMain")
-        private InsurePremiumResponse.AccContractDTO.ContractMainDTO contractMain;
-
-        public static List<AccidentResponseVo> toAccidentResponseVoList(AccContractDTO accContract, BaseQuoteVo<InsDrivingIntentionInsurance> quoteInfoVo) {
-            InsurePremiumResponse.AccContractDTO.ContractMainDTO contractMainDTO = accContract.getContractMain();
-            InsDrivingIntentionInsurance insDrivingIntentionInsurance = quoteInfoVo.getAccidentalDrivingVo();
-            List<AccidentResponseVo> accidentResponseVoList = new ArrayList<>();
-            AccidentResponseVo accidentResponseVo = new AccidentResponseVo();
-
-            accidentResponseVo.setProjectCode(quoteInfoVo.getAccidentalDrivingVo().getProjectCode());
-            if (StringUtils.isNotBlank(quoteInfoVo.getAccidentalDrivingVo().getProjectName())) {
-                accidentResponseVo.setProjectName(quoteInfoVo.getAccidentalDrivingVo().getProjectName());
-            }
-            accidentResponseVo.setPremium(contractMainDTO.getTotalPremium().toString());
-            accidentResponseVo.setQuantity("1");
-            accidentResponseVo.setActualPremium(contractMainDTO.getSumAmount().toString());
-            accidentResponseVoList.add(accidentResponseVo);
-            return accidentResponseVoList;
-        }
-
-        @NoArgsConstructor
-        @Data
-        public static class ContractMainDTO {
-            @JsonProperty("riskName")
-            private String riskName;
-            @JsonProperty("hopeDiscount")
-            private String hopeDiscount;
-            @JsonProperty("validDate")
-            private String validDate;
-            @JsonProperty("riskCode")
-            private String riskCode;
-            @JsonProperty("totalPremium")
-            private String totalPremium;
-            @JsonProperty("policyNo")
-            private String policyNo;
-            @JsonProperty("validAtOnce")
-            private String validAtOnce;
-            @JsonProperty("renewalFlag")
-            private String renewalFlag;
-            @JsonProperty("lastYearPolicyNo")
-            private String lastYearPolicyNo;
-            @JsonProperty("sumAmount")
-            private String sumAmount;
-            @JsonProperty("proposalNo")
-            private String proposalNo;
-            @JsonProperty("expiryDate")
-            private String expiryDate;
-            @JsonProperty("currency")
-            private String currency;
-        }
-
-        @NoArgsConstructor
-        @Data
-        public static class CoverageDTO {
-            @JsonProperty("glassClassName")
-            private String glassClassName;
-            @JsonProperty("amount")
-            private Integer amount;
-            @JsonProperty("kindCode")
-            private String kindCode;
-            @JsonProperty("quantity")
-            private String quantity;
-            @JsonProperty("validDate")
-            private String validDate;
-            @JsonProperty("coveragePremium")
-            private String coveragePremium;
-            @JsonProperty("glassClassCode")
-            private String glassClassCode;
-            @JsonProperty("calculateFlag")
-            private String calculateFlag;
-            @JsonProperty("expiryDate")
-            private String expiryDate;
-            @JsonProperty("ifMainKind")
-            private String ifMainKind;
-            @JsonProperty("deductible")
-            private String deductible;
-            @JsonProperty("kindName")
-            private String kindName;
-            @JsonProperty("unitAmount")
-            private String unitAmount;
-            @JsonProperty("currency")
-            private String currency;
-        }
-
-        @NoArgsConstructor
-        @Data
-        public static class EngageDTO {
-            @JsonProperty("engageDetail")
-            private String engageDetail;
-            @JsonProperty("modifyind")
-            private String modifyind;
-            @JsonProperty("engageCode")
-            private String engageCode;
-            @JsonProperty("engageTitle")
-            private String engageTitle;
-            @JsonProperty("chooseType")
-            private String chooseType;
-        }
-    }
+    @JsonProperty("insuredObject")
+    private InsuredObjectDTO insuredObject;
+    @JsonProperty("ciContract")
+    private CiContractDTO ciContract;
 
     @NoArgsConstructor
     @Data
@@ -153,7 +43,7 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
         @JsonProperty("chargingPileList")
         private List<?> chargingPileList;
         @JsonProperty("coveragePremium")
-        private List<CoveragePremiumDTO> coveragePremium;
+        private List<?> coveragePremium;
         @JsonProperty("reInsureItem")
         private ReInsureItemDTO reInsureItem;
         @JsonProperty("contractMain")
@@ -276,7 +166,7 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
             @JsonProperty("riskCode")
             private String riskCode;
             @JsonProperty("totalPremium")
-            private BigDecimal totalPremium;
+            private Double totalPremium;
             @JsonProperty("policyNo")
             private String policyNo;
             @JsonProperty("validAtOnce")
@@ -303,7 +193,7 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
             @JsonProperty("glassClassName")
             private String glassClassName;
             @JsonProperty("amount")
-            private Double amount;
+            private Integer amount;
             @JsonProperty("kindCode")
             private String kindCode;
             @JsonProperty("quantity")
@@ -311,7 +201,7 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
             @JsonProperty("validDate")
             private String validDate;
             @JsonProperty("coveragePremium")
-            private BigDecimal coveragePremium;
+            private String coveragePremium;
             @JsonProperty("glassClassCode")
             private String glassClassCode;
             @JsonProperty("calculateFlag")
@@ -325,7 +215,7 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
             @JsonProperty("kindName")
             private String kindName;
             @JsonProperty("unitAmount")
-            private BigDecimal unitAmount;
+            private Double unitAmount;
             @JsonProperty("currency")
             private String currency;
         }
@@ -359,16 +249,112 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
             @JsonProperty("chooseType")
             private String chooseType;
         }
+    }
+
+    @NoArgsConstructor
+    @Data
+    public static class AccContractDTO {
+        @JsonProperty("coverage")
+        private List<CoverageDTO> coverage;
+        @JsonProperty("engage")
+        private List<EngageDTO> engage;
+        @JsonProperty("contractMain")
+        private ContractMainDTO contractMain;
+
+        public static List<AccidentResponseVo> toAccidentResponseVoList(AccContractDTO accContract, BaseQuoteVo<InsDrivingIntentionInsurance> quoteInfoVo) {
+            InsurePremiumResponse.AccContractDTO.ContractMainDTO contractMainDTO = accContract.getContractMain();
+            InsDrivingIntentionInsurance insDrivingIntentionInsurance = quoteInfoVo.getAccidentalDrivingVo();
+            List<AccidentResponseVo> accidentResponseVoList = new ArrayList<>();
+            AccidentResponseVo accidentResponseVo = new AccidentResponseVo();
+
+            accidentResponseVo.setProjectCode(quoteInfoVo.getAccidentalDrivingVo().getProjectCode());
+            if (StringUtils.isNotBlank(quoteInfoVo.getAccidentalDrivingVo().getProjectName())) {
+                accidentResponseVo.setProjectName(quoteInfoVo.getAccidentalDrivingVo().getProjectName());
+            }
+            accidentResponseVo.setPremium(contractMainDTO.getTotalPremium().toString());
+            accidentResponseVo.setQuantity("1");
+            accidentResponseVo.setActualPremium(contractMainDTO.getSumAmount().toString());
+            accidentResponseVoList.add(accidentResponseVo);
+            return accidentResponseVoList;
+        }
 
         @NoArgsConstructor
         @Data
-        public static class CoveragePremiumDTO {
-            @JsonProperty("vehiclaCode")
-            private String vehiclaCode;
-            @JsonProperty("pureriskPremium")
-            private String pureriskPremium;
-            @JsonProperty("used")
-            private String used;
+        public static class ContractMainDTO {
+            @JsonProperty("riskName")
+            private String riskName;
+            @JsonProperty("hopeDiscount")
+            private String hopeDiscount;
+            @JsonProperty("validDate")
+            private String validDate;
+            @JsonProperty("riskCode")
+            private String riskCode;
+            @JsonProperty("totalPremium")
+            private Double totalPremium;
+            @JsonProperty("policyNo")
+            private String policyNo;
+            @JsonProperty("validAtOnce")
+            private String validAtOnce;
+            @JsonProperty("renewalFlag")
+            private String renewalFlag;
+            @JsonProperty("lastYearPolicyNo")
+            private String lastYearPolicyNo;
+            @JsonProperty("sumAmount")
+            private String sumAmount;
+            @JsonProperty("proposalNo")
+            private String proposalNo;
+            @JsonProperty("expiryDate")
+            private String expiryDate;
+            @JsonProperty("currency")
+            private String currency;
+        }
+
+        @NoArgsConstructor
+        @Data
+        public static class CoverageDTO {
+            @JsonProperty("glassClassName")
+            private String glassClassName;
+            @JsonProperty("amount")
+            private Integer amount;
+            @JsonProperty("kindCode")
+            private String kindCode;
+            @JsonProperty("quantity")
+            private String quantity;
+            @JsonProperty("validDate")
+            private String validDate;
+            @JsonProperty("coveragePremium")
+            private String coveragePremium;
+            @JsonProperty("glassClassCode")
+            private String glassClassCode;
+            @JsonProperty("calculateFlag")
+            private String calculateFlag;
+            @JsonProperty("expiryDate")
+            private String expiryDate;
+            @JsonProperty("ifMainKind")
+            private String ifMainKind;
+            @JsonProperty("deductible")
+            private String deductible;
+            @JsonProperty("kindName")
+            private String kindName;
+            @JsonProperty("unitAmount")
+            private String unitAmount;
+            @JsonProperty("currency")
+            private String currency;
+        }
+
+        @NoArgsConstructor
+        @Data
+        public static class EngageDTO {
+            @JsonProperty("engageDetail")
+            private String engageDetail;
+            @JsonProperty("modifyind")
+            private String modifyind;
+            @JsonProperty("engageCode")
+            private String engageCode;
+            @JsonProperty("engageTitle")
+            private String engageTitle;
+            @JsonProperty("chooseType")
+            private String chooseType;
         }
     }
 
@@ -475,9 +461,9 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
         @Data
         public static class TaxDTO {
             @JsonProperty("sumTax")
-            private BigDecimal sumTax;
+            private Double sumTax;
             @JsonProperty("sumOverdue")
-            private BigDecimal sumOverdue;
+            private Double sumOverdue;
             @JsonProperty("taxPayerIdentityNo")
             private String taxPayerIdentityNo;
             @JsonProperty("documentNumber")
@@ -485,7 +471,7 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
             @JsonProperty("taxPayerName")
             private String taxPayerName;
             @JsonProperty("annualTaxDue")
-            private BigDecimal annualTaxDue;
+            private Double annualTaxDue;
             @JsonProperty("noTaxReasonCode")
             private String noTaxReasonCode;
             @JsonProperty("sumTaxDefault")
@@ -542,7 +528,7 @@ public class InsurePremiumResponse extends ChengTaiBaseResponse{
             @JsonProperty("riskCode")
             private String riskCode;
             @JsonProperty("totalPremium")
-            private BigDecimal totalPremium;
+            private String totalPremium;
             @JsonProperty("policyNo")
             private String policyNo;
             @JsonProperty("validAtOnce")

+ 8 - 8
src/main/java/com/ydtech/modules/order/service/impl/ChengTaiOrderApiServiceImpl.java

@@ -161,8 +161,8 @@ public class ChengTaiOrderApiServiceImpl implements ChengTaiOrderApiService {
         if(Objects.nonNull(insurePremiumResponse.getCiContract())){
             if(Objects.nonNull(insurePremiumResponse.getCiContract().getTax())){
                 InsurePremiumResponse.CiContractDTO.TaxDTO taxDTO = insurePremiumResponse.getCiContract().getTax();
-                TaxArrears taxArrears = new TaxArrears("往年欠税", taxDTO.getAnnualTaxDue().doubleValue(),
-                        taxDTO.getSumOverdue().doubleValue());
+                TaxArrears taxArrears = new TaxArrears("往年欠税", taxDTO.getAnnualTaxDue(),
+                        taxDTO.getSumOverdue());
                 List<TaxArrears> taxArrearsList = Collections.singletonList(taxArrears);
                 insAreaCompany.setTaxArrears(JSON.parseArray(JSON.toJSONString(taxArrearsList)));
 
@@ -199,17 +199,17 @@ public class ChengTaiOrderApiServiceImpl implements ChengTaiOrderApiService {
         // 交强
         if(Objects.nonNull(insurePremiumResponse.getCiContract())){
             InsurePremiumResponse.CiContractDTO.ContractMainDTO ciContractMain = insurePremiumResponse.getCiContract().getContractMain();
-            jqPremium = ciContractMain.getTotalPremium().doubleValue();
+            jqPremium = Double.parseDouble(ciContractMain.getTotalPremium());
             quoteRespVo.setStartDateJq(ciContractMain.getValidDate());
             quoteRespVo.setEndDateJq(ciContractMain.getExpiryDate());
             //车船税
             InsurePremiumResponse.CiContractDTO.TaxDTO taxDTO = insurePremiumResponse.getCiContract().getTax();
-            sumPayTax = taxDTO.getSumTax().doubleValue();
+            sumPayTax = taxDTO.getSumTax();
         }
         //商业
         if(Objects.nonNull(insurePremiumResponse.getBiContract())){
             InsurePremiumResponse.BiContractDTO.ContractMainDTO biContractMain = insurePremiumResponse.getBiContract().getContractMain();
-            syPremium = biContractMain.getTotalPremium().doubleValue();
+            syPremium = biContractMain.getTotalPremium();
             quoteRespVo.setStartDateSy(biContractMain.getValidDate());
             quoteRespVo.setEndDateSy(biContractMain.getExpiryDate());
         }
@@ -220,7 +220,7 @@ public class ChengTaiOrderApiServiceImpl implements ChengTaiOrderApiService {
                     InsurePremiumResponse.AccContractDTO.toAccidentResponseVoList(accContract,quoteVo);
             quoteRespVo.setAccident(accidentResponseVos);
             // 驾意险价格
-            jyPremium = Double.parseDouble(accContract.getContractMain().getTotalPremium());
+            jyPremium = accContract.getContractMain().getTotalPremium();
         }
 
         List<QuoteKindRespVo> kindList1 = new ArrayList<>();
@@ -245,8 +245,8 @@ public class ChengTaiOrderApiServiceImpl implements ChengTaiOrderApiService {
                 CtKindCodeEnum ctKindCodeEnum = Enum.valueOf(CtKindCodeEnum.class, kindInfoVo.getKindCode());
                 InsurePremiumResponse.BiContractDTO.CoverageDTO coverageDTO = coverage.stream().filter(a -> a.getKindCode().equals(ctKindCodeEnum.getCode())).collect(Collectors.toList()).get(0);
                 kind.setAmount(coverageDTO.getAmount().doubleValue());
-                kind.setCoveragePremium(coverageDTO.getCoveragePremium().doubleValue());
-                kind.setUnitAmount(coverageDTO.getUnitAmount() != null ? coverageDTO.getUnitAmount().doubleValue() : 0);
+                kind.setCoveragePremium(Double.parseDouble(coverageDTO.getCoveragePremium()));
+                kind.setUnitAmount(Objects.isNull(coverageDTO.getUnitAmount()) ? 0 : coverageDTO.getUnitAmount() );
                 kind.setServiceTimes(coverageDTO.getQuantity());
                 if (!ObjectUtils.isEmpty(kindInfoVo.getDeductibleRate())) {
                     kind.setDeductibleRate(Double.parseDouble(kindInfoVo.getDeductibleRate()));

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

@@ -578,7 +578,7 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
 
         List<PtlAgreementProductCostsNew> costsNews = ptlAgreementProductCostsNewService.getByAgreementId(agreementProductQueryVo);
 
-        if (costsNews.isEmpty() && !Objects.isNull(quoteVo.getNowCostsId())) {
+        if (costsNews.isEmpty()) {
             throw new SystemException("没有找到费用信息");
         }
         PtlAgreementProductCostsNew ptlAgreementProductCostsNew = costsNews.get(0);

+ 0 - 48
src/main/java/com/ydtech/utils/scheduledFutureUtil/ScheduledFutureHolder.java

@@ -1,48 +0,0 @@
-package com.ydtech.utils.scheduledFutureUtil;
-
-import java.util.concurrent.ScheduledFuture;
-
-/**
- * 任务执行的包装类
- */
-public class ScheduledFutureHolder {
-    private ScheduledFuture<?> scheduledFuture;
-
-    private Class<? extends Runnable> runnableClass;
-
-    private String corn;
-
-    public ScheduledFuture<?> getScheduledFuture() {
-        return scheduledFuture;
-    }
-
-    public void setScheduledFuture(ScheduledFuture<?> scheduledFuture) {
-        this.scheduledFuture = scheduledFuture;
-    }
-
-    public Class<? extends Runnable> getRunnableClass() {
-        return runnableClass;
-    }
-
-    public void setRunnableClass(Class<? extends Runnable> runnableClass) {
-        this.runnableClass = runnableClass;
-    }
-
-    public String getCorn() {
-        return corn;
-    }
-
-    public void setCorn(String corn) {
-        this.corn = corn;
-    }
-
-    @Override
-    public String toString() {
-        return "ScheduledFutureHolder{" +
-                "scheduledFuture=" + scheduledFuture +
-                ", runnableClass=" + runnableClass +
-                ", corn='" + corn + '\'' +
-                '}';
-    }
-}
-

+ 0 - 40
src/main/java/com/ydtech/utils/scheduledFutureUtil/ScheduledFutureUtil.java

@@ -1,40 +0,0 @@
-package com.ydtech.utils.scheduledFutureUtil;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
-import org.springframework.scheduling.support.CronTrigger;
-import org.springframework.stereotype.Component;
-
-import java.util.HashMap;
-import java.util.concurrent.ScheduledFuture;
-
-@Slf4j
-@Component
-public class ScheduledFutureUtil {
-    //存储任务执行的包装类
-    public static HashMap<String, ScheduledFutureHolder> scheduleMap = new HashMap<>();
-    @Autowired
-    private ThreadPoolTaskScheduler threadPoolTaskScheduler;
-
-    public  void startJob(Runnable runnable, String cron) {
-        //将任务交给任务调度器执行
-        ScheduledFuture<?> schedule = threadPoolTaskScheduler.schedule(runnable, new CronTrigger(cron));
-        //将任务包装成ScheduledFutureHolder
-        ScheduledFutureHolder scheduledFutureHolder = new ScheduledFutureHolder();
-        scheduledFutureHolder.setScheduledFuture(schedule);
-        scheduledFutureHolder.setRunnableClass(runnable.getClass());
-        scheduledFutureHolder.setCorn(cron);
-        scheduleMap.put(scheduledFutureHolder.getRunnableClass().getName(), scheduledFutureHolder);
-    }
-
-    public void endJob(String className){
-        if(ScheduledFutureUtil.scheduleMap.containsKey(className)){//如果包含这个任务
-            ScheduledFuture<?> scheduledFuture = ScheduledFutureUtil.scheduleMap.get(className).getScheduledFuture();
-            if(scheduledFuture!=null){
-                scheduledFuture.cancel(true);
-                log.info("{}任务已停止",className);
-            }
-        }
-    }
-}

+ 1 - 1
src/main/resources/application-prod.yml

@@ -293,7 +293,7 @@ zijin:
     # 新支付
     newPayUrl: http://open.zking.com/api/v1/open/open-aggregate/auth/newPay
     # 订单详情查询服务
-    orderUrl: http://open.zking.com/api/v1/insurance/public/getOrderDetail
+    orderUrl: http://open.zking.com/api/v1/business-order/insurance-order/auth/order/queryOrderDetailById
     # 订单状态查询
     orderDetailUrl: http://open.zking.com/api/v1/insurance/autoMobile/geelyCarInsurance/queryOrderDetail
     # 下载保单地址

+ 26 - 4
src/main/resources/mapper/modules/admin/SysUserMapper.xml

@@ -868,8 +868,12 @@
         su.id as userId,
         su.name,
         info.sex,
+        info.live_address,
         su.mobile,
+        su.leader_id,
+        su.leader_name,
         su.status,
+        su.identity,
         sd.id as deptId,
         sd.name as deptName,
         t4.id as roleId,
@@ -901,16 +905,16 @@
         su.status != 0 AND su.id LIKE '%M%' and su.id!='admin'
         <if test='user !=null  '>
             <if test='user.name !=null and user.name!="" '>
-                and su.name = #{user.name}
+                and su.name like concat('%', #{user.name}, '%')
             </if>
             <if test='user.userId !=null and user.userId!="" '>
-                and su.id = #{user.userId}
+                and su.id like concat('%', #{user.userId}, '%')
             </if>
             <if test='user.mobile !=null and user.mobile!=""  '>
-                and su.mobile = #{user.mobile}
+                and su.mobile like concat('%', #{user.mobile}, '%')
             </if>
             <if test='user.identity !=null and user.identity!=""  '>
-                and su.identity = #{user.identity}
+                and su.identity like concat('%', #{user.identity}, '%')
             </if>
         </if>
     </select>
@@ -2042,4 +2046,22 @@
             limit 1
     </select>
 
+    <select id="selectLeaderBylanderInfo" resultType="com.ydtech.modules.admin.model.SysUser">
+        SELECT *
+        FROM sys_user AS su
+        LEFT JOIN sys_dept sd ON su.id = sd.id
+        <where>
+            <if test="deptId != null and deptId != ''">
+                AND su.dept_id = #{deptId}
+            </if>
+            <if test="leaderId != null and leaderId != ''">
+                AND su.leader_id = #{leaderId}
+            </if>
+            <if test="userId != null and userId != ''">
+                AND su.id = #{userId}
+            </if>
+            AND sd.management_source IS NULL
+            AND su.id NOT LIKE '%M%'
+        </where>
+    </select>
 </mapper>