Ver código fonte

非车险费用方案配置功能开发

li.pengfei 2 anos atrás
pai
commit
f39acba1a4

+ 6 - 1
src/main/java/com/ydtech/modules/esm/service/EsmInsCompanyService.java

@@ -53,7 +53,12 @@ public interface EsmInsCompanyService extends IService<EsmInsCompany> {
      */
     List<String> getByLowerId(String companyId);
 
-
+    /**
+     * 根据保险公司ID查询本级+所有上级
+     * @param companyId
+     * @return
+     */
+    List<String> getAllRelationCompanyId(String companyId);
 }
 
 

+ 24 - 0
src/main/java/com/ydtech/modules/esm/service/impl/EsmInsCompanyServiceImpl.java

@@ -9,6 +9,7 @@ import com.ydtech.modules.esm.model.vo.req.EsmInsCompanyReq;
 import com.ydtech.modules.esm.service.EsmInsCompanyService;
 import com.ydtech.modules.protocol.utils.AssertionUtils;
 import com.ydtech.utils.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
@@ -122,6 +123,29 @@ public class EsmInsCompanyServiceImpl extends ServiceImpl<EsmInsCompanyMapper, E
     public List<String> getByLowerId(String companyId) {
         return baseMapper.getByLowerId(companyId);
     }
+
+    @Override
+    public List<String> getAllRelationCompanyId(String companyId){
+//        //获取本级和下级
+//        List result=getByLowerId(companyId);
+        //调整为查本级和上级
+        List<String> result=new ArrayList<>();
+        //放入本级
+        result.add(companyId);
+        //取出本级机构信息
+        EsmInsCompany insCompany=getById(companyId);
+        //放入上级
+        while (!"0".equals(insCompany.getParentId())){
+            LambdaQueryWrapper<EsmInsCompany> lqw1 = new LambdaQueryWrapper<>();
+            lqw1.eq(EsmInsCompany::getId, insCompany.getParentId());
+            List<EsmInsCompany> list = list(lqw1);
+            if (null != list && !list.isEmpty()) {
+                insCompany=list.get(0);
+                result.add(insCompany.getId());
+            }
+        }
+        return result;
+    }
 }
 
 

+ 16 - 4
src/main/java/com/ydtech/modules/protocol/controller/PtlAgreementController.java

@@ -5,16 +5,16 @@ import com.ydtech.core.page.HttpResult;
 import com.ydtech.core.page.PageResult;
 import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.protocol.entity.po.PtlAgreement;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementAuditVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementPageVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementQueryVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementSaveVo;
+import com.ydtech.modules.protocol.entity.po.PtlAgreementNonCarProductCosts;
+import com.ydtech.modules.protocol.entity.vo.*;
 import com.ydtech.modules.protocol.service.PtlAgreementService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.List;
