Browse Source

渤海财险 修改问题

wks 2 years ago
parent
commit
cd8d57e988

+ 4 - 5
src/main/java/com/ydtech/modules/ins/model/yc/YcBuildData.java

@@ -17,6 +17,7 @@ import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 /**
@@ -214,7 +215,7 @@ public class YcBuildData {
         }
 
         //出险信息
-        quoteRespVo.setAccidentInfoStr(String.format("%s%s", ciSB.toString(), biSB.toString()));
+        quoteRespVo.setAccidentInfoStr(String.format("%s%s", ciSB, biSB));
 
 
         //欠税信息
@@ -234,11 +235,9 @@ public class YcBuildData {
         if (null != rd.getTfiWarnList()) {
             //排空
             List<TfiWarnListResponse.TfiWarnData> tfiWarnData =
-                    rd.getTfiWarnList().getTfiWarnData().stream().filter(item -> null != item).filter(item -> StringUtils.isNotEmpty(item.getWarnMessage())).collect(Collectors.toList());
+                    rd.getTfiWarnList().getTfiWarnData().stream().filter(Objects::nonNull).filter(item -> StringUtils.isNotEmpty(item.getWarnMessage())).collect(Collectors.toList());
             List<String> warnMessageList = new ArrayList<>();
-            tfiWarnData.stream().forEach(a -> {
-                warnMessageList.add(a.getWarnMessage());
-            });
+            tfiWarnData.forEach(a -> warnMessageList.add(a.getWarnMessage()));
             quoteRespVo.setWarnMessageList(warnMessageList);
         }
 

+ 33 - 22
src/main/java/com/ydtech/modules/order/components/bohai/BoHaiRequestApiComponent.java

@@ -7,6 +7,7 @@ import com.ydtech.config.properties.BohaiApiConfigurationProperties;
 import com.ydtech.constants.InsuranceEnum;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.order.entity.api.bohai.BoHaiEncrypted;
+import com.ydtech.modules.order.entity.api.bohai.constants.RequestType;
 import com.ydtech.modules.order.entity.api.bohai.constants.ResponseCode;
 import com.ydtech.modules.order.entity.api.bohai.request.*;
 import com.ydtech.modules.order.entity.api.bohai.response.*;
@@ -47,12 +48,15 @@ public class BoHaiRequestApiComponent {
      * @param <S>    Response 响应体
      * @return <S>
      */
-    private <Q extends BoHaiBaseRequest, S extends BoHaiBaseResponse> S post(Q q, String url, Class<S> tClass, String sysSourceCode) throws Exception {
+    private <Q extends BoHaiBaseRequest, S extends BoHaiBaseResponse> S post(Q q, String url, Class<S> tClass, String sysSourceCode,
+                                                                             RequestType requestType) throws Exception {
+        q.setBaseParamRequestType(requestType.getCode());
         HttpHeaders httpHeaders = new HttpHeaders();
         httpHeaders.setContentType(MediaType.APPLICATION_JSON);
 
         String busReqString = JSON.toJSONString(q, SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty);
-        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> URl: {} \n---------> 请求参数:{}", url, busReqString);
+        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> {} \n\t---------> URl: {} \n---------> 请求参数:{}",
+                requestType.getDesc(), url, busReqString);
         BoHaiEncrypted boHaiEncrypted = new BoHaiEncrypted(busReqString, properties, sysSourceCode);
         String json = JSON.toJSONString(boHaiEncrypted, SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty);
         // 获取请求头signature 和加密后的内容
@@ -61,21 +65,28 @@ public class BoHaiRequestApiComponent {
         String signature = stringStringMap.get("signature");
         String content = stringStringMap.get("content");
         httpHeaders.set("signature", signature);
-        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> 加密后的参数:{} \n\t---------> 请求头内容signature:{}", content,
-                signature);
+        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> {} \n\t---------> 加密后的参数:{} \n\t---------> " +
+                "请求头内容signature:{}", requestType.getDesc(), content, signature);
         // 请求
         HttpEntity<String> httpEntity = new HttpEntity<>(content, httpHeaders);
         ResponseEntity<String> response = restTemplate.postForEntity(url, httpEntity, String.class);
         String body = response.getBody();
-        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> 解密前的参数:{}", body);
+        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> {} \n\t---------> 解密前的参数:{}", requestType.getDesc(), body);
 
         // 解密响应
         BoHaiEncrypted encrypted = JSON.parseObject(body).toJavaObject(BoHaiEncrypted.class);
         String info = SignatureUtils.decryptByPrivateKey(encrypted.getBizContent(), properties.getSelfPrivateKey());
