cuixinpeng 2 лет назад
Родитель
Сommit
28ba7d9eab

+ 0 - 41
src/main/java/com/ydtech/modules/protocol/entity/dto/PltAgreementRuleSaveDto.java

@@ -1,41 +0,0 @@
-package com.ydtech.modules.protocol.entity.dto;
-
-
-import com.ydtech.modules.protocol.entity.po.PtlAgreementUndwrtRules;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.io.Serializable;
-import java.util.List;
-
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@ApiModel("核保规则")
-public class PltAgreementRuleSaveDto implements Serializable {
-
-
-    private static final long serialVersionUID = 5893668326174168602L;
-
-    @ApiModelProperty("产品id")
-    private String productId;
-
-    @ApiModelProperty("产品名称")
-    private String name;
-
-    @ApiModelProperty("规则信息")
-    private List<PtlAgreementUndwrtRulesSaveDto> productCosts;
-
-
-    public PltAgreementRuleSaveDto(List<PtlAgreementUndwrtRules> undwrtRulesList) {
-        PtlAgreementUndwrtRules ptlAgreementUndwrtRules = undwrtRulesList.get(0);
-        this.productId = ptlAgreementUndwrtRules.getProductId();
-        this.name = ptlAgreementUndwrtRules.getProductName();
-        this.productCosts = PtlAgreementUndwrtRulesSaveDto.toPltAgreementRuleSaveDto(undwrtRulesList);
-    }
-
-}

+ 0 - 3
src/main/java/com/ydtech/modules/protocol/entity/dto/PtlAgreementUndwrtRulesSaveDto.java