+
 /**
  * @author wenks
  * @description 协议管理内容
@@ -80,4 +80,16 @@ public class PtlAgreementController extends BaseController {
         return HttpResult.ok("", shutdown);
     }
 
+    @PostMapping("/noncarcost")
+    @ApiOperation("获取非车险费用配置列表")
+    public HttpResult<List<PtlAgreementNonCarProductCostsVo>> getAgreementNonCarCosts(@RequestBody PtlAgreement ptlAgreement){
+        return ptlAgreementService.getNonCarCostsInfo(ptlAgreement.getAgreementCode(),ptlAgreement.getAssociationCompaniesId());
+    }
+
+    @PostMapping("/findrelationagree")
+    @ApiOperation("获取可同步协议列表")
+    public HttpResult<List<PtlAgreement>> findRelationAgreement(@RequestBody PtlAgreement ptlAgreement){
+        return ptlAgreementService.findRelationAgreement(ptlAgreement.getAssociationCompaniesId());
+    }
+
 }

+ 0 - 11
src/main/java/com/ydtech/modules/protocol/entity/po/PtlAgreementNonCarProductCosts.java

@@ -69,15 +69,4 @@ public class PtlAgreementNonCarProductCosts implements Serializable {
     @TableField(exist = false)
     private static final long serialVersionUID = 1L;
 
-    public PtlAgreementNonCarProductCosts(String agreementId, PtlAgreementNonCarProductCostsSaveVo nonCarProductCostsSaveVo) {
-        this.agreementId = agreementId;
-        this.productId = nonCarProductCostsSaveVo.getProductId();
-        this.productName = nonCarProductCostsSaveVo.getProductName();
-        this.costsDescription = nonCarProductCostsSaveVo.getCostsDescription();
-        this.costsStartDate = nonCarProductCostsSaveVo.getCostsStartDate();
-        this.costsEndDate = nonCarProductCostsSaveVo.getCostsEndDate();
-        this.costsProportion = nonCarProductCostsSaveVo.getCostsProportion();
-
-    }
-
 }

+ 11 - 12
src/main/java/com/ydtech/modules/protocol/entity/vo/PtlAgreementNonCarProductCostsSaveVo.java

@@ -8,6 +8,7 @@ import lombok.Data;
 
 import java.io.Serializable;
 import java.time.LocalDateTime;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -25,21 +26,19 @@ public class PtlAgreementNonCarProductCostsSaveVo implements Serializable {
     @ApiModelProperty("产品名称")
     private String productName;
 
-    @ApiModelProperty("费用描述")
-    private String costsDescription;
-
-    @ApiModelProperty("费用起期")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private LocalDateTime costsStartDate;
-
-    @ApiModelProperty("费用止期")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private LocalDateTime costsEndDate;
-
     @ApiModelProperty("总费用比例")
     private String costsProportion;
 
     public static List<PtlAgreementNonCarProductCosts> toPtlAgreementNonCarProductCosts(String agreementId, List<PtlAgreementNonCarProductCostsSaveVo> nonCarProductCosts) {
-        return nonCarProductCosts.stream().map(x -> new PtlAgreementNonCarProductCosts(agreementId, x)).collect(Collectors.toList());
+        List<PtlAgreementNonCarProductCosts> resultList=new ArrayList<>();
+        for(PtlAgreementNonCarProductCostsSaveVo saveVo:nonCarProductCosts){
+            PtlAgreementNonCarProductCosts tempDot=new PtlAgreementNonCarProductCosts();
+            tempDot.setAgreementId(agreementId);
+            tempDot.setProductId(saveVo.getProductId());
+            tempDot.setProductName(saveVo.getProductName());
+            tempDot.setCostsProportion(saveVo.getCostsProportion());
+            resultList.add(tempDot);
+        }
+        return resultList;
     }
 }

+ 31 - 0
src/main/java/com/ydtech/modules/protocol/entity/vo/PtlAgreementNonCarProductCostsVo.java

@@ -0,0 +1,31 @@
+package com.ydtech.modules.protocol.entity.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class PtlAgreementNonCarProductCostsVo {
+
+
+    @ApiModelProperty("产品id")
+    private String productId;
+
+    @ApiModelProperty("产品名称")
+    private String productName;
+
+    @ApiModelProperty("归属保险公司代码")
+    private String companyId;
+
+    @ApiModelProperty("归属保险公司名称")
+    private String companyName;
+
+    @ApiModelProperty("总费用比例")
+    private String costsProportion;
+
+    @ApiModelProperty("险种编码")
+    private String riskCode;
+
+    @ApiModelProperty("险种名称")
+    private String riskName;
+
+}

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

@@ -33,4 +33,7 @@ public class PtlAgreementSaveVo {
     @ApiModelProperty("协议归属")
     private PtlAgreementAttributionDto attribution;
 
+    @ApiModelProperty("待同步非车费用的协议列表")
+    private List<String> syncAgreementIds;
+
 }

+ 14 - 0
src/main/java/com/ydtech/modules/protocol/service/PtlAgreementNonCarProductCostsService.java

@@ -1,6 +1,7 @@
 package com.ydtech.modules.protocol.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.protocol.entity.po.PtlAgreement;
 import com.ydtech.modules.protocol.entity.po.PtlAgreementNonCarProductCosts;
 import com.ydtech.modules.protocol.entity.vo.PtlAgreementNonCarProductCostsSaveVo;
 
@@ -36,5 +37,18 @@ public interface PtlAgreementNonCarProductCostsService extends IService<PtlAgree
      */
     List<PtlAgreementNonCarProductCosts> getByAgreementId(String agreementId);
 