-        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> 解密后的参数:{}", info);
+        InsuranceLog.infoLog(InsuranceEnum.BPIC.getPinyin(), "\n\t---------> {} \n\t---------> 解密后的参数:{}", requestType.getDesc(), info);
         return JSON.parseObject(info).toJavaObject(tClass);
     }
 
+    public <Q extends BoHaiBaseRequest, S extends BoHaiBaseResponse> S verificationResponse(Q q, String url, Class<S> tClass,
+                                                                                            String sysSourceCode,
+                                                                                            RequestType requestType) throws Exception {
+        S response = post(q, url, tClass, sysSourceCode, requestType);
+        verificationResponseCode(response.getResponseCode(), response.getResponseMsg());
+        return response;
+    }
 
     /**
      * 生成订单号请求
@@ -84,7 +95,7 @@ public class BoHaiRequestApiComponent {
      * @return 返回订单号响应
      */
     public GenerateOrderNoResponse generateOrderNo(GenerateOrderNoRequest request, String sysSourceCode) throws Exception {
-        return post(request, properties.getUrl(), GenerateOrderNoResponse.class,  sysSourceCode);
+        return verificationResponse(request, properties.getUrl(), GenerateOrderNoResponse.class, sysSourceCode, RequestType.Z00002);
     }
 
     /**
@@ -94,7 +105,7 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public VehicleTypeQueryResponse vehicleTypeQuery(VehicleTypeQueryRequest request, String sysSourceCode) throws Exception {
-        return post(request, properties.getUrl(), VehicleTypeQueryResponse.class,  sysSourceCode);
+        return verificationResponse(request, properties.getUrl(), VehicleTypeQueryResponse.class, sysSourceCode, RequestType.Z00004);
     }
 
     /**
@@ -104,9 +115,10 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public VehicleConfirmationResponse vehicleConfirmation(VehicleConfirmationReqeust request, String sysSourceCode) throws Exception {
-        VehicleConfirmationResponse response = post(request, properties.getUrl(), VehicleConfirmationResponse.class, sysSourceCode);
+        VehicleConfirmationResponse response = post(request, properties.getUrl(), VehicleConfirmationResponse.class, sysSourceCode,
+                RequestType.Z00005);
         if (ResponseCode.R_Z00002.getCode().equals(response.getResponseCode())) {
-            response = post(request, properties.getUrl(), VehicleConfirmationResponse.class, sysSourceCode);
+            response = post(request, properties.getUrl(), VehicleConfirmationResponse.class, sysSourceCode, RequestType.Z00005);
         }
         if (ResponseCode.R_Z00001.getCode().equals(response.getResponseCode())) {
             return response;
@@ -121,7 +133,7 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public ImageUploadResponse imageUpload(ImageUploadRequest imageUploadRequest, String sysSourceCode) throws Exception {
-        return post(imageUploadRequest, properties.getUrl(), ImageUploadResponse.class, sysSourceCode);
+        return verificationResponse(imageUploadRequest, properties.getUrl(), ImageUploadResponse.class, sysSourceCode, RequestType.Z00014);
     }
 
 
@@ -132,7 +144,7 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public NonAutomotiveProductsResponse products(NonAutomotiveProductsRequest request, String sysSourceCode) throws Exception {
-        return post(request, properties.getUrl(), NonAutomotiveProductsResponse.class, sysSourceCode);
+        return verificationResponse(request, properties.getUrl(), NonAutomotiveProductsResponse.class, sysSourceCode, RequestType.Z00018);
     }
 
     /**
@@ -142,7 +154,8 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public NonAutomotiveProductsDetailsResponse productsDetails(NonAutomotiveProductsDetailsRequest request, String sysSourceCode) throws Exception {
-        return post(request, properties.getUrl(), NonAutomotiveProductsDetailsResponse.class, sysSourceCode);
+        return verificationResponse(request, properties.getUrl(), NonAutomotiveProductsDetailsResponse.class, sysSourceCode,
+                RequestType.Z00019);
     }
 
 
@@ -153,7 +166,7 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public QuotationResponse quotation(QuotationRequest request, String sysSourceCode) throws Exception {
-        return post(request, properties.getUrl(), QuotationResponse.class, sysSourceCode);
+        return post(request, properties.getUrl(), QuotationResponse.class, sysSourceCode, RequestType.Z00006);
     }
 
     /**
@@ -163,7 +176,7 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public UnderwritingResponse underwriting(UnderwritingRequest underwritingRequest, String sysSourceCode) throws Exception {
-        return post(underwritingRequest, properties.getUrl(), UnderwritingResponse.class, sysSourceCode);
+        return post(underwritingRequest, properties.getUrl(), UnderwritingResponse.class, sysSourceCode, RequestType.Z00007);
     }
 
     /**
@@ -173,7 +186,7 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public PaymentResponse payment(PaymentRequest paymentRequest, String sysSourceCode) throws Exception {
-        return post(paymentRequest, properties.getUrl(), PaymentResponse.class, sysSourceCode);
+        return post(paymentRequest, properties.getUrl(), PaymentResponse.class, sysSourceCode, RequestType.Z00008);
     }
 
     /**
@@ -183,9 +196,8 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public ElectronicPolicyResponse electronicPolicy(ElectronicPolicyRequest electronicPolicyRequest, String sysSourceCode) throws Exception {
-        ElectronicPolicyResponse response =  post(electronicPolicyRequest, properties.getUrl(), ElectronicPolicyResponse.class, sysSourceCode);
-        verificationResponseCode(response.getResponseCode(), response.getResponseMsg());
-        return response;
+        return verificationResponse(electronicPolicyRequest, properties.getUrl(), ElectronicPolicyResponse.class, sysSourceCode,
+                RequestType.Z00020);
     }
 
     /**
@@ -195,9 +207,8 @@ public class BoHaiRequestApiComponent {
      * @return 响应
      */
     public StatusDocumentsResponse statusDocuments(StatusDocumentsRequest statusDocumentsRequest, String sysSourceCode) throws Exception {
-        StatusDocumentsResponse response = post(statusDocumentsRequest, properties.getUrl(), StatusDocumentsResponse.class, sysSourceCode);
-        verificationResponseCode(response.getResponseCode(), response.getResponseMsg());
-        return response;
+        return verificationResponse(statusDocumentsRequest, properties.getUrl(), StatusDocumentsResponse.class, sysSourceCode,
+                RequestType.Z00021);
     }
 
     /**

+ 14 - 5
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/BoHaiBaseRequest.java

@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import com.ydtech.modules.order.entity.config.BoHaiConfigureParameters;
 import lombok.Data;
 import lombok.NoArgsConstructor;
+import org.springframework.util.ObjectUtils;
 
 import java.io.Serializable;
 import java.time.LocalDateTime;
@@ -19,19 +20,27 @@ public class BoHaiBaseRequest implements Serializable {
     @JsonProperty("baseParam")
     private BaseParamDTO baseParam;
 
-    public void setBaseParam(BoHaiConfigureParameters parameters, String requestType) {
-        baseParam = new BaseParamDTO();
+    public void setBaseParam(BoHaiConfigureParameters parameters) {
+        if (ObjectUtils.isEmpty(this.baseParam)) {
+            baseParam = new BaseParamDTO();
+        }
         baseParam.requestNo = UUID.randomUUID().toString().replace("-", "");
         baseParam.requestTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS"));
-        baseParam.requestType = requestType;
         baseParam.ip = "118.81.124.183";
         baseParam.insurerBranchCode = parameters.getInsurerBranchCode();
         baseParam.franchiserInstitutionCode = parameters.getFranchiserInstitutionCode();
         baseParam.franchiserChannel = new BaseParamDTO.FranchiserChannelDTO(parameters);
     }
 
-    public void setBaseParam(BoHaiConfigureParameters parameters, String requestType, String orderNo) {
-        setBaseParam(parameters, requestType);
+    public void setBaseParamRequestType(String requestType) {
+        if (ObjectUtils.isEmpty(this.baseParam)) {
+            baseParam = new BaseParamDTO();
+        }
+        this.baseParam.requestType = requestType;
+    }
+
+    public void setBaseParam(BoHaiConfigureParameters parameters, String orderNo) {
+        setBaseParam(parameters);
         baseParam.orderNo = orderNo;
     }
 

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/ElectronicPolicyRequest.java

@@ -28,7 +28,7 @@ public class ElectronicPolicyRequest extends BoHaiBaseRequest {
     private String policyType;
 
     public ElectronicPolicyRequest(BoHaiConfigureParameters parameters, String id, String jqpolicyno, String sypolicyno) {
-        this.setBaseParam(parameters, RequestType.Z00020.getCode(), id);
+        this.setBaseParam(parameters, id);
         this.policyNo = StringUtils.isNotEmpty(jqpolicyno) ? jqpolicyno : sypolicyno;
         if (StringUtils.isEmpty(jqpolicyno)) {
             this.policyType = "0";

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/GenerateOrderNoRequest.java

@@ -24,7 +24,7 @@ public class GenerateOrderNoRequest extends BoHaiBaseRequest {
     private static final long serialVersionUID = 8713399532011104295L;
 
     public GenerateOrderNoRequest(BoHaiConfigureParameters parameters) {
-        this.setBaseParam(parameters, RequestType.Z00002.getCode());
+        this.setBaseParam(parameters);
     }
 
 }

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/ImageUploadRequest.java

@@ -34,7 +34,7 @@ public class ImageUploadRequest extends BoHaiBaseRequest {
     private String busUniqueId;
 
     public ImageUploadRequest(BoHaiConfigureParameters parameters, String id, String insOrderNo, List<InsTaskImagesBase64> insTaskImagesBase64s) {
-        this.setBaseParam(parameters, RequestType.Z00014.getCode(), id);
+        this.setBaseParam(parameters, id);
         this.setBusUniqueId(insOrderNo);
         this.fileInfos = FileInfosDTO.toFileInfosDTOList(insTaskImagesBase64s);
     }

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/PaymentRequest.java

@@ -28,7 +28,7 @@ public class PaymentRequest extends BoHaiBaseRequest{
 
 
     public PaymentRequest(BoHaiConfigureParameters parameters, String orderNo, String insOrderNo) {
-        this.setBaseParam(parameters, RequestType.Z00008.getCode(), orderNo);
+        this.setBaseParam(parameters, orderNo);
         this.busUniqueId = insOrderNo;
         this.payWay = "82";
     }

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/QuotationRequest.java

@@ -58,7 +58,7 @@ public class QuotationRequest extends BoHaiBaseRequest {
                             String orderNO,
                             CarInfoVo carInfo,
                             List<BoHaiQuoteAccidentVo> accidentVo) {
-        this.setBaseParam(parameters, RequestType.Z00006.getCode(), orderNO);
+        this.setBaseParam(parameters, orderNO);
         this.argueSolution = "1";
         for (RiskInfoVo riskInfoVo : riskList) {
             if (InsuranceRisk.TRAFFIC.getCode().equals(riskInfoVo.getRiskCode())) {

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/StatusDocumentsRequest.java

@@ -24,7 +24,7 @@ public class StatusDocumentsRequest extends BoHaiBaseRequest {
     private String applicationNo;
 
     public StatusDocumentsRequest(BoHaiConfigureParameters parameters, String id, String applicationNo) {
-        this.setBaseParam(parameters, RequestType.Z00021.getCode(), id);
+        this.setBaseParam(parameters, id);
         this.applicationNo = applicationNo;
     }
 

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/UnderwritingRequest.java

@@ -31,7 +31,7 @@ public class UnderwritingRequest extends BoHaiBaseRequest {
     private TrafficPolicyDTO trafficPolicy;
 
     public UnderwritingRequest(BoHaiConfigureParameters parameters, String orderNo) {
-        this.setBaseParam(parameters, RequestType.Z00007.getCode(), orderNo);
+        this.setBaseParam(parameters, orderNo);
     }
 
     @NoArgsConstructor

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/VehicleConfirmationReqeust.java

@@ -59,7 +59,7 @@ public class VehicleConfirmationReqeust extends BoHaiBaseRequest {
             effectDate = quoteInfoVo.getRiskList().get(0).getStartDate();
         }
 
-        this.setBaseParam(parameters, RequestType.Z00005.getCode(), orderNo);
+        this.setBaseParam(parameters, orderNo);
         // 车辆信息
         CarInfoVo carInfo = quoteInfoVo.getCarInfo();
         this.vehicle = new VehicleDTO(carInfo, vehicleModelsDTO, effectDate);

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/VehicleTypeQueryRequest.java

@@ -51,7 +51,7 @@ public class VehicleTypeQueryRequest extends BoHaiBaseRequest {
     private String newVehicleFlag;
 
     public VehicleTypeQueryRequest(BoHaiConfigureParameters parameters, String vehicleBrandModelKey, String orderNo) {
-        this.setBaseParam(parameters, RequestType.Z00004.getCode(), orderNo);
+        this.setBaseParam(parameters, orderNo);
         this.vehicleBrandModelKey = vehicleBrandModelKey;
     }