liub 3 месяцев назад
Родитель
Сommit
58448c56ae

+ 19 - 0
commons/pom.xml

@@ -136,6 +136,25 @@
             <artifactId>opentelemetry-api</artifactId>
             <version>1.41.0</version>
         </dependency>
+
+        <!--Gson 转化-->
+        <dependency>
+            <groupId>com.google.code.gson</groupId>
+            <artifactId>gson</artifactId>
+            <version>2.9.1</version>
+            <scope>compile</scope>
+            <exclusions>
+                <exclusion>
+                    <artifactId>spring</artifactId>
+                    <groupId>*</groupId>
+                </exclusion>
+                <exclusion>
+                    <artifactId>c3p0</artifactId>
+                    <groupId>*</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+
     </dependencies>
 
     <build>

+ 1 - 2
tenant/insurance/quotation-dadi/src/main/java/com/jzg/quotation/dadi/utils/GsonUtils.java → commons/src/main/java/com/jzg/commons/util/GsonUtils.java

@@ -1,7 +1,6 @@
-package com.jzg.quotation.dadi.utils;
+package com.jzg.commons.util;
 
 import com.alibaba.excel.support.cglib.beans.BeanMap;
-import com.alibaba.excel.util.StringUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.google.common.collect.Maps;
 import com.google.gson.*;

+ 7 - 6
tenant/insurance/quotation-commons/src/main/java/com/jzg/quotation/commons/component/RequestComponent.java

@@ -6,7 +6,6 @@ import com.jzg.commons.constants.quote.enums.base.InsuranceEnum;
 import com.jzg.commons.exception.SystemException;
 import com.jzg.quotation.commons.config.WebClientConfig;
 import com.jzg.quotation.commons.entity.CookiesRequest;
-import com.jzg.quotation.commons.utils.HtEncryptDecryptUtils;
 import com.jzg.quotation.commons.utils.InsuranceLog;
 import com.jzg.quotation.commons.utils.RequestObjectConversion;
 import lombok.RequiredArgsConstructor;
@@ -14,10 +13,11 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.core.ParameterizedTypeReference;
 import org.springframework.core.io.buffer.DataBuffer;
 import org.springframework.core.io.buffer.DataBufferUtils;
-import org.springframework.http.*;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.MediaType;
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Component;
-import org.springframework.util.LinkedMultiValueMap;
 import org.springframework.util.MultiValueMap;
 import org.springframework.web.reactive.function.BodyInserters;
 import org.springframework.web.reactive.function.client.WebClient;
@@ -31,7 +31,8 @@ import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Paths;
 import java.nio.file.StandardOpenOption;
-import java.util.*;
+import java.util.Map;
+import java.util.Optional;
 import java.util.function.Consumer;
 import java.util.regex.Pattern;
 