+    /**
+     * 根据协议ID  产品编码  获取非车产品费用
+     * @param agreementId
+     * @param productCode
+     * @return
+     */
+    PtlAgreementNonCarProductCosts getNonCarProductCostsInfo(String agreementId, String productCode);
 
+    /**
+     * 同步nonCarProductCosts已配置非车费用 给 协议  tempAgreementId
+     * @param destAgreement
+     * @param nonCarProductCosts
+     */
+    void synNonCarProductCosts(PtlAgreement destAgreement, List<PtlAgreementNonCarProductCostsSaveVo> nonCarProductCosts);
 }

+ 16 - 4
src/main/java/com/ydtech/modules/protocol/service/PtlAgreementService.java

@@ -8,10 +8,8 @@ import com.ydtech.modules.protocol.entity.dto.PtlAgreementAttributionDto;
 import com.ydtech.modules.protocol.entity.dto.PtlAgreementInsCompanyDto;
 import com.ydtech.modules.protocol.entity.dto.PtlAgreementSaveDto;
 import com.ydtech.modules.protocol.entity.po.PtlAgreement;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementAuditVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementPageVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementQueryVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementSaveVo;
+import com.ydtech.modules.protocol.entity.po.PtlAgreementNonCarProductCosts;
+import com.ydtech.modules.protocol.entity.vo.*;
 
 import java.util.List;
 
@@ -119,4 +117,18 @@ public interface PtlAgreementService extends IService<PtlAgreement> {
      */
     EsmInsCompany verifyLogin(PtlAgreement ptlAgreement, PtlAgreementSaveDto agreementSaveDto, PtlAgreementAttributionDto attribution);
 
+    /**
+     * 根据协议编码,归属保险公司获取非车险费用配置信息
+     * @param agreementId
+     * @param companyId
+     * @return
+     */
+    HttpResult<List<PtlAgreementNonCarProductCostsVo>> getNonCarCostsInfo(String agreementId, String companyId);
+
+    /**
+     * 根据归属保司,查询上级以及本级相关协议集合
+     * @param associationCompaniesId
+     * @return
+     */
+    HttpResult<List<PtlAgreement>> findRelationAgreement(String associationCompaniesId);
 }

+ 6 - 0
src/main/java/com/ydtech/modules/protocol/service/PtlNonCarInsuranceProductService.java

@@ -67,4 +67,10 @@ public interface PtlNonCarInsuranceProductService extends IService<PtlNonCarInsu
      */
     HttpResult<List<PtlNonCarInsuranceProduct>> getByCompanyId(String companyId);
 
+    /**
+     * 查询传入保险公司列表下的所有非车产品
+     * @param companyIdList
+     * @return
+     */
+    List<PtlNonCarInsuranceProduct> findProductListByCompangIds(List<String> companyIdList);
 }

+ 21 - 1
src/main/java/com/ydtech/modules/protocol/service/impl/PtlAgreementNonCarProductCostsServiceImpl.java

@@ -3,7 +3,9 @@ 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.modules.protocol.dao.PtlAgreementNonCarProductCostsMapper;
+import com.ydtech.modules.protocol.entity.po.PtlAgreement;
 import com.ydtech.modules.protocol.entity.po.PtlAgreementNonCarProductCosts;
+import com.ydtech.modules.protocol.entity.po.PtlNonCarInsuranceProduct;
 import com.ydtech.modules.protocol.entity.vo.PtlAgreementNonCarProductCostsSaveVo;
 import com.ydtech.modules.protocol.service.PtlAgreementNonCarProductCostsService;
 import com.ydtech.modules.protocol.utils.AssertionUtils;
