Преглед изворни кода

Merge remote-tracking branch 'origin/master'

wanghao пре 2 месеци
родитељ
комит
0d7a4dbb80

+ 21 - 14
tenant/insurance/quotation-taishan/src/main/java/com/jzg/quotation/taishan/crawler/build/TaiShanCrawlerQuoteResultsVoBuild.java

@@ -56,7 +56,7 @@ public class TaiShanCrawlerQuoteResultsVoBuild {
             quoteResultsVo.setKindInfoVo(buildKindInfoVo(saveResponse, quoteVo));
         }
         // 交强保费 车船税 商业保费
-        buildPremium(quoteResultsVo, saveResponse);
+        buildPremium(quoteVo, quoteResultsVo, saveResponse);
 
         // 保司评分
         JSONArray scoreJson = new JSONArray();
@@ -193,28 +193,35 @@ public class TaiShanCrawlerQuoteResultsVoBuild {
      * @param quoteResultsVo
      * @param saveResponse
      */
-    private static void buildPremium(QuoteResultsVo quoteResultsVo, TaiShanCrawlerQuotationSaveResponse saveResponse) {
+    private static void buildPremium(QuoteVo quoteVo, QuoteResultsVo quoteResultsVo, TaiShanCrawlerQuotationSaveResponse saveResponse) {
         // 设置商业险保费
         if (Objects.nonNull(saveResponse.getResult().getBusinessInsurance())){
-            quoteResultsVo.getCosts().setBiPremium(String.valueOf(saveResponse.getResult().getBusinessInsurance().getProductInfo().getPremium()));
+            String biPremium = saveResponse.getResult().getBusinessInsurance().getProductInfo().getPremium();
+            quoteResultsVo.getCosts().setBiPremium(StringUtils.hasText(biPremium) ? biPremium : "0");
         }
         // 设置交强险保费
         if (Objects.nonNull(saveResponse.getResult().getCompulsoryInsurance())) {
-            quoteResultsVo.getCosts().setCiPremium(String.valueOf(saveResponse.getResult().getCompulsoryInsurance().getProductInfo().getPremium()));
+            String ciPremium = saveResponse.getResult().getCompulsoryInsurance().getProductInfo().getPremium();
+            quoteResultsVo.getCosts().setCiPremium(StringUtils.hasText(ciPremium) ? ciPremium : "0");
             // 设置车船税
-            quoteResultsVo.getCosts().setVvTax(String.valueOf(saveResponse.getResult().getCompulsoryInsurance().getCarShipTax().getSumTax()));
+            String vvTax = saveResponse.getResult().getCompulsoryInsurance().getCarShipTax().getSumTax();
+            quoteResultsVo.getCosts().setVvTax(StringUtils.hasText(vvTax) ? vvTax : "0");
         }
         //设置非车险(驾意险)保费
-        if (Objects.nonNull(saveResponse.getResult().getDiInsurance())) {//DiInsurance  驾乘人员意外伤害险 UN1 / UN2
-            quoteResultsVo.getCosts().setNiPremium(saveResponse.getResult().getDiInsurance().getPremium());
+        if (!quoteVo.getAccidentalDrivings().isEmpty() && Objects.nonNull(saveResponse.getResult().getDiInsurance())) {//DiInsurance  驾乘人员意外伤害险 UN1 / UN2
+            String diPremium = saveResponse.getResult().getDiInsurance().getPremium();
+            quoteResultsVo.getCosts().setNiPremium(StringUtils.hasText(diPremium) ? diPremium : "0");
         }
-        if (Objects.nonNull(saveResponse.getResult().getOpdInsurance())) {//OpdInsurance  车主门诊保险 0691_A
-            if (StringUtils.isNotBlank(quoteResultsVo.getCosts().getNiPremium())) {
-                BigDecimal diPremium = new BigDecimal(saveResponse.getResult().getDiInsurance().getPremium());
-                BigDecimal add = diPremium.add(new BigDecimal(saveResponse.getResult().getOpdInsurance().getPremium()));
-                quoteResultsVo.getCosts().setNiPremium(String.valueOf(add));
-            } else {
-                quoteResultsVo.getCosts().setNiPremium(saveResponse.getResult().getOpdInsurance().getPremium());
+        if (!quoteVo.getAccidentalDrivings().isEmpty() && Objects.nonNull(saveResponse.getResult().getOpdInsurance())) {//OpdInsurance  车主门诊保险 0691_A
+            String opdPremium = saveResponse.getResult().getOpdInsurance().getPremium();
+            if (StringUtils.hasText(opdPremium)) {
+                if (StringUtils.hasText(quoteResultsVo.getCosts().getNiPremium())) {
+                    BigDecimal diPremium = new BigDecimal(quoteResultsVo.getCosts().getNiPremium());
+                    BigDecimal add = diPremium.add(new BigDecimal(opdPremium));
+                    quoteResultsVo.getCosts().setNiPremium(add.toPlainString());
+                } else {
+                    quoteResultsVo.getCosts().setNiPremium(opdPremium);
+                }
             }
         }
         // 设置总费用

+ 36 - 11
tenant/insurance/quotation-taishan/src/main/java/com/jzg/quotation/taishan/crawler/component/TaiShanCrawlerRequestComponent.java

@@ -46,7 +46,8 @@ public class TaiShanCrawlerRequestComponent {
             HttpHeaders headers) {
         // 1. 请求体 JSON
         String jsonString = com.alibaba.fastjson.JSON.toJSONString(body);
-        log.info("请求内容 {}", jsonString);
+        log.info("泰山post请求地址 {}", requestUrl.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
+        log.info("泰山post请求内容 {}", jsonString);
         // 2. 执行 POST
         ResponseEntity<String> responseEntity =
                 requestComponent.post(
@@ -56,8 +57,7 @@ public class TaiShanCrawlerRequestComponent {
                         headers);
         // 3. 获取响应
         String responseBody = responseEntity.getBody();
-        log.info("post响应请求地址 {}", requestUrl.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
-        log.info("post响应内容 {}", responseBody);
+        log.info("泰山post响应内容 {}", responseBody);
         // 4. 反序列化
         Response response = com.alibaba.fastjson.JSON.parseObject(responseBody, responseClass);
 
@@ -75,6 +75,7 @@ public class TaiShanCrawlerRequestComponent {
             HttpHeaders headers) {
         // 1. 请求体 JSON
         String jsonString = com.alibaba.fastjson.JSON.toJSONString(body);
+        log.info("泰山post请求地址 {}", requestUrl.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         log.info("请求内容 {}", jsonString);
         // 2. 执行 POST
         ResponseEntity<String> responseEntity =
@@ -86,7 +87,7 @@ public class TaiShanCrawlerRequestComponent {
         // 3. 获取响应
         String responseBody = responseEntity.getBody();
 
-        log.info("响应内容 {}", responseBody);
+        log.info("泰山post响应内容 {}", responseBody);
         // 4. 反序列化
         Response response = com.alibaba.fastjson.JSON.parseObject(responseBody, responseClass);
 
@@ -104,7 +105,7 @@ public class TaiShanCrawlerRequestComponent {
             HttpHeaders headers) {
         // 1. 请求体 JSON
         String jsonString = com.alibaba.fastjson.JSON.toJSONString(body);
-        log.info("请求内容 {}", jsonString);
+        log.info("泰山postCheck请求内容 {}", jsonString);
         // 2. 执行 POST
         ResponseEntity<String> responseEntity =
                 requestComponent.post(
@@ -115,7 +116,7 @@ public class TaiShanCrawlerRequestComponent {
         // 3. 获取响应
         String responseBody = responseEntity.getBody();
 
-        log.info("响应内容 {}", responseBody);
+        log.info("泰山postCheck响应内容 {}", responseBody);
         // 4. 反序列化
         Response response = com.alibaba.fastjson.JSON.parseObject(responseBody, responseClass);
 
@@ -137,6 +138,7 @@ public class TaiShanCrawlerRequestComponent {
             param = RequestObjectConversion.convertMultiValueStringMap(body);
         }
         // 2. 执行 POST
+        log.info("泰山get请求地址 {}", requestUrl.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()) + path);
         ResponseEntity<String> responseEntity =
                 requestComponent.baseGet(
                         requestUrl.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()) + path,
@@ -146,7 +148,7 @@ public class TaiShanCrawlerRequestComponent {
         // 3. 获取响应
         String responseBody = responseEntity.getBody();
 
-        log.info("响应内容 {}", responseBody);
+        log.info("泰山get响应内容 {}", responseBody);
         // 4. 反序列化
         Response response = com.alibaba.fastjson.JSON.parseObject(responseBody, responseClass);
 
@@ -176,8 +178,8 @@ public class TaiShanCrawlerRequestComponent {
                         headers);
         // 3. 获取响应
         String responseBody = responseEntity.getBody();
-        log.info("get响应请求地址 {}", requestUrl.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
-        log.info("get响应内容 {}", responseBody);
+        log.info("泰山get响应请求地址 {}", requestUrl.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
+        log.info("泰山get响应内容 {}", responseBody);
         // 4. 反序列化
         Response response = com.alibaba.fastjson.JSON.parseObject(responseBody, responseClass);
 
@@ -243,7 +245,7 @@ public class TaiShanCrawlerRequestComponent {
     public TaiShanCrawlerCarResponse queryCarModelsWithCheck(TaiShanCrawlerCarRequest request, HttpHeaders headers) {
         // 1. 请求体 JSON
         String jsonString = com.alibaba.fastjson.JSON.toJSONString(request);
-        log.info("车型搜索参数:{}", jsonString);
+        log.info("泰山车型搜索参数:{}", jsonString);
         // 2. 执行 POST
         ResponseEntity<String> responseEntity;
         try {
@@ -312,8 +314,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerQuotationResponse
      */
     public TaiShanCrawlerQuotationResponse quotation(TaiShanCrawlerQuotationRequest request, HttpHeaders headers, int repeatNumber) {
+        log.info("泰山报价请求内容 {}", request);
+        log.info("泰山报价请求地址 {}", RequestUrl.PRICE.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         TaiShanCrawlerQuotationResponse response = post(RequestUrl.PRICE, request, TaiShanCrawlerQuotationResponse.class, headers);
-
+        log.info("泰山报价响应内容 {}", response);
         if (response.getResult() == null) {
             throw new SystemException(response.getMessage() != null ? response.getMessage() : "报价接口返回异常,result为空");
         }
@@ -341,7 +345,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerQuotationSaveResponse
      */
     public TaiShanCrawlerQuotationSaveResponse saveQuotation(TaiShanCrawlerQuotationRequest request, HttpHeaders headers) {
+        log.info("泰山保存报价请求内容 {}", request);
+        log.info("泰山保存报价请求地址 {}", RequestUrl.SAVE.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         TaiShanCrawlerQuotationSaveResponse response = post(RequestUrl.SAVE, request, TaiShanCrawlerQuotationSaveResponse.class, headers);
+        log.info("泰山保存报价响应内容 {}", response);
         return response;
     }
 
@@ -354,7 +361,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerUnderwritingResponse
      */
     public TaiShanCrawlerUnderwritingResponse underwriting(TaiShanCrawlerUnderwritingRequest request, HttpHeaders headers) {
+        log.info("泰山核保请求内容 {}", request);
+        log.info("泰山核保请求地址 {}", RequestUrl.UNDERWRITING.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         TaiShanCrawlerUnderwritingResponse response = get(RequestUrl.UNDERWRITING, request, TaiShanCrawlerUnderwritingResponse.class, headers,"");
+        log.info("泰山核保响应内容 {}", response);
         return response;
     }
 
@@ -366,7 +376,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerImageUploadResponse
      */
     public TaiShanCrawlerImageUploadResponse uploadImage(TaiShanCrawlerImageUploadRequest request, HttpHeaders headers){
+        log.info("泰山上传影像件请求内容 {}", request);
+        log.info("泰山上传影像件请求地址 {}", RequestUrl.UPLOAD_IMAGE.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         TaiShanCrawlerImageUploadResponse response = post(RequestUrl.UPLOAD_IMAGE, request, TaiShanCrawlerImageUploadResponse.class, headers);
+        log.info("泰山上传影像件响应内容 {}", response);
         return response;
     }
 
@@ -379,7 +392,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerPaymentCardResponse
      */
     public TaiShanCrawlerPaymentCardResponse getPaymentCard(TaiShanCrawlerPaymentCardRequest request, HttpHeaders headers) {
+        log.info("泰山获取支付卡请求内容 {}", request);
+        log.info("泰山获取支付卡请求地址 {}", RequestUrl.PAYMENT_CARD.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         TaiShanCrawlerPaymentCardResponse response = get(RequestUrl.PAYMENT_CARD, request, TaiShanCrawlerPaymentCardResponse.class, headers,"");
+        log.info("泰山获取支付卡响应内容 {}", response);
         return response;
     }
 
@@ -392,7 +408,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerRiskManagementResponse
      */
     public TaiShanCrawlerRiskManagementResponse getRiskManagement(TaiShanCrawlerRiskManagementRequest request, HttpHeaders headers) {
+        log.info("泰山风险管控请求内容 {}", request);
+        log.info("泰山风险管控请求地址 {}", RequestUrl.RISK_MANAGEMENT.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         TaiShanCrawlerRiskManagementResponse response = get(RequestUrl.RISK_MANAGEMENT, request, TaiShanCrawlerRiskManagementResponse.class, headers,"");
+        log.info("泰山风险管控响应内容 {}", response);
         return response;
     }
 
@@ -404,7 +423,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerOrderQueryResponse
      */
     public TaiShanCrawlerOrderQueryResponse queryOrderStatus(TaiShanCrawlerOrderQueryRequest request, HttpHeaders headers) {
+        log.info("泰山查询订单状态请求内容 {}", request);
+        log.info("泰山查询订单状态请求地址 {}", RequestUrl.QUERY_ORDER_STATUS.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
         TaiShanCrawlerOrderQueryResponse response = post(RequestUrl.QUERY_ORDER_STATUS, request, TaiShanCrawlerOrderQueryResponse.class, headers);
+        log.info("泰山查询订单状态响应内容 {}", response);
         return response;
     }
 
@@ -416,7 +438,10 @@ public class TaiShanCrawlerRequestComponent {
      * @return TaiShanCrawlerDownLoadPolicyResponse
      */
      public TaiShanCrawlerDownLoadPolicyResponse downloadPolicy(TaiShanCrawlerDownLoadPolicyRequest request, HttpHeaders headers) {
+         log.info("泰山下载电子保单请求内容 {}", request);
+         log.info("泰山下载电子保单请求地址 {}", RequestUrl.ELECTRON_POLICY_IO_DOWNLOAD.getRequestUrl(taiShanCrawlerProperties.getBaseUrl()));
          TaiShanCrawlerDownLoadPolicyResponse response = get(RequestUrl.ELECTRON_POLICY_IO_DOWNLOAD, request, TaiShanCrawlerDownLoadPolicyResponse.class, headers,null);
+         log.info("泰山下载电子保单响应内容 {}", response);
          return response;
     }
 

+ 6 - 9
tenant/insurance/quotation-taishan/src/main/java/com/jzg/quotation/taishan/crawler/service/impl/TaiShanCrawlerRequestImpl.java

@@ -2,6 +2,7 @@ package com.jzg.quotation.taishan.crawler.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.jzg.commons.constants.dict.InsOrderStatusEnum;
 import com.jzg.commons.entity.quote.vo.AttributionInformationVo;
@@ -410,21 +411,14 @@ public class TaiShanCrawlerRequestImpl implements TaiShanCrawlerRequest {
 
         UnderwritingResultsVo underwritingResultsVo = new UnderwritingResultsVo();
         if ("200".equals(taiShanCrawlerUnderwritingResponse.getCode())) {
+            log.info("TaiShan-taiShanCrawlerUnderwritingResponse:{}", JSONObject.toJSONString(taiShanCrawlerUnderwritingResponse));
             String retMsg = "";
             TaiShanCrawlerUnderwritingResponse.Result result = taiShanCrawlerUnderwritingResponse.getResult();
             if(result != null){
                 retMsg = result.getRetMsg();
             }
-            log.info("TaiShan-retMsg:{}", JSON.toJSONString(retMsg));
             if(org.apache.commons.lang3.StringUtils.isNotBlank(retMsg)){
-                if(retMsg.contains("重新提交")){
-                    underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.AUDIT_FAIL);
-//                    StringBuilder sb = new StringBuilder();
-//                    if (null != taiShanCrawlerUnderwritingResponse.getMessage()) {
-//                        sb.append(String.format("错误信息:%s", taiShanCrawlerUnderwritingResponse.getMessage()));
-//                    }
-                    underwritingResultsVo.setUnderwritingResult(retMsg);
-                }else if(retMsg.contains("核保通过")){
+                if(retMsg.contains("核保通过")){
                     //核保成功
                     underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
                     underwritingResultsVo.setJqApplyNo(taiShanCrawlerUnderwritingResponse.getResult().getJqAppNo());
@@ -435,6 +429,9 @@ public class TaiShanCrawlerRequestImpl implements TaiShanCrawlerRequest {
                     paymentLinkVo.setOrder(underwritingVo.getOrder());
                     PaymentLinkResultsVo paymentLinkResultsVo = getPaymentLink(paymentLinkVo);
                     underwritingResultsVo.setPaymentLink(paymentLinkResultsVo.getPaymentLink());
+                }else {
+                    underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.AUDIT_FAIL);
+                    underwritingResultsVo.setUnderwritingResult(retMsg);
                 }
             }
         } else {//核保失败