@@ -169,9 +169,6 @@ public class PtlAgreementUndwrtRulesSaveDto {
     private Integer passengerMedicalAmount;
 
 
-    public static List<PtlAgreementUndwrtRules> toPtlAgreementUndwrtRules(String agreementId, List<PltAgreementRuleSaveDto> scheme) {
-        return scheme.stream().map(x -> PtlAgreementUndwrtRules.toPtlAgreementUndwrtRulesSaveDtoList(agreementId, x.getProductId(), x.getName(), x.getProductCosts())).flatMap(Collection::stream).collect(Collectors.toList());
-    }
 
     public static List<PtlAgreementUndwrtRulesSaveDto> toPltAgreementRuleSaveDto(List<PtlAgreementUndwrtRules> productCosts) {
         return productCosts.stream().map(PtlAgreementUndwrtRulesSaveDto::new).collect(Collectors.toList());

+ 3 - 0
src/main/java/com/ydtech/modules/protocol/entity/vo/PtlAgreementQueryVo.java

@@ -26,6 +26,9 @@ public class PtlAgreementQueryVo {
     @ApiModelProperty("承包规则")
     private List<PtlAgreementUnderwritingRules> underwritingRules;
 
+    @ApiModelProperty("承保规则")
+    private List<PtlAgreementUndwrtRules> undwrtRules;
+
     @ApiModelProperty("账号信息")
     private PtlAgreementAttribution ptlAgreementAttribution;
 

+ 4 - 0
src/main/java/com/ydtech/modules/protocol/entity/vo/PtlAgreementSaveVo.java

@@ -5,6 +5,7 @@ import com.ydtech.modules.protocol.entity.dto.PltAgreementSchemeSaveDto;
 import com.ydtech.modules.protocol.entity.dto.PtlAgreementAttributionDto;
 import com.ydtech.modules.protocol.entity.dto.PtlAgreementSaveDto;
 import com.ydtech.modules.protocol.entity.dto.PtlAgreementUnderwritingRulesSaveDto;
+import com.ydtech.modules.protocol.entity.po.PtlAgreementUndwrtRules;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -36,4 +37,7 @@ public class PtlAgreementSaveVo {
     @ApiModelProperty("待同步非车费用的协议列表")
     private List<String> syncAgreementIds;
 
+    @ApiModelProperty("承保规则")
+    private List<PtlAgreementUndwrtRules> undwrtRules;
+
 }

+ 7 - 25
src/main/java/com/ydtech/modules/protocol/service/PtlAgreementUndwrtRulesService.java

@@ -2,49 +2,38 @@ package com.ydtech.modules.protocol.service;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.ydtech.modules.protocol.entity.dto.PltAgreementRuleSaveDto;
-import com.ydtech.modules.protocol.entity.dto.PltAgreementSchemeSaveDto;
-import com.ydtech.modules.protocol.entity.po.PtlAgreementProductCosts;
 import com.ydtech.modules.protocol.entity.po.PtlAgreementUndwrtRules;
 
 import java.util.List;
 
 /**
  * @author CXP
- * @description 针对表【ptl_agreement_undwrt_rules(协议产品费用)】的数据库操作Service
+ * @description 针对表【ptl_agreement_undwrt_rules(协议承保规则)】的数据库操作Service
  * @createDate 2023年12月20日22:26:17
  */
 public interface PtlAgreementUndwrtRulesService extends IService<PtlAgreementUndwrtRules> {
 
     /**
-     * 根据 协议id 删除协议产品费用
+     * 根据 协议id 删除协议承保规则
      *
      * @param agreementId 协议id
      */
     void deleteByAgreementId(String agreementId);
 
     /**
-     * 根据 协议id 查询协议产品费用
+     * 根据 协议id 查询协议承保规则
      *
      * @param agreementId 协议id
      */
-    List<PltAgreementRuleSaveDto> getByAgreementId(String agreementId);
+    List<PtlAgreementUndwrtRules> getByAgreementId(String agreementId);
 
     /**
-     * 批量提添加产品费用
+     * 批量提添加承保规则
      *
      * @param agreementId 协议id
-     * @param scheme      产品
+     * @param undwrtRulesList      产品
      */
-    void saveBatchProductCosts(String agreementId, List<PltAgreementRuleSaveDto> scheme);
-
-    /**
-     * 根据保险公司id 和 配置查询产品费用
-     *
-     * @param companyId 保险公司id
-     * @param filedList 配置list
-     */
-    List<PtlAgreementUndwrtRules> selectByCompanyId(String companyId, List<String> filedList);
+    void saveBatchProductCosts(String agreementId, List<PtlAgreementUndwrtRules> undwrtRulesList);
 
     /**
      * 通过 协议id 构造查询条件
@@ -58,11 +47,4 @@ public interface PtlAgreementUndwrtRulesService extends IService<PtlAgreementUnd
         return wrapper;
     }
 
-    /**
-     * 通过协议ID、业务类型 获取需要进行匹配的费用因子
-     * @param busType
-     * @param agreementId
-     * @return
-     */
-    public List<PtlAgreementUndwrtRules> selectVliadFeeFactor(String busType, String agreementId);
 }

+ 11 - 2
src/main/java/com/ydtech/modules/protocol/service/impl/PtlAgreementServiceImpl.java

@@ -62,10 +62,12 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
 
     private final PtlAgreementNonCarProductCostsService ptlAgreementNonCarProductCostsService;
 
+    private final PtlAgreementUndwrtRulesService ptlAgreementUndwrtRulesService;
+
     public PtlAgreementServiceImpl(PtlAgreementProductCostsService ptlAgreementProductCostsService, PtlAgreementUnderwritingRulesService ptlAgreementUnderwritingRulesService,
                                    PtlAgreementAttributionService ptlAgreementAttributionService, PtlAgreementDeptService ptlAgreementDeptService,
                                    EsmInsCompanyService esmInsCompanyService, PtlAgreementNonCarProductCostsService ptlAgreementNonCarProductCostsService,
-                                   @Lazy InsCrawlerOrderService insCrawlerOrderController, @Lazy PtlAgreementService proxyObject,PtlNonCarInsuranceProductService ptlNonCarInsuranceProductService) {
+                                   @Lazy InsCrawlerOrderService insCrawlerOrderController, @Lazy PtlAgreementService proxyObject,PtlNonCarInsuranceProductService ptlNonCarInsuranceProductService,@Lazy PtlAgreementUndwrtRulesService ptlAgreementUndwrtRulesService) {
         this.ptlAgreementProductCostsService = ptlAgreementProductCostsService;
         this.ptlAgreementUnderwritingRulesService = ptlAgreementUnderwritingRulesService;
         this.ptlAgreementAttributionService = ptlAgreementAttributionService;
@@ -75,6 +77,7 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         this.insCrawlerOrderController = insCrawlerOrderController;
         this.proxyObject = proxyObject;
         this.ptlNonCarInsuranceProductService=ptlNonCarInsuranceProductService;
+        this.ptlAgreementUndwrtRulesService=ptlAgreementUndwrtRulesService;
     }
 
 
@@ -154,6 +157,8 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         List<PtlAgreementNonCarProductCosts> nonCarProductCosts = ptlAgreementNonCarProductCostsService.getByAgreementId(agreementId);
         // 获取承保规则
         List<PtlAgreementUnderwritingRules> underwritingRules = ptlAgreementUnderwritingRulesService.getByAgreementId(agreementId);
+
+        List<PtlAgreementUndwrtRules> undwrtRulesList = ptlAgreementUndwrtRulesService.getByAgreementId(agreementId);
         //  账号信息查询
         PtlAgreementAttribution ptlAgreementAttribution = ptlAgreementAttributionService.getById(agreementId);
         //2023-08-28 lig 增加  解决前端空对象为null问题,改为返回为空对象
@@ -171,7 +176,7 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         }
         // 授权查询
         List<PtlAgreementDept> deptList = ptlAgreementDeptService.getByAgreementId(agreementId);
-        PtlAgreementQueryVo ptlAgreementQueryVo = new PtlAgreementQueryVo(ptlAgreement, schemeQueryDto, nonCarProductCosts, underwritingRules, ptlAgreementAttribution, deptList);
+        PtlAgreementQueryVo ptlAgreementQueryVo = new PtlAgreementQueryVo(ptlAgreement, schemeQueryDto, nonCarProductCosts, underwritingRules,undwrtRulesList, ptlAgreementAttribution, deptList);
         return HttpResult.ok(ptlAgreementQueryVo);
     }
 
@@ -242,6 +247,8 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         }
         // 承包规则
         ptlAgreementUnderwritingRulesService.saveBatchUnderwritingRules(agreementId, agreement.getUnderwritingRules());