@@ -45,8 +47,26 @@ public class PtlAgreementNonCarProductCostsServiceImpl extends ServiceImpl<PtlAg
         costsLambdaQueryWrapper.eq(PtlAgreementNonCarProductCosts::getAgreementId, agreementId);
         return list(costsLambdaQueryWrapper);
     }
+    @Override
+    public PtlAgreementNonCarProductCosts getNonCarProductCostsInfo(String agreementId, String productCode){
+        PtlAgreementNonCarProductCosts resultDto=null;
+        LambdaQueryWrapper<PtlAgreementNonCarProductCosts> costsLambdaQueryWrapper = new LambdaQueryWrapper<>();
+        costsLambdaQueryWrapper.eq(PtlAgreementNonCarProductCosts::getAgreementId, agreementId);
+        costsLambdaQueryWrapper.eq(PtlAgreementNonCarProductCosts::getProductId, productCode);
+        List<PtlAgreementNonCarProductCosts> resultList=list(costsLambdaQueryWrapper);
+        if(resultList!=null&&resultList.size()>0){
+            resultDto=resultList.get(0);
+        }
+        return resultDto;
+    }
 
-
+    @Override
+    public  void synNonCarProductCosts(PtlAgreement destAgreement, List<PtlAgreementNonCarProductCostsSaveVo> nonCarProductCosts){
+        //删除指定协议的非车费用信息列表
+        deleteByAgreementId(destAgreement.getId());
+        //过滤后的费用方案列表,重新给指定协议插入配置信息
+        saveBatchNonCarProductCosts(destAgreement.getId(),nonCarProductCosts);
+    }
 }
 
 

+ 103 - 5
src/main/java/com/ydtech/modules/protocol/service/impl/PtlAgreementServiceImpl.java

@@ -4,6 +4,9 @@ import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ydtech.config.DictEnumConfig;
+import com.ydtech.constants.enums.dict.DictionaryData;
+import com.ydtech.constants.enums.dict.DictionaryManagement;
 import com.ydtech.constants.enums.dict.agreement.AgreementType;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.core.page.PageResult;
@@ -15,10 +18,7 @@ import com.ydtech.modules.protocol.dao.PtlAgreementMapper;
 import com.ydtech.modules.protocol.entity.constants.PtlApiType;
 import com.ydtech.modules.protocol.entity.dto.*;
 import com.ydtech.modules.protocol.entity.po.*;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementAuditVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementPageVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementQueryVo;
-import com.ydtech.modules.protocol.entity.vo.PtlAgreementSaveVo;
+import com.ydtech.modules.protocol.entity.vo.*;
 import com.ydtech.modules.protocol.service.*;
 import com.ydtech.modules.protocol.utils.AssertionUtils;
 import org.apache.commons.lang3.ObjectUtils;
@@ -30,6 +30,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -57,13 +58,14 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
 
     private final PtlAgreementService proxyObject;
 
+    private final PtlNonCarInsuranceProductService ptlNonCarInsuranceProductService;
 
     private final PtlAgreementNonCarProductCostsService ptlAgreementNonCarProductCostsService;
 
     public PtlAgreementServiceImpl(PtlAgreementProductCostsService ptlAgreementProductCostsService, PtlAgreementUnderwritingRulesService ptlAgreementUnderwritingRulesService,
                                    PtlAgreementAttributionService ptlAgreementAttributionService, PtlAgreementDeptService ptlAgreementDeptService,
                                    EsmInsCompanyService esmInsCompanyService, PtlAgreementNonCarProductCostsService ptlAgreementNonCarProductCostsService,
-                                   @Lazy InsCrawlerOrderService insCrawlerOrderController, @Lazy PtlAgreementService proxyObject) {
+                                   @Lazy InsCrawlerOrderService insCrawlerOrderController, @Lazy PtlAgreementService proxyObject,PtlNonCarInsuranceProductService ptlNonCarInsuranceProductService) {
         this.ptlAgreementProductCostsService = ptlAgreementProductCostsService;
         this.ptlAgreementUnderwritingRulesService = ptlAgreementUnderwritingRulesService;
         this.ptlAgreementAttributionService = ptlAgreementAttributionService;
@@ -72,6 +74,7 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         this.ptlAgreementNonCarProductCostsService = ptlAgreementNonCarProductCostsService;
         this.insCrawlerOrderController = insCrawlerOrderController;
         this.proxyObject = proxyObject;
+        this.ptlNonCarInsuranceProductService=ptlNonCarInsuranceProductService;
     }
 
 
