Procházet zdrojové kódy

众安核保添加查询通融接口

Qchen před 2 měsíci
rodič
revize
d56437ad30

+ 1 - 1
tenant/insurance/quotation-zhongan/src/main/java/com/jzg/quotation/zhongan/crawler/component/ZhongAnCrawlerRequestComponent.java

@@ -286,6 +286,6 @@ public class ZhongAnCrawlerRequestComponent {
     public ZhongAnCrawlerQueryAccommodationResponse queryAccommodation(ZhongAnCrawlerQueryAccommodationRequest queryAccommodationRequest, HttpHeaders headers) {
     public ZhongAnCrawlerQueryAccommodationResponse queryAccommodation(ZhongAnCrawlerQueryAccommodationRequest queryAccommodationRequest, HttpHeaders headers) {
         InsuranceLog.infoLog(InsuranceEnum.ZAPA.getPinyin(), "\n\t---------> {} \n\t---------> URl: {} \n\t---------> 请求参数:{}",
         InsuranceLog.infoLog(InsuranceEnum.ZAPA.getPinyin(), "\n\t---------> {} \n\t---------> URl: {} \n\t---------> 请求参数:{}",
                 "众安爬虫订单提交通融接口",RequestUrl.QUERY_ACCOMMODATION.getRequestUrl(zhongAnCrawlerProperties.getBaseUrl()), JSON.toJSONString(queryAccommodationRequest));
                 "众安爬虫订单提交通融接口",RequestUrl.QUERY_ACCOMMODATION.getRequestUrl(zhongAnCrawlerProperties.getBaseUrl()), JSON.toJSONString(queryAccommodationRequest));
-        return requestComponent.formDataZhongAn(RequestUrl.QUERY_ACCOMMODATION.getRequestUrl(zhongAnCrawlerProperties.getBaseUrl()), queryAccommodationRequest,ZhongAnCrawlerQueryAccommodationResponse.class, headers, "订单查询通融原因").getBody();
+        return requestComponent.formDataZhongAn(RequestUrl.QUERY_ACCOMMODATION.getRequestUrl(zhongAnCrawlerProperties.getBaseUrl()), queryAccommodationRequest, ZhongAnCrawlerQueryAccommodationResponse.class, headers, "订单提交通融查询").getBody();
     }
     }
 }
 }

+ 1 - 1
tenant/insurance/quotation-zhongan/src/main/java/com/jzg/quotation/zhongan/crawler/entity/response/ZhongAnCrawlerQueryAccommodationResponse.java

