Qchen пре 4 месеци
родитељ
комит
51e1be6370

+ 5 - 3
tenant/insurance/quotation-chengtai/src/main/java/com/jzg/quotation/chengtai/api/entity/request/PaymentRequest.java

@@ -85,13 +85,15 @@ public class PaymentRequest {
     private String type;
 
     public PaymentRequest(PaymentLinkVo paymentLinkVo) {
-        this.orderCoder = paymentLinkVo.getInsOrders().getInsOrderNo();
+        this.orderCoder = paymentLinkVo.getInsOrders().getCompanyOrderNo();
         this.payAmt = String.valueOf(paymentLinkVo.getInsOrdersCosts().getSumPremium());
         this.businessType = "1";
         this.foreEndURL = "";
 
         this.acciAppPolicyNo = paymentLinkVo.getInsOrdersPolicy().getJyApplyNo();
-        this.nvhlSuitCode = paymentLinkVo.getInsOrdersAccidentalDriving().getRiskCode();
-        this.payAmtnvhl = paymentLinkVo.getInsOrdersAccidentalDriving().getAmount();
+        if (paymentLinkVo.getInsOrdersAccidentalDriving() != null) {
+            this.nvhlSuitCode = paymentLinkVo.getInsOrdersAccidentalDriving().getRiskCode();
+            this.payAmtnvhl = paymentLinkVo.getInsOrdersAccidentalDriving().getAmount();
+        }
     }
 }

+ 1 - 0
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/build/ZmCrawlerQuoteResultVoBuild.java

@@ -23,6 +23,7 @@ public final class ZmCrawlerQuoteResultVoBuild {
     public static QuoteResultsVo build(QuoteVo quoteVo, ZmCrawlerQuotedPriceResponse quotedPriceResponse) {
         QuoteResultsVo quoteResultsVo = new QuoteResultsVo();
         if(!"0".equals(quotedPriceResponse.getHead().getReturnCode())){
+            quoteResultsVo.setCiRiskInfoVo(buildCiInfo(quotedPriceResponse));
             quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.QUOTE_FAIL);
             quoteResultsVo.setErrorMessage(quotedPriceResponse.getHead().getReturnMessage());
             return quoteResultsVo;

+ 5 - 1
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/entity/Request/ZmCrawlerQuotedPriceRequest.java

@@ -1149,7 +1149,11 @@ public class ZmCrawlerQuotedPriceRequest extends BaseRequest {
                     this.validDate = riskInfoVo.getStartDate();
                     this.expiryDate = riskInfoVo.getEndDate();
                     this.argueSolution = "1";
-                    this.reinsuranceFlag = "0";
+                    if (riskInfoVo.isInstantFlag()) {
+                        this.reinsuranceFlag = "1";
+                    } else {
+                        this.reinsuranceFlag = "0";
+                    }
                     this.coinsFlag = "0";
                     this.renewalFlag = false;
                     this.productionDate =  productionDate;

+ 27 - 8
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/service/Impl/ZhongMeiCrawlerRequestImpl.java

@@ -128,6 +128,10 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
                                 .orElse(null);
                 contract.getContractMain().setValidDate(startTime);
                 contract.getContractMain().setExpiryDate(endTime);
+                // 判断是否是即时起保
+                if (!startTime.endsWith("00:00:00")) {
+                    contract.getContractMain().setReinsuranceFlag("1");
+                }
                 contract.getCoverage().forEach(coverageDTO -> {
                     coverageDTO.setValidDate(startTime);
                     coverageDTO.setExpiryDate(endTime);
@@ -154,10 +158,21 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
                                 .orElse(null);
                 contract.getContractMain().setValidDate(startTime);
                 contract.getContractMain().setExpiryDate(endTime);
+                // 判断是否是即时起保
+                if (!startTime.endsWith("00:00:00")) {
+                    contract.getContractMain().setReinsuranceFlag("1");
+                }
                 contract.getCoverage().forEach(coverageDTO -> {
                     coverageDTO.setValidDate(startTime);
                     coverageDTO.setExpiryDate(endTime);
+
                 });
+                ZmCrawlerActualValueRequest actualValueReq = new ZmCrawlerActualValueRequest(quoteVo.getCarInfoVo(),fullCarDataDTO,head,startTime);
+                ZmCrawlerActualValueResponse actualValueResp = zmCrawlerRequestComponent.getActualValue(actualValueReq);
+                quotedPriceRequest.getBusinessData().getInsuredObject().getPolicyCar().setActualValue(actualValueResp.getActualValue());
+                quotedPriceRequest.getBusinessData().getInsuredObject().getPolicyCar().setActualValueCarLoss(actualValueResp.getActualValue());
+                quotedPriceRequest.getBusinessData().getInsuredObject().getPolicyCar().setUseYears(actualValueResp.getUseYears());
+                quotedPriceRequest.getHead().setTransCode(TransCode.QUOTE_PRICE);
                 quotedPriceResponse = zmCrawlerRequestComponent.quotedPrice(quotedPriceRequest);
             }
         }
@@ -208,10 +223,10 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
             if(dateTime.getHour() == 0 && dateTime.getMinute() == 0){
                 return dateTime.format(formatter);
             }else{
-                dateTime = dateTime.plusDays(1)
-                        .withHour(0)
-                        .withMinute(0)
-                        .withSecond(0);
+//                dateTime = dateTime.plusDays(1)
+//                        .withHour(0)
+//                        .withMinute(0)
+//                        .withSecond(0);
                 return dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
 
             }
@@ -227,10 +242,14 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
         if (startTime != null) {
             try {
                 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
-                LocalDateTime endTime = LocalDateTime.parse(startTime, formatter);
-                LocalDateTime targetTime = endTime
-                        .plus(1, ChronoUnit.YEARS)
-                        .minus(1, ChronoUnit.SECONDS);
+                LocalDateTime time = LocalDateTime.parse(startTime, formatter);
+                LocalDateTime targetTime;
+
+                if (time.getHour() == 0 && time.getMinute() == 0 && time.getSecond() == 0) {
+                    targetTime = time.plusYears(1).minusSeconds(1);
+                } else {
+                    targetTime = time.plusYears(1);
+                }
                 return targetTime.format(formatter);
             } catch (Exception e) {
                 e.printStackTrace();