@@ -211,6 +214,32 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         ptlAgreementProductCostsService.saveBatchProductCosts(agreementId, agreement.getScheme());
         // 非车险产品费用
         ptlAgreementNonCarProductCostsService.saveBatchNonCarProductCosts(agreementId, agreement.getNonCarProductCosts());
+        //同步刷新其他协议非车产品费用信息(有待同步协议时,进行同步)
+        if(agreement.getSyncAgreementIds()!=null&&agreement.getSyncAgreementIds().size()>0){
+            for(int i=0;i<agreement.getSyncAgreementIds().size();i++){
+                String tempAgreementId=agreement.getSyncAgreementIds().get(i);
+                PtlAgreement destAgreement= getById(tempAgreementId);
+                //根据归属保司,找出本级和上级 所有产品代码
+                //先获取相关保险公司列表
+                String companyId=destAgreement.getPartnerCompaniesId();
+                if(destAgreement.getAssociationCompaniesId()!=null&&!"".equals(destAgreement.getAssociationCompaniesId())){
+                    companyId=destAgreement.getAssociationCompaniesId();
+                }
+                List<String> companyIdList=esmInsCompanyService.getAllRelationCompanyId(companyId);
+                //再根据保险公司列表获取所有非车产品列表
+                List<PtlNonCarInsuranceProduct> productList=ptlNonCarInsuranceProductService.findProductListByCompangIds(companyIdList);
+                List<PtlAgreementNonCarProductCostsSaveVo> finalList=new ArrayList<>();
+                //按找出的产品过滤传进来的 费用方案列表
+                for(PtlNonCarInsuranceProduct tempProductDto:productList){
+                    for(PtlAgreementNonCarProductCostsSaveVo productCostDto:agreement.getNonCarProductCosts()){
+                        if(productCostDto.getProductId().equals(tempProductDto.getProductCode())){
+                            finalList.add(productCostDto);
+                        }
+                    }
+                }
+                ptlAgreementNonCarProductCostsService.synNonCarProductCosts(destAgreement,finalList);
+            }
+        }
         // 承包规则
         ptlAgreementUnderwritingRulesService.saveBatchUnderwritingRules(agreementId, agreement.getUnderwritingRules());
         // 账号添加
@@ -283,5 +312,74 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         return HttpResult.ok("修改成功");
     }
 
