Quellcode durchsuchen

代码合并解决冲突

lipf vor 4 Monaten
Ursprung
Commit
8f3f5a0c8a

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

@@ -296,7 +296,7 @@ public class HengBangCrawlerRequestComponent {
             HbCrawlerSaleInfoResponse response = requestComponent.toStringPost(RequestUrl.CALCULATION.getRequestUrl(hbCrawlerProperties.getBaseUrl()), req, RequestUrl.CALCULATION.getRequestDescription(),HbCrawlerSaleInfoResponse.class, headers);
             System.out.println(HengBangAESUtil.decryptStr(response.getHbEncD()));
             String resJson = HengBangAESUtil.decryptStr(response.getHbEncD());
-            return JSONObject.parseObject(resJson).getString("message");
+            return resJson;
         } catch (WebClientResponseException e) {
             if(e.getStatusCode().equals(HttpStatusCode.valueOf(500))){
                 return JSONObject.parseObject(e.getMessage()).getString("detail");
@@ -329,6 +329,7 @@ public class HengBangCrawlerRequestComponent {
         HbCrawlerSaleInfoResponse response = requestComponent.get(RequestUrl.PROPOSAL.getRequestUrl(hbCrawlerProperties.getBaseUrl()), params, RequestUrl.PROPOSAL.getRequestDescription(), HbCrawlerSaleInfoResponse.class, headers);
         try {
             String resJson = HengBangAESUtil.decryptStr(response.getHbEncD());
+            System.out.println(resJson);
             HbCrawlerProposalResponse proposalResponse = JSONObject.parseObject(resJson).toJavaObject(HbCrawlerProposalResponse.class);
             return proposalResponse;
         } catch (Exception e) {

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

@@ -38,8 +38,7 @@ public enum RequestUrl implements CrawlerRequestUrlStandard {
     GET_POLICY("/interflow/api/policy-archive-list", "获取保单信息"),
     DOWNLOAD_POLICY("/interflow/api/sftp/v3/download/policy/", "下载保单"),
 
-    LAST_ACCIDENT("/new-insure/api/carinsurenew/lastAccident?plyAppNo=", "非车列表")
-    ;
+    LAST_ACCIDENT("/new-insure/api/carinsurenew/lastAccident?plyappno=", "非车列表");
 
     private final String url;
     private final String description;

+ 2 - 0
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.KindInfoVo;
 import com.jzg.commons.entity.quote.vo.QuoteVo;
 import com.jzg.quotation.commons.utils.DateUtil;
+import com.jzg.quotation.hengbang.crawler.entity.response.HbCrawlerRecordResponse;
 import lombok.Data;
 
 import java.io.Serial;
@@ -136,6 +137,7 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest{
     private String accidentEpolicyFlag;
     private String begintimeAccident;
     private String endtimeAccident;
+    private HbCrawlerRecordResponse transferVehicle;
 
     @Data
     public static class EpersonliabilityDTO implements Serializable {

+ 9 - 1
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/entity/request/HbCrawlerQuoteimmediatelyRequest.java

@@ -80,6 +80,9 @@ public class HbCrawlerQuoteimmediatelyRequest extends HbBaseRequest {
         carInsureItemDTO.setSpecialCarFlag("1");
         carInsureItemDTO.setTotalTonCount("0.00");
         carInsureItemDTO.setNoticeType(contentDTO.getNoticeType());
+        carInsureItemDTO.setCarKindShow("81");
+        carInsureItemDTO.setCountrynature("");
+        carInsureItemDTO.setCarColor("01");
         this.carInsureItem = carInsureItemDTO;
         //设置被保人
         CarInsureRiskRelatedPartyDTO riskRelatedPartyDTO = new CarInsureRiskRelatedPartyDTO();
@@ -126,6 +129,7 @@ public class HbCrawlerQuoteimmediatelyRequest extends HbBaseRequest {
         carInsureRelatedPartyDTO.setCustomerType("00");
         carInsureRelatedPartyDTO.setVipInd("0");
         carInsureRelatedPartyDTO.setInvoiceRequest("05");
+        carInsureRelatedPartyDTO.setMoneyLaunderingInd("低风险");
         this.carInsureRelatedParty = carInsureRelatedPartyDTO;
         //设置归属数据
         CarInsureMainDTO carInsureMainDTO = new CarInsureMainDTO();
@@ -146,7 +150,7 @@ public class HbCrawlerQuoteimmediatelyRequest extends HbBaseRequest {
         carInsureMainDTO.setMobile(salesMan.getMobile());
         carInsureMainDTO.setSalesmanname(salesMan.getSalesmanname());
         carInsureMainDTO.setUsertype(salesMan.getUsertype());
-        carInsureMainDTO.setInvoiceRequest("05");
+        carInsureMainDTO.setInvoiceRequest("03");
         carInsureMainDTO.setOperatorCode(quoteVo.getOrder().getAttributionInformationVo().getUsername());
         carInsureMainDTO.setCreator(quoteVo.getOrder().getAttributionInformationVo().getUsername());
         carInsureMainDTO.setBusinessMode("2");
@@ -366,6 +370,10 @@ public class HbCrawlerQuoteimmediatelyRequest extends HbBaseRequest {
         private String carSequenceNo;
         private String styleUniqueId;
         private String noticeType;
+        /**
+         * 车辆颜色
+         */
+        private String carColor;
         /**
          * 车主姓名
          */

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

@@ -0,0 +1,64 @@
+package com.jzg.quotation.hengbang.crawler.entity.response;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+
+import java.io.Serial;
+
+/**
+ * @description: 恒邦财险 备案 返回参数
+ * @author: shenwd
+ * @date: 2025/4/22 10:30
+ **/
+@EqualsAndHashCode(callSuper = true)
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class HbCrawlerRecordResponse extends HbBaseResponse {
+
+    @Serial
+    private static final long serialVersionUID = 7654321987612345678L;
+
+    /**
+     * 投保单号
+     */
+    private String plyappno;
+
+    /**
+     * 交强险验证码图片(base64)
+     */
+    private String checkcodeJqImg;
+
+    /**
+     * 商业险投保单号
+     */
+    private String querynoSy;
+
+    /**
+     * 交强险投保单号
+     */
+    private String querynoJq;
+
+    /**
+     * 交强险验证码类型
+     */
+    private String checktypeJq;
+
+    /**
+     * 商业险验证码类型
+     */
+    private String checktypeSy;
+
+    /**
+     * 商业险验证码图片(base64)
+     */
+    private String checkcodeSyImg;
+
+    /**
+     * 交强险验证码
+     */
+    private String checkcodeJq;
+
+}

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

@@ -8,6 +8,7 @@ import cn.hutool.core.map.MapUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.crypto.digest.DigestUtil;
+import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.jzg.commons.constants.ProductsType;
 import com.jzg.commons.constants.dict.InsOrderStatusEnum;
@@ -64,6 +65,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
 
     /**
      * 登录
+     *
      * @param loginBase 登录信息
      */
     @Override
@@ -73,6 +75,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
 
     /**
      * 报价
+     *
      * @param quoteVo 报价实体
      * @return 报价信息
      */
@@ -90,7 +93,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         CarInfoVo carInfoVo = quoteVo.getCarInfoVo();
         // 2.2 获取行业车型信息
         HbCrawlerQueryCarInfoRequest queryCarInfoRequest = new HbCrawlerQueryCarInfoRequest(carInfoVo, userInfoResponse);
-        HbCrawlerQueryCarRequest.CbitDataDTO cbitDataDTO = hbCrawlerRequestComponent.queryCarInfo(queryCarInfoRequest,headers);
+        HbCrawlerQueryCarRequest.CbitDataDTO cbitDataDTO = hbCrawlerRequestComponent.queryCarInfo(queryCarInfoRequest, headers);
         // 2.3 车型查询
         HbCrawlerQueryCarRequest hbCrawlerQueryCarRequest = new HbCrawlerQueryCarRequest(cbitDataDTO);
         List<HbCrawlerQueryCarResponse.ContentDTO> contentDTOS = hbCrawlerRequestComponent.queryCar(hbCrawlerQueryCarRequest, headers);
@@ -106,7 +109,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
             throw new SystemException(e.getMessage());
         }
         // 4.0 获取折旧价
-        HbCrawlerDepreciationRequest depreciationRequest = new HbCrawlerDepreciationRequest(quoteVo,contentDTO);
+        HbCrawlerDepreciationRequest depreciationRequest = new HbCrawlerDepreciationRequest(quoteVo, contentDTO);
         String depreciationPrice = hbCrawlerRequestComponent.getDepreciationPrice(depreciationRequest, headers);
 
         // 5.0 报价第一步,提交基础数据,返回订单号
@@ -116,22 +119,45 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         HbCrawlerCalculationRequest calculationRequest = new HbCrawlerCalculationRequest(quoteVo, plyappno);
         // 非车信息匹配核心
         matchingAccident(quoteVo, headers, plyappno, calculationRequest);
-        String calculationResult = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
+        String resJson = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
+        String errorMsg = JSONObject.parseObject(resJson).getString("message");
+        String status = JSONObject.parseObject(resJson).getString("status");
+
         HbCrawlerProposalResponse proposalResponse = null;
         // 脱保情况 重新赋值核心建议起保时间 二次报价
-        if(calculationResult.contains("脱保")){
+        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");
-            calculationResult = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
-        // 重复投保 重新赋值核心建议起保时间 二次报价
-        } else if(calculationResult.contains("重复投保")){
-            String time = extractDuplicateEndTime(calculationResult);
+            calculationRequest.setTransferVehicle(recordResponse);
+
+            resJson = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
+            errorMsg = JSONObject.parseObject(resJson).getString("message");
+            status = JSONObject.parseObject(resJson).getString("status");
+        }
+
+        if (errorMsg.contains("重复投保")) {
+            String time = extractDuplicateEndTime(errorMsg);
             if (time != null) {
                 calculationRequest.setBegintimeCi(time);
                 calculationRequest.setBegintimeBi(time);
             }
-            calculationResult = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
+
+            resJson = hbCrawlerRequestComponent.getCalculationResult(calculationRequest, headers);
+            errorMsg = JSONObject.parseObject(resJson).getString("message");
+            status = JSONObject.parseObject(resJson).getString("status");
         }
-        if(calculationResult.equals("成功")){
+
+        if (errorMsg.equals("成功") || status.equals("9")) {
+            errorMsg = "成功";
             // 5.2 报价第三步,获取报价数据
             proposalResponse = hbCrawlerRequestComponent.proposal(plyappno, headers);
             HbCrawlerOrder hbCrawlerOrder = new HbCrawlerOrder();
@@ -139,18 +165,18 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
             hbCrawlerOrder.setPlyappno(plyappno);
             hbCrawlerOrderService.save(hbCrawlerOrder);
         }
-        return HbCrawlerQuoteResultVoBuild.build(quoteVo, proposalResponse, calculationResult);
+        return HbCrawlerQuoteResultVoBuild.build(quoteVo, proposalResponse, errorMsg);
     }
 
     /**
      * 注释
+     *
      * @param quoteVo
      * @param headers
      * @param plyappno
      * @param calculationRequest
      */
-    private void matchingAccident(final QuoteVo quoteVo, final HttpHeaders headers,
-                           final String plyappno, final HbCrawlerCalculationRequest calculationRequest) {
+    private void matchingAccident(final QuoteVo quoteVo, final HttpHeaders headers, final String plyappno, final HbCrawlerCalculationRequest calculationRequest) {
         if (quoteVo.getAccidentalDrivings() == null) {
             return;
         }
@@ -164,17 +190,16 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         });
 
         List<Object> accidnentList = new ArrayList<>();
-        quoteVo.getAccidentalDrivings().stream()
-                .filter(e -> StrUtil.isNotEmpty(e.getProductCode()))
-                .filter(e -> ObjectUtil.isNull(contentMap.get(e.getProductCode().trim())))
-                .forEach(accidnentList::add);
+        quoteVo.getAccidentalDrivings().stream().filter(e -> StrUtil.isNotEmpty(e.getProductCode())).filter(e -> ObjectUtil.isNull(contentMap.get(e.getProductCode().trim()))).forEach(accidnentList::add);
         calculationRequest.setAccidentInsuranceList(accidnentList);
     }
 
     // 重复投保提取时间
     private static final Pattern DUPLICATE_END_TIME_PATTERN = Pattern.compile("终保日期 (\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2})");
+
     /**
      * 提取系统自动分配的起保时间
+     *
      * @param calculationResult 核心提示
      * @return 提取到的时间字符串,未提取到返回 null
      */
@@ -187,9 +212,19 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         return null;
     }
 
+    /**
+     * 获取当前时间2小时以后的时间
+     *
+     * @return 2小时后的时间字符串,格式为 yyyy-MM-dd HH:mm:ss
+     */
+    private String getTimeTwoHoursLater() {
+        return LocalDateTime.now().plusHours(2).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
+    }
+
 
     /**
      * 提交核保 子订单
+     *
      * @param underwritingVo
      */
     @Override
@@ -199,38 +234,38 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         HbCrawlerOrder hbCrawlerOrder = hbCrawlerOrderService.findByOrdersNo(underwritingVo.getOrder().getOrdersNo());
         String productCode = underwritingVo.getInsOrders().getProductId();
         List<Map<String, String>> paramList = new ArrayList<>();
-        if(productCode.equals(ProductsType.PT_0330.getCode())){
+        if (productCode.equals(ProductsType.PT_0330.getCode())) {
             Map<String, String> params = new HashMap<>();
-            params.put("clauseCode","T001_1");
-            params.put("clauseContext","为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
-            params.put("clauseName","第一现场报案");
-            params.put("riskCode","0801");
+            params.put("clauseCode", "T001_1");
+            params.put("clauseContext", "为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
+            params.put("clauseName", "第一现场报案");
+            params.put("riskCode", "0801");
             paramList.add(params);
-        } else if(productCode.equals(ProductsType.PT_034001.getCode())){
+        } else if (productCode.equals(ProductsType.PT_034001.getCode())) {
             Map<String, String> params = new HashMap<>();
-            params.put("clauseCode","T001_1");
-            params.put("clauseContext","为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
-            params.put("clauseName","第一现场报案");
-            params.put("riskCode","0808");
+            params.put("clauseCode", "T001_1");
+            params.put("clauseContext", "为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
+            params.put("clauseName", "第一现场报案");
+            params.put("riskCode", "0808");
             paramList.add(params);
-        } else{
+        } else {
             Map<String, String> params1 = new HashMap<>();
-            params1.put("clauseCode","T001_1");
-            params1.put("clauseContext","为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
-            params1.put("clauseName","第一现场报案");
-            params1.put("riskCode","0801");
+            params1.put("clauseCode", "T001_1");
+            params1.put("clauseContext", "为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
+            params1.put("clauseName", "第一现场报案");
+            params1.put("riskCode", "0801");
             paramList.add(params1);
             Map<String, String> params2 = new HashMap<>();
-            params2.put("clauseCode","T001_1");
-            params2.put("clauseContext","为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
-            params2.put("clauseName","第一现场报案");
-            params2.put("riskCode","0808");
+            params2.put("clauseCode", "T001_1");
+            params2.put("clauseContext", "为更好地保障您的权益,请您在发生保险事故后保留出险第一现场,并立即致电24小时服务电话:956079。");
+            params2.put("clauseName", "第一现场报案");
+            params2.put("riskCode", "0808");
             paramList.add(params2);
         }
         UnderwritingResultsVo underwritingResultsVo = new UnderwritingResultsVo();
 
-        String message = hbCrawlerRequestComponent.coreProposal(hbCrawlerOrder.getPlyappno(), headers,paramList);
-        if("成功".equals(message)){
+        String message = hbCrawlerRequestComponent.coreProposal(hbCrawlerOrder.getPlyappno(), headers, paramList);
+        if ("成功".equals(message)) {
             // 获取核保信息
             HbCrawlerCoreProposalResponse response = hbCrawlerRequestComponent.coreProposalResult(hbCrawlerOrder.getPlyappno(), headers);
             hbCrawlerOrder.setCiProposalNo(response.getEfcProposalNo());
@@ -238,7 +273,12 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
             hbCrawlerOrderService.update(hbCrawlerOrder);
             underwritingResultsVo.setJyApplyNo(response.getEfcProposalNo());
             underwritingResultsVo.setSyApplyNo(response.getBizProposalNo());
-            underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
+            if (response.getStatus().equals("2")) {
+                underwritingResultsVo.setUnderwritingResult("核保失败:" + response.getDesCription());
+                underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.AUDIT_FAIL);
+            } else {
+                underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
+            }
             return underwritingResultsVo;
         } else {
             underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.AUDIT_FAIL);
@@ -249,6 +289,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
 
     /**
      * 获取支付链接
+     *
      * @param paymentLinkVo
      */
     @Override
@@ -267,27 +308,20 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
 
     /**
      * 上传影像
+     *
      * @param insuranceUploadImageVo
      */
     @Override
     public void uploadImage(InsuranceUploadImageVo insuranceUploadImageVo) {
-        AttributionInformationVo attributionInformationVo = insuranceUploadImageVo.getOrder()
-                .getAttributionInformationVo();
+        AttributionInformationVo attributionInformationVo = insuranceUploadImageVo.getOrder().getAttributionInformationVo();
         HttpHeaders headers = hbCrawlerRequestComponent.getHeaders(attributionInformationVo.getUsername(), attributionInformationVo.getPassword());
-        HbCrawlerOrder hbCrawlerOrder = hbCrawlerOrderService.findByOrdersNo(insuranceUploadImageVo.getOrder()
-                .getOrdersNo());
+        HbCrawlerOrder hbCrawlerOrder = hbCrawlerOrderService.findByOrdersNo(insuranceUploadImageVo.getOrder().getOrdersNo());
 
         // 获取车主/投保人/被保人信息
         List<InsOrdersCarUserInfo> userInfos = insuranceUploadImageVo.getInsOrdersCarUserInfoList();
-        InsOrdersCarUserInfo ownerInfo = userInfos.stream()
-                .filter(insOrdersCarUserInfo -> insOrdersCarUserInfo.getPolicyPersonType().equals(1))
-                .findFirst().orElse(null);
-        InsOrdersCarUserInfo policyHolderInfo = userInfos.stream()
-                .filter(insOrdersCarUserInfo -> insOrdersCarUserInfo.getPolicyPersonType().equals(2))
-                .findFirst().orElse(null);
-        InsOrdersCarUserInfo insuredHolder = userInfos.stream()
-                .filter(insOrdersCarUserInfo -> insOrdersCarUserInfo.getPolicyPersonType().equals(3))
-                .findFirst().orElse(null);
+        InsOrdersCarUserInfo ownerInfo = userInfos.stream().filter(insOrdersCarUserInfo -> insOrdersCarUserInfo.getPolicyPersonType().equals(1)).findFirst().orElse(null);
+        InsOrdersCarUserInfo policyHolderInfo = userInfos.stream().filter(insOrdersCarUserInfo -> insOrdersCarUserInfo.getPolicyPersonType().equals(2)).findFirst().orElse(null);
+        InsOrdersCarUserInfo insuredHolder = userInfos.stream().filter(insOrdersCarUserInfo -> insOrdersCarUserInfo.getPolicyPersonType().equals(3)).findFirst().orElse(null);
         CarInfoVo carInfo = insuranceUploadImageVo.getCarInfo();
         //暂时将图片默认为01,06,09,投保业务-旧车-其他资料
         Integer fileNum = 0;
@@ -301,9 +335,9 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         if (CollUtil.isNotEmpty(imageVoList)) {
             for (InsuranceImageVo insuranceImageVo : imageVoList) {
                 List<InsuranceImageVo.ImageDTO> imageBase64List = insuranceImageVo.getImageBase64List();
-                if(CollUtil.isNotEmpty(imageBase64List)){
+                if (CollUtil.isNotEmpty(imageBase64List)) {
                     fileBuff.add("data:image/jpeg;base64," + imageBase64List.get(0).getImageBase64Str());
-                    if(InsuranceImageEnum.C02.getCode().equals(insuranceImageVo.getImageCode())){
+                    if (InsuranceImageEnum.C02.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,03,投保业务-旧车-证件");
                         mark3.add("6");
                         HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO extArrDTO = new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO();
@@ -311,7 +345,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
                         extArrDTO.setName(ownerInfo.getName());
                         extArrDTO.setId_number(ownerInfo.getIdentifyNumber());
                         extArrDTOS.add(extArrDTO);
-                    } else if(InsuranceImageEnum.C01.getCode().equals(insuranceImageVo.getImageCode())){
+                    } else if (InsuranceImageEnum.C01.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,02,投保业务-旧车-行驶证");
                         mark3.add("8");
                         HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO extArrDTO = new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO();
@@ -323,15 +357,15 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
                         extArrDTO.setIssue_date(carInfo.getIssueDate());
                         extArrDTO.setRegister_date(carInfo.getRegisterDate());
                         extArrDTOS.add(extArrDTO);
-                    } else if(InsuranceImageEnum.D02.getCode().equals(insuranceImageVo.getImageCode())){
+                    } else if (InsuranceImageEnum.D02.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,03,投保业务-旧车-证件");
                         mark3.add("7");
                         extArrDTOS.add(new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO());
-                    } else if(InsuranceImageEnum.D01.getCode().equals(insuranceImageVo.getImageCode())){
+                    } else if (InsuranceImageEnum.D01.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,02,投保业务-旧车-行驶证");
                         mark3.add("9");
                         extArrDTOS.add(new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO());
-                    } else if(InsuranceImageEnum.C03.getCode().equals(insuranceImageVo.getImageCode())){
+                    } else if (InsuranceImageEnum.C03.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,03,投保业务-旧车-证件");
                         mark3.add("11");
                         HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO extArrDTO = new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO();
@@ -339,7 +373,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
                         extArrDTO.setName(policyHolderInfo.getName());
                         extArrDTO.setId_number(policyHolderInfo.getIdentifyNumber());
                         extArrDTOS.add(extArrDTO);
-                    } else if(InsuranceImageEnum.D03.getCode().equals(insuranceImageVo.getImageCode())){
+                    } else if (InsuranceImageEnum.D03.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,03,投保业务-旧车-证件");
                         mark3.add("12");
                         HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO extArrDTO = new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO();
@@ -347,7 +381,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
                         extArrDTO.setName(policyHolderInfo.getName());
                         extArrDTO.setId_number(policyHolderInfo.getIdentifyNumber());
                         extArrDTOS.add(extArrDTO);
-                    } else if(InsuranceImageEnum.C04.getCode().equals(insuranceImageVo.getImageCode())){
+                    } else if (InsuranceImageEnum.C04.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,03,投保业务-旧车-证件");
                         mark3.add("13");
                         HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO extArrDTO = new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO();
@@ -355,7 +389,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
                         extArrDTO.setName(insuredHolder.getName());
                         extArrDTO.setId_number(insuredHolder.getIdentifyNumber());
                         extArrDTOS.add(extArrDTO);
-                    } else if(InsuranceImageEnum.D04.getCode().equals(insuranceImageVo.getImageCode())){
+                    } else if (InsuranceImageEnum.D04.getCode().equals(insuranceImageVo.getImageCode())) {
                         fileType.add("01,06,03,投保业务-旧车-证件");
                         mark3.add("14");
                         HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO extArrDTO = new HbCrawlerFileUploadRequest.ExtJsonDTO.ExtArrDTO();
@@ -378,12 +412,12 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
 
     /**
      * 下载保单
-     * @param downloadPolicyVo
-     * sign参数:
-     * 商业险:下载日期+policy+syx+H070104080820210005632   md5加密
-     * 交强先:下载日期+policy+jqx+H070104080820210005632   md5加密
-     * 示例:20250414policysyxH070104080820210005632
-     * https://car.hbins.com.cn/interflow/api/sftp/v3/download/policy/syx/H070104080820210005632?sign=c03d2c533722ff8c3d722d35664e9fa1
+     *
+     * @param downloadPolicyVo sign参数:
+     *                         商业险:下载日期+policy+syx+H070104080820210005632   md5加密
+     *                         交强先:下载日期+policy+jqx+H070104080820210005632   md5加密
+     *                         示例:20250414policysyxH070104080820210005632
+     *                         https://car.hbins.com.cn/interflow/api/sftp/v3/download/policy/syx/H070104080820210005632?sign=c03d2c533722ff8c3d722d35664e9fa1
      */
     @Override
     public DownloadPolicyResultVo downloadPolicy(DownloadPolicyVo downloadPolicyVo) {
@@ -396,18 +430,13 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
         getPolicyRequest.setCarMark(parameters.getLicenseNo());
         HbCrawlerGetPolicyResponse policyResponse = hbCrawlerRequestComponent.getPolicy(getPolicyRequest, headers);
         List<String> downloadUrls = new ArrayList<>();
-        List<HbCrawlerGetPolicyResponse.ResponseBodyDTO.ContentDTO> contentDTOList = policyResponse.getResponseBody()
-                .getContent();
+        List<HbCrawlerGetPolicyResponse.ResponseBodyDTO.ContentDTO> contentDTOList = policyResponse.getResponseBody().getContent();
         if (contentDTOList != null && !contentDTOList.isEmpty()) {
             contentDTOList.forEach(contentDTO -> {
                 //获取参数sign的值
                 String sign = getSign(contentDTO.getPOLICY_CATEGORY(), contentDTO.getBUSINESS_NO());
                 StringBuilder downloadUrl = new StringBuilder(RequestUrl.DOWNLOAD_POLICY.getRequestUrl(hbCrawlerProperties.getBaseUrl()));
-                downloadUrl.append(contentDTO.getPOLICY_CATEGORY())
-                        .append("/")
-                        .append(contentDTO.getBUSINESS_NO())
-                        .append("?sign=")
-                        .append(sign);
+                downloadUrl.append(contentDTO.getPOLICY_CATEGORY()).append("/").append(contentDTO.getBUSINESS_NO()).append("?sign=").append(sign);
                 downloadUrls.add(downloadUrl.toString());
             });
         }
@@ -416,6 +445,7 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
 
     /**
      * 获取sign参数
+     *
      * @param riskType
      * @param businessNo
      * @return
@@ -428,8 +458,8 @@ public class HengBangCrawlerRequestImpl implements HengBangCrawlerRequest {
 
     /**
      * 查询订单状态
-     * @param orderStatusVo
-     * 恒邦订单状态代码:待提核:-1;审核通过:1,3,5;下发修改:2;拒保:4;承保确认:6;初始状态:0
+     *
+     * @param orderStatusVo 恒邦订单状态代码:待提核:-1;审核通过:1,3,5;下发修改:2;拒保:4;承保确认:6;初始状态:0
      */
     @Override
     public OrderStatusResultVo queryOrderState(OrderStatusVo orderStatusVo) {

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
tenant/insurance/quotation-hengbang/src/main/java/com/jzg/quotation/hengbang/crawler/utils/HengBangAESUtil.java


+ 2 - 2
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/aop/FactorMatch.java

@@ -140,9 +140,9 @@ public class FactorMatch {
                         .toList();
 
                 if (ptlAgreementProductCostsAttrLink.getMin() != null) {
-                    logs.append("检验的值:" + ptlAgreementProductCostsAttrLink.getMin() + "\n");
+                    logs.append("检验的值4:" + ptlAgreementProductCostsAttrLink.getMin() + "\n");
                 } else {
-                    logs.append("检验的值:" + ptlAgreementProductCostsAttrLink.getMax() + "\n");
+                    logs.append("检验的值5:" + ptlAgreementProductCostsAttrLink.getMax() + "\n");
                 }
 
                 logs.append("传入的值:" + ruleAttrMappingVo.getValue() + "\n");

+ 0 - 1
tenant/organization/src/main/java/com/jzg/organization/service/impl/SysUserJzgInfoSalesmanServiceImpl.java

@@ -39,7 +39,6 @@ public class SysUserJzgInfoSalesmanServiceImpl extends ServiceImpl<SysUserJzgInf
     public Map<String, String> queryAllTypeAttrMap() {
         List<SysUserJzgInfoSalesman> sysUserJzgInfoSalesmen = sysUserJzgInfoSalesmanMapper.selectList(null);
         log.info("查询出[{}]个人员的类型信息", CollectionUtil.size(sysUserJzgInfoSalesmen));
-        log.info("sysUserJzgInfoSalesmen=[{}]", JSONUtil.toJsonStr(sysUserJzgInfoSalesmen));
         Map<String, String> resultMap = sysUserJzgInfoSalesmen.stream()
                 .filter(action-> StrUtil.isNotEmpty(action.getSysUserJzgInfoId()) && StrUtil.isNotEmpty(action.getTypeAttr()))
                 .filter(action-> action.getSysUserJzgInfoId() != null && action.getTypeAttr() != null)

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.