@@ -689,11 +690,11 @@ public class RequestComponent {
             // 判断返回的字符串是否为有效的JSON格式
             if (isValidJson(responseBody)) {
                 result = JSON.parseObject(responseBody, responseClass);
-                InsuranceLog.infoLog(InsuranceEnum.XDCX.getPinyin(), "\t---------> URl: {} \t---------> 请求参数:{}", url, BodyInserters.fromValue(body));
-                InsuranceLog.infoLog(InsuranceEnum.XDCX.getPinyin(), "\t---------> 响应参数:{}", result);
             }else{
                 result = (Response)responseBody;
             }
+            InsuranceLog.infoLog(InsuranceEnum.XDCX.getPinyin(), "\t---------> URl: {} \t---------> 请求参数:{}", url, BodyInserters.fromValue(body));
+            InsuranceLog.infoLog(InsuranceEnum.XDCX.getPinyin(), "\t---------> 响应参数:{}", result);
             // 构建返回的ResponseEntity
             HttpHeaders responseHeaders = new HttpHeaders();
             responseHeaders.setContentType(MediaType.APPLICATION_JSON);

+ 1 - 2
tenant/insurance/quotation-dadi/src/main/java/com/jzg/quotation/dadi/utils/DaDiAESUtils.java

@@ -1,10 +1,9 @@
 package com.jzg.quotation.dadi.utils;
 
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
 import com.google.gson.JsonParser;
 import com.google.gson.JsonSyntaxException;
 import com.jzg.commons.text.CharsetKit;
+import com.jzg.commons.util.GsonUtils;
 
 import javax.crypto.Cipher;
 import javax.crypto.spec.SecretKeySpec;

+ 23 - 10
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/component/HengBangCrawlerRequestComponent.java

@@ -5,12 +5,10 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.databind.ObjectMapper;
-import com.jzg.commons.constants.quote.enums.base.InsuranceEnum;
 import com.jzg.commons.exception.SystemException;
 import com.jzg.quotation.commons.component.RequestComponent;
 import com.jzg.quotation.commons.constant.CacheConstant;
 import com.jzg.quotation.commons.service.ExteriorUtilsRequest;
-import com.jzg.quotation.commons.utils.InsuranceLog;
 import com.jzg.quotation.commons.utils.RequestObjectConversion;
 import com.jzg.quotation.hengbang.crawler.constant.RequestConstant;
 import com.jzg.quotation.hengbang.crawler.constant.enums.RequestUrl;
@@ -25,13 +23,13 @@ import org.apache.commons.collections4.CollectionUtils;
 import org.redisson.api.RMap;
 import org.redisson.api.RedissonClient;
 import org.springframework.core.ParameterizedTypeReference;
-import org.springframework.http.*;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpStatusCode;
+import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Component;
 import org.springframework.util.LinkedMultiValueMap;
 import org.springframework.util.MultiValueMap;
 import org.springframework.util.StringUtils;
-import org.springframework.web.client.RestTemplate;
-import org.springframework.web.reactive.function.BodyInserters;
 import org.springframework.web.reactive.function.client.WebClientResponseException;
 
 import javax.crypto.Cipher;
@@ -173,10 +171,15 @@ public class HengBangCrawlerRequestComponent {
         } catch (Exception e) {
             throw new SystemException("解密失败");
         }
-        HbCrawlerQueryCarRequest.CbitDataDTO cbitDataDTO = JSONObject.parseObject(plaintext).getJSONObject("carMappings")
-                .getJSONArray("cbitData")
-                .getJSONObject(0).toJavaObject(HbCrawlerQueryCarRequest.CbitDataDTO.class);
-        return cbitDataDTO;
+        log.info("解密结果:{}", plaintext);
+        if (JSONObject.parseObject(plaintext).getJSONObject("carMappings") != null) {
+            HbCrawlerQueryCarRequest.CbitDataDTO cbitDataDTO = JSONObject.parseObject(plaintext).getJSONObject("carMappings")
+                    .getJSONArray("cbitData")
+                    .getJSONObject(0).toJavaObject(HbCrawlerQueryCarRequest.CbitDataDTO.class);
+            return cbitDataDTO;
+        } else {
+            throw new SystemException("未查询到车辆信息");
+        }
     }
 
     /**
@@ -296,6 +299,7 @@ public class HengBangCrawlerRequestComponent {
             ObjectMapper mapper = new ObjectMapper();
             mapper.setSerializationInclusion(JsonInclude.Include.ALWAYS);
             String json = mapper.writeValueAsString(calculationRequest);
+            log.info("提交报价数据请求参数: {}", json);
             req.setHbEncD(HengBangAESUtil.encryptStr(json));
             HbCrawlerSaleInfoResponse response = requestComponent.toStringPost(RequestUrl.CALCULATION.getRequestUrl(hbCrawlerProperties.getBaseUrl()), req, RequestUrl.CALCULATION.getRequestDescription(), HbCrawlerSaleInfoResponse.class, headers);
             System.out.println(HengBangAESUtil.decryptStr(response.getHbEncD()));
@@ -323,6 +327,15 @@ public class HengBangCrawlerRequestComponent {
      * @param headers
      * @return
      */