+    @Override
+    public HttpResult<List<PtlAgreementNonCarProductCostsVo>> getNonCarCostsInfo(String agreementId, String companyId){
+        List<PtlAgreementNonCarProductCostsVo> result=new ArrayList<>();
+        //先根据传过来的保险公司代码,找上下级所有机构层级对应的非车产品列表
+        if(companyId!=null&&!"".equals(companyId)){
+            //先获取相关保险公司列表
+            List<String> companyIdList=esmInsCompanyService.getAllRelationCompanyId(companyId);
+            //再根据保险公司列表获取所有非车产品列表
+            List<PtlNonCarInsuranceProduct> productList=ptlNonCarInsuranceProductService.findProductListByCompangIds(companyIdList);
+            if(productList!=null&&productList.size()>0){
+                for(int i=0;i<productList.size();i++){
+                    PtlNonCarInsuranceProduct tempProductDto=productList.get(i);
+                    PtlAgreementNonCarProductCostsVo costsVo=new PtlAgreementNonCarProductCostsVo();
+                    costsVo.setProductId(tempProductDto.getProductCode());
+                    costsVo.setProductName(tempProductDto.getProductName());
+                    costsVo.setCompanyId(tempProductDto.getCompanyId());
+                    EsmInsCompany tempInsCompany=esmInsCompanyService.getById(tempProductDto.getCompanyId());
+                    costsVo.setCompanyName(tempInsCompany.getName());
+                    costsVo.setRiskCode(tempProductDto.getInsuranceCode());
+                    Map<String, DictionaryManagement> m = DictEnumConfig.getDmMap();
+                    DictionaryManagement dictionaryManagement=m.get("nonCarInsuranceCode");
+                    String riskName="";
+                    for(DictionaryData data: dictionaryManagement.getDdList()){
+                        if(tempProductDto.getInsuranceCode().equals(data.getDictValue())){
+                            riskName=data.getDictTag();
+                        }
+                    }
+                    costsVo.setRiskName(riskName);
+                    //然后根据协议ID 查询所有已配置费用的产品进行赋值
+                    if(agreementId!=null&&!"".equals(agreementId)){
+                        //使用协议ID  产品ID  获取已经配置好的信息
+                        PtlAgreementNonCarProductCosts agreementNonCarProductCosts=ptlAgreementNonCarProductCostsService.getNonCarProductCostsInfo(agreementId,tempProductDto.getProductCode());
+                        //赋值已配置的费用比例
+                        if(agreementNonCarProductCosts!=null){
+                            costsVo.setCostsProportion(agreementNonCarProductCosts.getCostsProportion());
+                        }
+                    }
+                    result.add(costsVo);
+                }
+            }
+        }else{
+            //如果归属保司没选,则直接返回空列表,相当于没查到对应非车产品信息
+        }
+        return HttpResult.ok(result);
+    }
 
+    @Override
+    public HttpResult<List<PtlAgreement>> findRelationAgreement(String companyId){
+        List<PtlAgreement> resultList=new ArrayList<>();
+        if(companyId!=null&&!"".equals(companyId)) {
+            //先获取相关保险公司列表
+            List<String> companyIdList = esmInsCompanyService.getAllRelationCompanyId(companyId);
+            if(companyIdList!=null&&companyIdList.size()>0){
+                for(int i=0;i<companyIdList.size();i++){
+                    String tempCom=companyIdList.get(i);
+                    LambdaQueryWrapper<PtlAgreement> wrapper = new LambdaQueryWrapper<>();
+                    wrapper.eq(PtlAgreement::getValidStatus,"1");
+                    wrapper.and(wq1->wq1.eq(PtlAgreement::getPartnerCompaniesId,tempCom).or(wq2->wq2.eq(PtlAgreement::getAssociationCompaniesId,tempCom)));
+                    resultList.addAll(list(wrapper));
+                }
+                for(int j=0;j<resultList.size();j++){
+                    PtlAgreement agreement=resultList.get(j);
+                    String tempCompanyId=agreement.getAssociationCompaniesId()!=null&&!"".equals(agreement.getAssociationCompaniesId())?agreement.getAssociationCompaniesId():agreement.getPartnerCompaniesId();
+                    EsmInsCompany tempCompany= esmInsCompanyService.getById(tempCompanyId);
+                    agreement.setInsuranceCompany(tempCompany.getName());
+                }
+            }
+        }
+        return HttpResult.ok(resultList);
+    }
 }

+ 8 - 0
src/main/java/com/ydtech/modules/protocol/service/impl/PtlNonCarInsuranceProductServiceImpl.java

@@ -167,4 +167,12 @@ public class PtlNonCarInsuranceProductServiceImpl extends ServiceImpl<PtlNonCarI
         return HttpResult.ok(resultVo);
     }
 
+    @Override
+    public  List<PtlNonCarInsuranceProduct> findProductListByCompangIds(List<String> companyIdList){
+        LambdaQueryWrapper<PtlNonCarInsuranceProduct> wrapper = new LambdaQueryWrapper<>();
+        wrapper.in(PtlNonCarInsuranceProduct::getCompanyId,companyIdList);
+        List<PtlNonCarInsuranceProduct> result = baseMapper.selectList(wrapper);
+        return result;
+    }
+
 }