Просмотр исходного кода

永诚构造险种信息 中煤处理商业险重复投保

Qchen 3 месяцев назад
Родитель
Сommit
e3624ae70d

+ 21 - 2
tenant/insurance/quotation-yongcheng/src/main/java/com/jzg/quotation/yongcheng/api/service/impl/YongChengApiRequestImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
+import com.jzg.commons.constants.ProductsType;
 import com.jzg.commons.constants.dict.InsOrderStatusEnum;
 import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.entity.agreement.po.PtlAgreementUrl;
@@ -420,8 +421,8 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
 
     public static QuoteResultsVo buildQuoteRespVo(String ordersNo, QuoteResponse rd, QuoteVo quoteVo) {
         QuoteResultsVo quoteRespVo = new QuoteResultsVo();
-        quoteRespVo.setCiRiskInfoVo(quoteVo.getCiRiskInfoVo());
-        quoteRespVo.setBiRiskInfoVo(quoteVo.getBiRiskInfoVo());
+        quoteRespVo.setCiRiskInfoVo(buildCiInfo(rd));
+        quoteRespVo.setBiRiskInfoVo(buildBiInfo(rd));
         quoteRespVo.setQuoteStatusEnum(InsOrderStatusEnum.WAIT_AUDIT);
 
         if (!"000000".equals(rd.getHead().getErrorCode())) {
@@ -530,6 +531,24 @@ public class YongChengApiRequestImpl implements YongChengApiRequest {
         return quoteRespVo;
     }
 
+    public static RiskInfoVo buildCiInfo(QuoteResponse rd) {
+        RiskInfoVo ciRiskInfoVo = new RiskInfoVo();
+        ciRiskInfoVo.setRiskCode("0507");
+        ciRiskInfoVo.setStartDate(rd.getBase().getTInsrncBgnTmJQ());
+        ciRiskInfoVo.setEndDate(rd.getBase().getTInsrncEndTmJQ());
+        ciRiskInfoVo.setInstantFlag(rd.getBase().getTInsrncBgnTmJQ() !=null && rd.getBase().getTInsrncBgnTmJQ().endsWith("00:00:00"));
+        return ciRiskInfoVo;
+    }
+    public static RiskInfoVo buildBiInfo(QuoteResponse rd) {
+        RiskInfoVo biRiskInfoVo = new RiskInfoVo();
+        biRiskInfoVo.setRiskCode("0510");
+        biRiskInfoVo.setStartDate(rd.getBase().getTInsrncBgnTmSY());
+        biRiskInfoVo.setEndDate(rd.getBase().getTInsrncEndTmSY());
+        biRiskInfoVo.setInstantFlag(rd.getBase().getTInsrncBgnTmSY() != null && rd.getBase().getTInsrncBgnTmSY().endsWith("00:00:00"));
+        return biRiskInfoVo;
+    }
+
+
     public static List<KindInfoVo> buildQuoteKindList(QuoteResponse rd,List<KindInfoVo> kindInfoVos) {
 
         if (null == rd.getCvrgListSY() || null == rd.getCvrgListSY().getCvrgSY()) {

+ 14 - 2
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/entity/Request/ZmCrawlerActualValueRequest.java

@@ -1,6 +1,7 @@
 package com.jzg.quotation.zhongmei.crawler.entity.Request;
 
 import com.jzg.commons.entity.quote.vo.CarInfoVo;
+import com.jzg.commons.entity.quote.vo.QuoteVo;
 import com.jzg.commons.entity.quote.vo.RiskInfoVo;
 import com.jzg.quotation.commons.utils.DateUtil;
 import com.jzg.quotation.zhongmei.api.entity.BaseRequestHead;
@@ -92,10 +93,16 @@ public class ZmCrawlerActualValueRequest extends BaseRequest {
      */
     private String modelCode;
 
-    public ZmCrawlerActualValueRequest(CarInfoVo carInfoVo, ZmCrawlerModelQueryResponse.FullCarDataDTO fullCarDataDTO, BaseRequestHead head, String startDate) throws ParseException {
+    public ZmCrawlerActualValueRequest(CarInfoVo carInfoVo, ZmCrawlerModelQueryResponse.FullCarDataDTO fullCarDataDTO, BaseRequestHead head, QuoteVo quoteVo) throws ParseException {
         this.setHead(head);
         this.approvedPassengersCapacity = Integer.parseInt(carInfoVo.getSeatCount());
         // 校验时间  按 投保日期计算
+        String startDate;
+        if (quoteVo.getBiRiskInfoVo() != null) {
+            startDate = quoteVo.getBiRiskInfoVo().getStartDate();
+        } else {
+            startDate = quoteVo.getCiRiskInfoVo().getStartDate();
+        }
         this.validDate = DateUtil.getDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(startDate), DateUtil.FULL_TIME_SPLIT_PATTERN);
         this.purchasePrice = fullCarDataDTO.getFullCarData().getPurchasePrice();
         this.motorUsageTypeCode = carInfoVo.getCarNatureCode();
@@ -115,7 +122,12 @@ public class ZmCrawlerActualValueRequest extends BaseRequest {
         this.registerDate = carInfoVo.getRegisterDate() + " 00:00:00";
         this.carUseType = carInfoVo.getVehicleUseCode();
         this.motorMainType = carInfoVo.getCarKindCode();
-        this.motorSubType = "101";
+        if (carInfoVo.getCarKindCode().equals("100")) {
+            this.motorSubType = "101";
+        }
+        if (carInfoVo.getCarKindCode().equals("200")){
+            this.motorSubType =fullCarDataDTO.getMotorSubType();
+        }
         this.modelCode = fullCarDataDTO.getFullCarData().getLocalModelCode();
         this.energyTypeCode = carInfoVo.getEnergyTypeCode();
     }

+ 2 - 0
tenant/insurance/quotation-zhongmei/src/main/java/com/jzg/quotation/zhongmei/crawler/entity/Response/ZmCrawlerQuotedPriceResponse.java

@@ -1269,6 +1269,8 @@ public class ZmCrawlerQuotedPriceResponse extends BaseResponse {
 
                 @JsonProperty("updateTime")
                 private String updateTime;
+                @JsonProperty("answer")
+                private String answer;
             }
 
             @Data