Selaa lähdekoodia

修改紫金报价次数

wks 2 vuotta sitten
vanhempi
commit
d15a646a46

+ 3 - 3
src/main/java/com/ydtech/modules/order/components/zijin/ResponseMessageAbstractHandler.java

@@ -25,9 +25,9 @@ public abstract class ResponseMessageAbstractHandler {
      * @param httpHeaders              请求头
      * @param modelQueryRequest        车型请求体
      * @param message                  重复投保信息
-     * @param queryActualValueRequest                  车辆实际价值
+     * @param queryActualValueRequest  车辆实际价值
      * @param repeatNumber             重复投保次数
-     * @param retry             重复投保次数
+     * @param retryNumber              验证码重复次数
      * @return 报价响应参数
      */
     public abstract CalculatePremiumResponse messageHandler(
@@ -38,7 +38,7 @@ public abstract class ResponseMessageAbstractHandler {
             String message,
             QueryActualValueRequest queryActualValueRequest,
             int repeatNumber,
-            boolean retry
+            int retryNumber
     );
 
 

+ 2 - 2
src/main/java/com/ydtech/modules/order/components/zijin/ZijinDuplicateInsuranceComponents.java

@@ -55,7 +55,7 @@ public class ZijinDuplicateInsuranceComponents extends ResponseMessageAbstractHa
                                                    String message,
                                                    QueryActualValueRequest queryActualValueRequest,
                                                    int repeatNumber,
-                                                   boolean retry) {
+                                                   int retryNumber) {
 
 
         InsuranceLog.infoLog(InsuranceEnum.ZKIC.getPinyin(), "\n\t---------> {}\n\t---------> {}", "紫金财险重复投保处理",
@@ -109,7 +109,7 @@ public class ZijinDuplicateInsuranceComponents extends ResponseMessageAbstractHa
         baseInfo.setTrafficTime(jqEndDate);
         baseInfo.setBusinessTime(syEndDate);
         calculatePremiumResponse = zijinRequestApiComponents.calculatePremium(calculatePremiumRequest, httpHeaders, modelQueryRequest,
-                message, queryActualValueRequest, repeatNumber, retry);
+                message, queryActualValueRequest, repeatNumber, retryNumber);
         return calculatePremiumResponse;
     }
 

+ 2 - 2
src/main/java/com/ydtech/modules/order/components/zijin/ZijinReinsuranceComponents.java

@@ -52,7 +52,7 @@ public class ZijinReinsuranceComponents extends ResponseMessageAbstractHandler {
                                                    String message,
                                                    QueryActualValueRequest queryActualValueRequest,
                                                    int repeatNumber,
-                                                   boolean retry) {
+                                                   int retryNumber) {
         InsuranceLog.infoLog(InsuranceEnum.ZKIC.getPinyin(), "\n\t---------> {}\n\t---------> {}", "紫金财险转保处理", calculatePremiumResponse.getRtnMsg());
         CalculatePremiumResponse.BasePartDTO basePart = calculatePremiumResponse.getBasePart();
         RecognitionRequest recognitionRequest = new RecognitionRequest();
@@ -72,6 +72,6 @@ public class ZijinReinsuranceComponents extends ResponseMessageAbstractHandler {
         RecognitionResponse recognition = verificationCodeIdentification.recognition(recognitionRequest);
         baseInfo.setAnswerCI(recognition.getData().getJqImageCode());
         baseInfo.setAnswer(recognition.getData().getSyImageCode());
-        return zijinRequestApiComponents.calculatePremium(calculatePremiumRequest, httpHeaders, modelQueryRequest, message, queryActualValueRequest, repeatNumber, retry);
+        return zijinRequestApiComponents.calculatePremium(calculatePremiumRequest, httpHeaders, modelQueryRequest, message, queryActualValueRequest, repeatNumber, retryNumber);
     }
 }

+ 2 - 2
src/main/java/com/ydtech/modules/order/components/zijin/ZijinRequestApiComponents.java

@@ -248,7 +248,7 @@ public class ZijinRequestApiComponents {
      */
     public CalculatePremiumResponse calculatePremium(CalculatePremiumRequest calculatePremiumRequest, HttpHeaders httpHeaders,
                                                      ModelQueryRequest modelQueryRequest, String message,
-                                                     QueryActualValueRequest queryActualValueRequest,int repeatNumber, boolean retry) {
+                                                     QueryActualValueRequest queryActualValueRequest,int repeatNumber, int retryNumber) {
         CalculatePremiumResponse calculatePremiumResponse = requestQuotation(RequestUrl.CALCULATE_PREMIUM, calculatePremiumRequest,
                 CalculatePremiumResponse.class, httpHeaders);
         // 清空转保业务码
@@ -281,7 +281,7 @@ public class ZijinRequestApiComponents {
                 handlerMap.get(ResponseMessageAbstractHandler.CALCULATE_PREMIUM_COMPONENTS + calculatePremiumResponse.getRtnCode());
         if (!ObjectUtils.isEmpty(responseMessageAbstractHandler)) {
             calculatePremiumResponse = responseMessageAbstractHandler.messageHandler(calculatePremiumRequest, calculatePremiumResponse,
-                    httpHeaders, modelQueryRequest, message, queryActualValueRequest, repeatNumber, retry);
+                    httpHeaders, modelQueryRequest, message, queryActualValueRequest, repeatNumber, retryNumber);
         }
 
         return calculatePremiumResponse;

+ 4 - 4
src/main/java/com/ydtech/modules/order/components/zijin/ZijinSystemExceptionComponents.java

@@ -44,18 +44,18 @@ public class ZijinSystemExceptionComponents extends ResponseMessageAbstractHandl
                                                    String message,
                                                    QueryActualValueRequest queryActualValueRequest,
                                                    int repeatNumber,
-                                                   boolean retry) {
+                                                   int retryNumber) {
         InsuranceLog.infoLog(InsuranceEnum.ZKIC.getPinyin(), "\n\t---------> {}\n\t---------> {}", "紫金财险 999 异常处理",
                 calculatePremiumResponse.getRtnMsg());
         String rtnMsg = calculatePremiumResponse.getRtnMsg();
 
-        if (retry && rtnMsg.contains(ExceptionEnum.R_90000.getDesc())) {
+        if (retryNumber > 0 && rtnMsg.contains(ExceptionEnum.R_90000.getDesc())) {
             CalculatePremiumRequest.BaseInfoDTO baseInfo = calculatePremiumRequest.getBaseInfo();
             baseInfo.setAnswerCI(replacingStrings(baseInfo.getAnswerCI()));
             baseInfo.setAnswer(replacingStrings(baseInfo.getAnswer()));
-            retry = false;
+            retryNumber -= 1;
             return zijinRequestApiComponents.calculatePremium(calculatePremiumRequest, httpHeaders, modelQueryRequest, message,
-                    queryActualValueRequest,repeatNumber, retry);
+                    queryActualValueRequest,repeatNumber, retryNumber);
         }
 
         throw new SystemException(calculatePremiumResponse.getRtnMsg());

+ 2 - 2
src/main/java/com/ydtech/modules/order/components/zijin/ZijinVehicleTypeErrorComponents.java

@@ -71,7 +71,7 @@ public class ZijinVehicleTypeErrorComponents extends ResponseMessageAbstractHand
                                                    String message,
                                                    QueryActualValueRequest queryActualValueRequest,
                                                    int repeatNumber,
-                                                   boolean retry) {
+                                                   int retryNumber) {
         InsuranceLog.infoLog(InsuranceEnum.ZKIC.getPinyin(), "\n\t---------> {}\n\t---------> {}", "紫金财险转修改正确车型报价", calculatePremiumResponse.getRtnMsg());
         CarType carType = getCarInconsistentInformation(calculatePremiumResponse.getRtnMsg());
 
@@ -99,7 +99,7 @@ public class ZijinVehicleTypeErrorComponents extends ResponseMessageAbstractHand
             itemKindListDTO.get(0).setAmount(actualValue);
         }
 
-        return zijinRequestApiComponents.calculatePremium(calculatePremiumRequest, httpHeaders, modelQueryRequest, message, queryActualValueRequest,repeatNumber, retry);
+        return zijinRequestApiComponents.calculatePremium(calculatePremiumRequest, httpHeaders, modelQueryRequest, message, queryActualValueRequest,repeatNumber, retryNumber);
     }
 
 

+ 4 - 1
src/main/java/com/ydtech/modules/order/service/impl/ZijinOrderApiServiceImpl.java

@@ -76,6 +76,9 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
     // 重复投保次数
     private static final int REPEAT_NUMBER = 3;
 
+    // 投保验证码重试次数
+    private static final int RETRY_NUMBER = 3;
+
     @Value("${upload.file.path}")
     private String uploadFilePath;
 
@@ -144,7 +147,7 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
 
         String message = "";
         CalculatePremiumResponse calculatePremiumResponse = zijinRequestApiComponents.calculatePremium(calculatePremiumRequest,
-                httpHeaders, modelQueryRequest, message, queryActualValueRequest, REPEAT_NUMBER, true);
+                httpHeaders, modelQueryRequest, message, queryActualValueRequest, REPEAT_NUMBER, RETRY_NUMBER);
         // 警告信息
         QuoteRespVo quoteRespVo = getQuoteRespVo(calculatePremiumResponse, quoteInfoVo, quoteVo.getAccidentalDrivingVo(), isEnergy);
         if (!StringUtils.isEmpty(message)) {