@@ -199,7 +199,7 @@ public class ZhongAnCrawlerQueryAccommodationResponse {
                     private String materialUrl;
                     private String materialUrl;
 
 
                     @JsonProperty("errorCode")
                     @JsonProperty("errorCode")
-                    private String errorCode;
+                    private Object errorCode;
 
 
                     @JsonProperty("file")
                     @JsonProperty("file")
                     private Map<String, Object> file;
                     private Map<String, Object> file;

+ 23 - 15
tenant/insurance/quotation-zhongan/src/main/java/com/jzg/quotation/zhongan/crawler/service/Impl/ZhongAnCrawlerRequestImpl.java

@@ -3,6 +3,7 @@ package com.jzg.quotation.zhongan.crawler.service.Impl;
 import cn.hutool.cache.Cache;
 import cn.hutool.cache.Cache;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.google.common.cache.CacheBuilder;
 import com.google.common.cache.CacheBuilder;
 import com.jzg.commons.constants.dict.InsOrderStatusEnum;
 import com.jzg.commons.constants.dict.InsOrderStatusEnum;
@@ -50,10 +51,7 @@ import java.io.*;
 import java.nio.charset.StandardCharsets;
 import java.nio.charset.StandardCharsets;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.time.format.DateTimeFormatter;
-import java.util.Base64;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
@@ -243,7 +241,7 @@ public class ZhongAnCrawlerRequestImpl implements ZhongAnCrawlerRequest {
         ZhongAnCrawlerConfirmOrderResponse.ValueDTO.DataDTO dataDTO = confirmOrderResponse.getValue().getDatas();
         ZhongAnCrawlerConfirmOrderResponse.ValueDTO.DataDTO dataDTO = confirmOrderResponse.getValue().getDatas();
         zhongAnCrawlerCacheComponent.setCache(dataDTO.getOrderNo(), quoteVo.getOrder().getOrdersNo() + ZhongAnCrawlerCacheComponent.ORDER_NO);
         zhongAnCrawlerCacheComponent.setCache(dataDTO.getOrderNo(), quoteVo.getOrder().getOrdersNo() + ZhongAnCrawlerCacheComponent.ORDER_NO);
         zhongAnCrawlerCacheComponent.setCache(dataDTO.getPolicyId(), quoteVo.getOrder().getOrdersNo() + ZhongAnCrawlerCacheComponent.POLICY_ID);
         zhongAnCrawlerCacheComponent.setCache(dataDTO.getPolicyId(), quoteVo.getOrder().getOrdersNo() + ZhongAnCrawlerCacheComponent.POLICY_ID);
-
+        ZhongAnCrawlerOrder zhongAnCrawlerOrder = new ZhongAnCrawlerOrder();
         //非车险提交核保
         //非车险提交核保
         if (quoteVo.getAccidentalDrivings() != null && quoteVo.getAccidentalDrivings().size() > 0) {
         if (quoteVo.getAccidentalDrivings() != null && quoteVo.getAccidentalDrivings().size() > 0) {
             ZhongAnCrawlerJyxUnderwritingRequest jyxUnderwritingRequest = new ZhongAnCrawlerJyxUnderwritingRequest(parameters, getOrderResponse.getValue().getDatas().getQuoteId());
             ZhongAnCrawlerJyxUnderwritingRequest jyxUnderwritingRequest = new ZhongAnCrawlerJyxUnderwritingRequest(parameters, getOrderResponse.getValue().getDatas().getQuoteId());
@@ -252,9 +250,6 @@ public class ZhongAnCrawlerRequestImpl implements ZhongAnCrawlerRequest {
         ZhongAnCrawlerUploadInitDateRequest zhongAnCrawlerUploadInitDateRequest = new ZhongAnCrawlerUploadInitDateRequest(dataDTO, parameters);
         ZhongAnCrawlerUploadInitDateRequest zhongAnCrawlerUploadInitDateRequest = new ZhongAnCrawlerUploadInitDateRequest(dataDTO, parameters);
         ZhongAnCrawlerUploadInitDateResponse uploadInitDateResponse = zhongAnCrawlerRequestComponent.uploadInitData(zhongAnCrawlerUploadInitDateRequest, headers);
         ZhongAnCrawlerUploadInitDateResponse uploadInitDateResponse = zhongAnCrawlerRequestComponent.uploadInitData(zhongAnCrawlerUploadInitDateRequest, headers);
         zhongAnCrawlerCacheComponent.setCache(uploadInitDateResponse.getValue().getDatas(), quoteVo.getOrder().getOrdersNo() + ZhongAnCrawlerCacheComponent.INITDATE);
         zhongAnCrawlerCacheComponent.setCache(uploadInitDateResponse.getValue().getDatas(), quoteVo.getOrder().getOrdersNo() + ZhongAnCrawlerCacheComponent.INITDATE);
-
-
-        ZhongAnCrawlerOrder zhongAnCrawlerOrder = new ZhongAnCrawlerOrder();
         zhongAnCrawlerOrder.setOrdersNo(quoteVo.getOrder().getOrdersNo());
         zhongAnCrawlerOrder.setOrdersNo(quoteVo.getOrder().getOrdersNo());
         zhongAnCrawlerOrder.setOrderNo(dataDTO.getOrderNo());
         zhongAnCrawlerOrder.setOrderNo(dataDTO.getOrderNo());
         zhongAnCrawlerOrder.setPolicyId(dataDTO.getPolicyId());
         zhongAnCrawlerOrder.setPolicyId(dataDTO.getPolicyId());
@@ -342,14 +337,23 @@ public class ZhongAnCrawlerRequestImpl implements ZhongAnCrawlerRequest {
         PaymentLinkVo paymentLinkVo = new PaymentLinkVo();
         PaymentLinkVo paymentLinkVo = new PaymentLinkVo();
         paymentLinkVo.setOrder(underwritingVo.getOrder());
         paymentLinkVo.setOrder(underwritingVo.getOrder());
         PaymentLinkResultsVo paymentLinkResultsVo = getPaymentLink(paymentLinkVo);
         PaymentLinkResultsVo paymentLinkResultsVo = getPaymentLink(paymentLinkVo);
-
-
+        // 通融待审核查询
+        ZhongAnCrawlerQueryAccommodationRequest queryAccommodationRequest = new ZhongAnCrawlerQueryAccommodationRequest(zhongAnCrawlerOrder.getQuoteId(), parameters);
+        ZhongAnCrawlerQueryAccommodationResponse queryAccommodationResponse = zhongAnCrawlerRequestComponent.queryAccommodation(queryAccommodationRequest, headers);
         UnderwritingResultsVo underwritingResultsVo = new UnderwritingResultsVo();
         UnderwritingResultsVo underwritingResultsVo = new UnderwritingResultsVo();
+        if (queryAccommodationResponse.getValue().getDatas().getAccommodation().getErrorCode() != null) {
+            String errorCode = JSONObject.toJSONString(queryAccommodationResponse.getValue().getDatas().getAccommodation().getErrorCode());
+            //核保状态
+            underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.STAFF_PROCESS);
+            //核保结果
+            underwritingResultsVo.setUnderwritingResult("人工处理:核实影像是否齐全清楚," + errorCode);
+        } else {
+            //核保状态
+            underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
+            //核保结果
+            underwritingResultsVo.setUnderwritingResult("核保成功");
+        }
         underwritingResultsVo.setPaymentLink(paymentLinkResultsVo.getPaymentLink());
         underwritingResultsVo.setPaymentLink(paymentLinkResultsVo.getPaymentLink());
-        //核保结果
-        underwritingResultsVo.setUnderwritingResult("核保成功");
-        //核保状态
-        underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
         //保司订单号
         //保司订单号
         underwritingResultsVo.setCompanyOrderNo(zhongAnCrawlerOrder.getOrderNo());
         underwritingResultsVo.setCompanyOrderNo(zhongAnCrawlerOrder.getOrderNo());
         // 交强险投保单号
         // 交强险投保单号
@@ -467,6 +471,10 @@ public class ZhongAnCrawlerRequestImpl implements ZhongAnCrawlerRequest {
                     log.info("上传影像成功");
                     log.info("上传影像成功");
                 }
                 }
             }
             }
+        } else {
+            if (uploadImageResponse != null && uploadImageResponse.getSuccess()) {
+                log.info("影像" + imageType + ":上传成功");
+            }
         }
         }
     }
     }
 
 