+    public HbCrawlerProposalResponse carInsureItem(String plyappno, HttpHeaders headers) {
+        MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
+        params.add("plyappno", plyappno);
+        requestComponent.get(RequestUrl.CARINSUREITEM.getRequestUrl(hbCrawlerProperties.getBaseUrl()), params, RequestUrl.CARINSUREITEM.getRequestDescription(), null, headers);
+        requestComponent.get(RequestUrl.CHARGINGPOSTS.getRequestUrl(hbCrawlerProperties.getBaseUrl()), params, RequestUrl.CHARGINGPOSTS.getRequestDescription(), null, headers);
+        requestComponent.get(RequestUrl.CARINSUREDEVICES.getRequestUrl(hbCrawlerProperties.getBaseUrl()), params, RequestUrl.CARINSUREDEVICES.getRequestDescription(), null, headers);
+        return proposal(plyappno, headers);
+    }
+
     public HbCrawlerProposalResponse proposal(String plyappno, HttpHeaders headers) {
         MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
         String encryptPlyappno;
@@ -395,7 +408,7 @@ public class HengBangCrawlerRequestComponent {
             log.error("恒邦calculation接口调用失败[{}]: {}", e.getStatusCode(), e.getResponseBodyAsString(StandardCharsets.UTF_8));
             if (e.getStatusCode().equals(HttpStatusCode.valueOf(500))) {
                 return JSONObject.parseObject(e.getResponseBodyAsString(StandardCharsets.UTF_8)).getString("detail");
-            } else  if (e.getStatusCode().equals(HttpStatusCode.valueOf(400))) {
+            } else if (e.getStatusCode().equals(HttpStatusCode.valueOf(400))) {
                 return JSONObject.parseObject(e.getResponseBodyAsString(StandardCharsets.UTF_8)).getString("title");
             } else {
                 throw new SystemException(e.getMessage());

+ 3 - 0
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/constant/enums/RequestUrl.java

@@ -22,6 +22,9 @@ public enum RequestUrl implements CrawlerRequestUrlStandard {
     FIND_SALE_INFO("/backstage/api/findSaleInformationNew", "查询归属信息"),
     DEPRECIATIONRATE("/backstage/api/coredblink/depreciationrate", "获取折旧价"),
     QUOTEIMMEDIATELY("/new-insure/api/carinsurenew/quoteimmediately", "生成投保单号"),
+    CARINSUREITEM("/new-insure/api/carinsurenew/carInsureItem", "校验投保单号"),
+    CHARGINGPOSTS("/new-insure/api/carinsurenew/chargingPosts", "校验投保单号"),
+    CARINSUREDEVICES("/new-insure/api/carinsurenew/carInsureDevices", "汽车保险设备"),
     CALCULATION("/new-insure/api/carinsurenew/calculation", "提交报价数据"),
     PROPOSAL("/new-insure/api/carinsurenew/proposal", "获取报价数据"),
 

+ 47 - 19
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/entity/request/HbCrawlerCalculationRequest.java

@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
 import com.jzg.commons.entity.quote.vo.AccidentalDrivingVo;
 import com.jzg.commons.entity.quote.vo.KindInfoVo;
 import com.jzg.commons.entity.quote.vo.QuoteVo;
+import com.jzg.commons.entity.quote.vo.RiskInfoVo;
 import com.jzg.quotation.commons.utils.DateUtil;
 import com.jzg.quotation.hengbang.crawler.entity.response.HbCrawlerRecordResponse;
 import lombok.Data;
@@ -80,6 +81,11 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
         List<KindInfoVo> kindInfoVoList = quoteVo.getKindInfoVo();
         this.risktype = "0";
         this.begintimeBi = DateUtil.toUtcDateTime(quoteVo.getCiRiskInfoVo().getStartDate());
+        if (Objects.nonNull(quoteVo.getCiRiskInfoVo())) {
+            this.begintimeCi = DateUtil.toUtcDateTime(quoteVo.getCiRiskInfoVo().getStartDate());
+            this.begintimeAccident = DateUtil.toUtcDateTime(quoteVo.getCiRiskInfoVo().getStartDate());
+            this.risktype = "1";
+        }
         if (CollUtil.isNotEmpty(kindInfoVoList)) {
             this.epersonliabilityList = getEpersonliabilityList(kindInfoVoList);
             this.begintimeBi = DateUtil.toUtcDateTime(quoteVo.getBiRiskInfoVo().getStartDate());
@@ -89,11 +95,6 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
 //            this.begintimeBi = DateUtil.toUtcDateTime(quoteVo.getCiRiskInfoVo().getStartDate());
             this.epersonliabilityList = new ArrayList<>();
         }
-        if (Objects.nonNull(quoteVo.getCiRiskInfoVo())) {
-            this.begintimeCi = DateUtil.toUtcDateTime(quoteVo.getCiRiskInfoVo().getStartDate());
-            this.begintimeAccident = DateUtil.toUtcDateTime(quoteVo.getCiRiskInfoVo().getStartDate());
-            this.risktype = "1";
-        }
         this.plyappno = plyappno;
         this.ecarshiptaxPart = "投保人";
         this.taxonomyCode = "02";
@@ -101,11 +102,11 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
         this.endtimeBi = "";
         this.endtimeCi = "";
         this.expdisc = "";
-        this.accidentEpolicyFlag = "";
+        this.accidentEpolicyFlag = "Y";
         this.effectfLag = null;
         this.ecarChargingPosts = new ArrayList<>();
         this.carInsureDevices = new ArrayList<>();
-        this.accidentInsuranceList = getAccidentInsuranceList(quoteVo.getAccidentalDrivings());
+        this.accidentInsuranceList = getAccidentInsuranceList(quoteVo.getBiRiskInfoVo(), quoteVo.getAccidentalDrivings());
     }
 
     public List<EpersonliabilityDTO> getEpersonliabilityList(List<KindInfoVo> kindInfoVoList) {
@@ -122,31 +123,36 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
         return epersonliabilityDTOList;
     }
 
-    public List<AccidentInsuranceDTO> getAccidentInsuranceList(List<AccidentalDrivingVo> accidentalDrivings) {
+    public List<AccidentInsuranceDTO> getAccidentInsuranceList(RiskInfoVo biRiskInfoVo, List<AccidentalDrivingVo> accidentalDrivings) {
         if (accidentalDrivings == null || accidentalDrivings.isEmpty()) {
             return new ArrayList<>();
         }
         List<AccidentInsuranceDTO> accidentInsuranceList = new ArrayList<>();
         for (AccidentalDrivingVo vo : accidentalDrivings) {
-            accidentInsuranceList.add(convertToAccidentInsuranceDTO(vo));
+            accidentInsuranceList.add(convertToAccidentInsuranceDTO(biRiskInfoVo, vo));
         }
         return accidentInsuranceList;
     }
 
-    public static AccidentInsuranceDTO convertToAccidentInsuranceDTO(AccidentalDrivingVo vo) {
+    public static AccidentInsuranceDTO convertToAccidentInsuranceDTO(RiskInfoVo biRiskInfoVo, AccidentalDrivingVo vo) {
         AccidentInsuranceDTO dto = new AccidentInsuranceDTO();
         dto.setNonriskcode(vo.getProductCode().split("_")[1]);
         dto.setProgramcode(vo.getProductCode());
         dto.setProgramname(vo.getProductName());
+        dto.setBegintime(DateUtil.toUtcDateTime(biRiskInfoVo.getStartDate()));
+        dto.setEndtime(DateUtil.toUtcDateTime(biRiskInfoVo.getEndDate()));
         dto.setCompanycode("0107");
-        dto.setSuminsured(vo.getSumAmount());
-        dto.setSumgrosspremium(vo.getSumPremium());
+        dto.setRelationcarowner("a");
+        dto.setSuminsured("525000");
+        dto.setSumgrosspremium(vo.getPremium());
         dto.setIfdefault(true);
         dto.setBuynum(vo.getQuantity());
         dto.setGgriskprogramclauselist(getGgriskprogramclauseList(vo.getProductCode().split("_")[1], vo.getProductCode()));
         dto.setGgriskprogramdetailslist(getGgriskprogramdetailsList(vo.getProductCode().split("_")[1], vo.getProductCode()));
         dto.setGgriskprogramdeductiblelist(new ArrayList<>());
-        dto.setGgriskprogramparamlist(new ArrayList<>());
+        List<GgriskprogramparamlDTO> ggriskprogramparamlist = new ArrayList<>();
+        ggriskprogramparamlist.add(new GgriskprogramparamlDTO("2021-05-19T07:00:00.000+0000", "subsidy", "99.9", "0107_1119_003", "2021-05-19T07:00:00.000+0000", "1"));
+        dto.setGgriskprogramparamlist(ggriskprogramparamlist);
         return dto;
     }
 
@@ -219,10 +225,10 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
         detail1.setSerialno(1);
         detail1.setKindcode("1119066");
         detail1.setKindname("机动车辆驾乘意外伤害保险意外身故保险责任(2024款)");
-        detail1.setKindrate("0.225");
-        detail1.setKindunitinsured("30000");
-        detail1.setKindsuminsured("240000");
-        detail1.setKindunitpremium("6.75");
+        detail1.setKindrate("0.098");
+        detail1.setKindunitinsured("50000");
+        detail1.setKindsuminsured("250000");
+        detail1.setKindunitpremium("4.9");
         detail1.setKindgrosspremium("54");
         list.add(detail1);
 
@@ -322,13 +328,13 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
         private List<GgriskprogramclauseDTO> ggriskprogramclauselist;
         private List<Object> ggriskprogramdeductiblelist;
         private List<GgriskprogramdetailsDTO> ggriskprogramdetailslist;
-        private List<Object> ggriskprogramparamlist;
+        private List<GgriskprogramparamlDTO> ggriskprogramparamlist;
         private String familyinsureitem;
         private String gasinsureitem;
         private String risk1205field;
         private String risk1283items;
         private String drivingtype;
-        private String relationcarowner;
+        private String relationcarowner = "a";
     }
 
     @Data
@@ -347,6 +353,28 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
         private String serialno;
     }
 
+    @Data
+    public static class GgriskprogramparamlDTO implements Serializable {
+        @Serial
+        private static final long serialVersionUID = -9183755801236888529L;
+
+        private String createtime;
+        private String paramname;
+        private String paramvalue;
+        private String programcode;
+        private String updatetime;
+        private String validind;
+
+        public GgriskprogramparamlDTO(String createtime, String paramname, String paramvalue, String programcode, String updatetime, String validind) {
+            this.createtime = createtime;
+            this.updatetime = updatetime;
+            this.paramname = paramname;
+            this.paramvalue = paramvalue;
+            this.programcode = programcode;
+            this.validind = validind;
+        }
+    }
+
     @Data
     public static class GgriskprogramdetailsDTO implements Serializable {
         @Serial

+ 4 - 15
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/entity/response/HbCrawlerRecordResponse.java

@@ -21,16 +21,6 @@ public class HbCrawlerRecordResponse extends HbBaseResponse {
     @Serial
     private static final long serialVersionUID = 7654321987612345678L;
 
-    /**
-     * 投保单号
-     */
-    private String plyappno;
-
-    /**
-     * 交强险验证码图片(base64)
-     */
-    private String checkcodeJqImg;
-
     /**
      * 商业险投保单号
      */
@@ -51,14 +41,13 @@ public class HbCrawlerRecordResponse extends HbBaseResponse {
      */
     private String checktypeSy;
 
-    /**
-     * 商业险验证码图片(base64)
-     */
-    private String checkcodeSyImg;
-
     /**
      * 交强险验证码
      */
     private String checkcodeJq;
 
+    /**
+     * 商业险验证码
+     */
+    private String checkcodeSy;
 }

+ 15 - 17
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/service/Impl/HengBangCrawlerRequestImpl.java

@@ -84,7 +84,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
     }
 
     @Override
-  public boolean detectLogin(DetectLoginRequest detectLoginRequest) {
+    public boolean detectLogin(DetectLoginRequest detectLoginRequest) {
         String username = detectLoginRequest.getUsername();
         String password = detectLoginRequest.getPassword();
         String authorization = hbCrawlerRequestComponent.getAuthorization(username);
@@ -151,19 +151,6 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         HbCrawlerProposalResponse proposalResponse = null;
         // 脱保情况 重新赋值核心建议起保时间 二次报价
         if (errorMsg.contains("脱保")) {
-            calculationRequest.setOutofwarrantytype("N");
-            resJson = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
-            errorMsg = JSONObject.parseObject(resJson).getString("message");
-            status = JSONObject.parseObject(resJson).getString("status");
-        }
-
-        if (errorMsg.contains("该车是转保车,请输入对应的转保验证码")) {
-            JSONObject resJsonObj = JSONObject.parseObject(resJson);
-            String responseBody = resJsonObj.getString("responseBody");
-            HbCrawlerRecordResponse recordResponse = JSONObject.parseObject(responseBody, HbCrawlerRecordResponse.class);
-            calculationRequest.setOutofwarrantytype("N");
-            calculationRequest.setTransferVehicle(recordResponse);
-
             resJson = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
             errorMsg = JSONObject.parseObject(resJson).getString("message");
             status = JSONObject.parseObject(resJson).getString("status");
@@ -181,10 +168,21 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
             status = JSONObject.parseObject(resJson).getString("status");
         }
 
+        if (errorMsg.contains("该车是转保车,请输入对应的转保验证码")) {
+            JSONObject resJsonObj = JSONObject.parseObject(resJson);
+            String responseBody = resJsonObj.getString("responseBody");
+            HbCrawlerRecordResponse recordResponse = JSONObject.parseObject(responseBody, HbCrawlerRecordResponse.class);
+            calculationRequest.setTransferVehicle(recordResponse);
+
+            resJson = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
+            errorMsg = JSONObject.parseObject(resJson).getString("message");
+            status = JSONObject.parseObject(resJson).getString("status");
+        }
+
         if (errorMsg.equals("成功")) {
             errorMsg = "成功";
             // 5.2 报价第三步,获取报价数据
-            proposalResponse = hbCrawlerRequestComponent.proposal(plyappno, headers);
+            proposalResponse = hbCrawlerRequestComponent.carInsureItem(plyappno, headers);
             HbCrawlerOrder hbCrawlerOrder = new HbCrawlerOrder();
             hbCrawlerOrder.setOrdersNo(quoteVo.getOrder().getOrdersNo());
             hbCrawlerOrder.setPlyappno(plyappno);
@@ -217,7 +215,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         List<HbCrawlerCalculationRequest.AccidentInsuranceDTO> accidentList = new ArrayList<>();
         quoteVo.getAccidentalDrivings().stream()
                 .filter(e -> StrUtil.isNotEmpty(e.getProductCode()))
-                .forEach(e -> accidentList.add(HbCrawlerCalculationRequest.convertToAccidentInsuranceDTO(e)));
+                .forEach(e -> accidentList.add(HbCrawlerCalculationRequest.convertToAccidentInsuranceDTO(quoteVo.getBiRiskInfoVo(), e)));
         calculationRequest.setAccidentInsuranceList(accidentList);
     }
 
@@ -373,7 +371,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
                     String base64Str = imageDTO.getImageBase64Str();
                     if (base64Str.startsWith("http")) {
                         SysUploadFiles uploadFile = platformClient.getUploadFile(imageDTO.getImageId());
-                        base64Str =  minioUtils.getBase64Str(uploadFile.getBucketName(), uploadFile.getFileName());
+                        base64Str = minioUtils.getBase64Str(uploadFile.getBucketName(), uploadFile.getFileName());
                     }
                     fileBuff.add("data:image/jpeg;base64," + base64Str);
                     if (InsuranceImageEnum.C02.getCode().equals(insuranceImageVo.getImageCode())) {

Разница между файлами не показана из-за своего большого размера
+ 3 - 3
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/utils/HengBangAESUtil.java


+ 2 - 2
tenant/insurance/quotation-zhongan/pom.xml

@@ -53,8 +53,8 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <configuration>
-                    <source>14</source>
-                    <target>14</target>
+                    <source>15</source>
+                    <target>15</target>
                 </configuration>
             </plugin>
         </plugins>

Некоторые файлы не были показаны из-за большого количества измененных файлов