+
+        ptlAgreementUndwrtRulesService.saveBatchProductCosts(agreementId,agreement.getUndwrtRules());
         // 账号添加
         PtlAgreementAttributionDto attribution = agreement.getAttribution();
         if (StringUtils.isNotEmpty(attribution.getTemplateId())) {
@@ -266,6 +273,8 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         ptlAgreementNonCarProductCostsService.deleteByAgreementId(agreementId);
         // 删除承保规则
         ptlAgreementUnderwritingRulesService.deleteByAgreementId(agreementId);
+
+        ptlAgreementUndwrtRulesService.deleteByAgreementId(agreementId);
         // 删除账号信息
         ptlAgreementAttributionService.removeById(agreementId);
         // 删除授权部门

+ 6 - 57
src/main/java/com/ydtech/modules/protocol/service/impl/PtlAgreementUndwrtRulesServiceImpl.java

@@ -1,11 +1,7 @@
 package com.ydtech.modules.protocol.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ydtech.exception.SystemException;
 import com.ydtech.modules.protocol.dao.PtlAgreementUndwrtRulesMapper;
-import com.ydtech.modules.protocol.entity.dto.PltAgreementRuleSaveDto;
-import com.ydtech.modules.protocol.entity.dto.PtlAgreementUndwrtRulesSaveDto;
 import com.ydtech.modules.protocol.entity.po.PtlAgreementUndwrtRules;
 import com.ydtech.modules.protocol.service.PtlAgreementAttributionService;
 import com.ydtech.modules.protocol.service.PtlAgreementUndwrtRulesService;
@@ -13,15 +9,11 @@ import com.ydtech.modules.protocol.utils.AssertionUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
 import java.util.List;
-import java.util.stream.Collectors;
 
 /**
  * @author CXP
- * @description 针对表【ptl_agreement_undwrt_rules(协议产品费用)】的数据库操作Service实现
+ * @description 针对表【ptl_agreement_undwrt_rules(协议承保规则)】的数据库操作Service实现
  * @createDate 2023年12月20日22:25:57
  */
 @Service
@@ -40,63 +32,20 @@ public class PtlAgreementUndwrtRulesServiceImpl extends ServiceImpl<PtlAgreement
     }
 
     @Override