@@ -592,7 +600,7 @@ public class ZhongAnCrawlerRequestImpl implements ZhongAnCrawlerRequest {
                                 if (queryAccommodationResponse.getSuccess()) {
                                 if (queryAccommodationResponse.getSuccess()) {
                                     ZhongAnCrawlerQueryAccommodationResponse.ValueDTO.DatasDTO.AccommodationDTO accommodationDTO = queryAccommodationResponse.getValue().getDatas().getAccommodation();
                                     ZhongAnCrawlerQueryAccommodationResponse.ValueDTO.DatasDTO.AccommodationDTO accommodationDTO = queryAccommodationResponse.getValue().getDatas().getAccommodation();
                                     if (accommodationDTO.getErrorCode() != null) {
                                     if (accommodationDTO.getErrorCode() != null) {
-                                        orderStatusResultVo.setOrderStatusStr(accommodationDTO.getErrorCode());
+                                        orderStatusResultVo.setOrderStatusStr(JSONObject.toJSONString(accommodationDTO.getErrorCode()));
                                         orderStatusResultVo.setOrderStatus(InsOrderStatusEnum.AUDIT_FAIL);
                                         orderStatusResultVo.setOrderStatus(InsOrderStatusEnum.AUDIT_FAIL);
                                     }
                                     }
                                 }
                                 }