-    public List<PltAgreementRuleSaveDto> getByAgreementId(String agreementId) {
+    public List<PtlAgreementUndwrtRules> getByAgreementId(String agreementId) {
         List<PtlAgreementUndwrtRules> ptlAgreementUndwrtRulesList = baseMapper.selectList(getByAgreementIdWrapper(agreementId));
-        List<String> productIdList = ptlAgreementUndwrtRulesList.stream()
-                .map(PtlAgreementUndwrtRules::getProductId).distinct().collect(Collectors.toList());
-
-        List<PltAgreementRuleSaveDto> productCostsSave = new ArrayList<>();
-        productIdList.forEach(productId -> {
-                    List<PtlAgreementUndwrtRules> productCostsList = ptlAgreementUndwrtRulesList.stream().filter(x -> x.getProductId().equals(productId)).collect(Collectors.toList());
-            PltAgreementRuleSaveDto pltAgreementRuleSaveDto = new PltAgreementRuleSaveDto(productCostsList);
-                    productCostsSave.add(pltAgreementRuleSaveDto);
-                }
-        );
-        return productCostsSave;
+        return ptlAgreementUndwrtRulesList;
     }
 
     @Override
     @Transactional
-    public void saveBatchProductCosts(String agreementId, List<PltAgreementRuleSaveDto> scheme) {
-        if (scheme != null && !scheme.isEmpty()) {
-            List<PtlAgreementUndwrtRules> ptlAgreementUndwrtRulesList = PtlAgreementUndwrtRulesSaveDto.toPtlAgreementUndwrtRules(agreementId, scheme);
+    public void saveBatchProductCosts(String agreementId, List<PtlAgreementUndwrtRules> ptlAgreementUndwrtRulesList) {
+        if (ptlAgreementUndwrtRulesList != null && !ptlAgreementUndwrtRulesList.isEmpty()) {
             boolean b = saveBatch(ptlAgreementUndwrtRulesList);
-            AssertionUtils.isSucceed(b, "批量添加产品费用失败");
+            AssertionUtils.isSucceed(b, "批量添加承保规则失败");
         }
     }
 
 
-    @Override
-    public List<PtlAgreementUndwrtRules> selectByCompanyId(String companyId, List<String> filedList) {
-        String agreementId = ptlAgreementAttributionService.selectByCompanyId(companyId, filedList);
-        List<PtlAgreementUndwrtRules> ptlAgreementProductCosts = baseMapper.selectList(getByAgreementIdWrapper(agreementId));
-        if (ptlAgreementProductCosts.isEmpty()) {
-            throw new SystemException("未查询到费用配置");
-        }
-        return ptlAgreementProductCosts;
-    }
-
-    /**
-     * 通过协议ID 获取需要进行匹配的费用因子
-     * @param busType
-     * @param agreementId
-     * @return
-     */
-    @Override
-    public List<PtlAgreementUndwrtRules> selectVliadFeeFactor(String busType,String agreementId){
-        //获取当前时间,用来卡费用方案中有效期区间
-        Date date=new Date();
-        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        String nowDate=sdf.format(date);
-        //组织查询条件
-        List tempTypes=new ArrayList();
-        tempTypes.add(busType);//跟单类型
-        tempTypes.add("039999");//兜底类型
-        LambdaQueryWrapper<PtlAgreementUndwrtRules> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(PtlAgreementUndwrtRules::getAgreementId, agreementId);
-        wrapper.in(PtlAgreementUndwrtRules::getProductId,tempTypes);
-        List<PtlAgreementUndwrtRules> ptlAgreementProductCosts = baseMapper.selectList(wrapper);
-        return ptlAgreementProductCosts;
-    }
 
 }