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

紫金:调整保存报价信息和保存保单接口

wangrq пре 3 месеци
родитељ
комит
5ebfad05af

+ 3 - 4
tenant/insurance/quotation-taikang/src/main/java/com/jzg/quotation/taikang/crawler/service/TKSimpleService.java

@@ -953,8 +953,7 @@ public class TKSimpleService {
      * @param session
      * @param session
      * @param mainOrderId
      * @param mainOrderId
      */
      */
-    public PreciseInitResult orderInit(TKLoginSession session,
-                                       String mainOrderId) {
+    public PreciseInitResult orderInit(TKLoginSession session, String mainOrderId) {
         PreciseInitResult preciseInitResult = httpService.preciseInitToInit(session.getToken(), session.getTplatformId(), session.getTplatLoginKey(), mainOrderId);
         PreciseInitResult preciseInitResult = httpService.preciseInitToInit(session.getToken(), session.getTplatformId(), session.getTplatLoginKey(), mainOrderId);
         if (preciseInitResult == null) {
         if (preciseInitResult == null) {
             throw new RuntimeException("HttpService#preciseInitToInit 失败!");
             throw new RuntimeException("HttpService#preciseInitToInit 失败!");
@@ -1135,6 +1134,8 @@ public class TKSimpleService {
                 driverAccidentVo.setQuantity(0);
                 driverAccidentVo.setQuantity(0);
                 driverAccidentVo.setQuantityCname("不投保");
                 driverAccidentVo.setQuantityCname("不投保");
                 driverAccidentVo.setPremium(BigDecimal.ZERO);
                 driverAccidentVo.setPremium(BigDecimal.ZERO);
+                driverAccidentVo.setNonCarStartDate(null);
+                driverAccidentVo.setNonCarEndDate(null);
             }
             }
         }
         }
 
 
@@ -1156,8 +1157,6 @@ public class TKSimpleService {
         preciseInitParam.setTplatLoginKey(tplatLoginKey);
         preciseInitParam.setTplatLoginKey(tplatLoginKey);
         preciseInitParam.setOrderID(mainOrderId);
         preciseInitParam.setOrderID(mainOrderId);
         preciseInitParam.setRiskType("0808");
         preciseInitParam.setRiskType("0808");
-        // orderVersion = 1
-        preciseInitParam.setOrderVersion("1");
         PreciseInitResult preciseQuoteResult = httpService.preciseInitToQuote(session.getToken(), preciseInitParam);
         PreciseInitResult preciseQuoteResult = httpService.preciseInitToQuote(session.getToken(), preciseInitParam);
 
 
         if (preciseQuoteResult == null) {
         if (preciseQuoteResult == null) {

+ 71 - 30
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/build/ZiJinCrawlerQuoteResultsVoBuild.java

@@ -5,6 +5,8 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.nacos.common.utils.CollectionUtils;
 import com.alibaba.nacos.common.utils.CollectionUtils;
 import com.jzg.commons.constants.dict.InsOrderStatusEnum;
 import com.jzg.commons.constants.dict.InsOrderStatusEnum;
+import com.jzg.commons.entity.po.InsFeeOrders;
+import com.jzg.commons.entity.quote.vo.ExpenseFactor;
 import com.jzg.commons.entity.quote.vo.KindInfoVo;
 import com.jzg.commons.entity.quote.vo.KindInfoVo;
 import com.jzg.commons.entity.quote.vo.QuoteVo;
 import com.jzg.commons.entity.quote.vo.QuoteVo;
 import com.jzg.commons.entity.quote.vo.RiskInfoVo;
 import com.jzg.commons.entity.quote.vo.RiskInfoVo;
@@ -13,9 +15,11 @@ import com.jzg.commons.util.DateTimeUtils;
 import com.jzg.commons.util.StringUtils;
 import com.jzg.commons.util.StringUtils;
 import com.jzg.quotation.zijin.api.constant.enums.RiskCodeEnum;
 import com.jzg.quotation.zijin.api.constant.enums.RiskCodeEnum;
 import com.jzg.quotation.zijin.crawler.entity.response.ZiJinCrawlerQuotationResponse;
 import com.jzg.quotation.zijin.crawler.entity.response.ZiJinCrawlerQuotationResponse;
+import com.jzg.quotation.zijin.crawler.entity.response.ZiJinCrawlerSaveProposalResponse;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.util.ObjectUtils;
 import org.springframework.util.ObjectUtils;
 
 
+import java.math.BigDecimal;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
 import java.util.Objects;
 import java.util.Objects;
@@ -49,20 +53,20 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
      * 处理报价结果
      * 处理报价结果
      *
      *
      * @param ordersNo
      * @param ordersNo
-     * @param quoteVo
      * @param ziJinCrawlerQuotationResponse
      * @param ziJinCrawlerQuotationResponse
+     * @param ziJinCrawlerSaveProposalResponse
      * @return QuoteResultsVo
      * @return QuoteResultsVo
      */
      */
-    public static QuoteResultsVo buildQuoteResultsVo(String ordersNo, QuoteVo quoteVo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse) {
+    public static QuoteResultsVo buildQuoteResultsVo(String ordersNo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse, ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse) {
         QuoteResultsVo quoteResultsVo = new QuoteResultsVo();
         QuoteResultsVo quoteResultsVo = new QuoteResultsVo();
         quoteResultsVo.setOrdersNo(ordersNo);
         quoteResultsVo.setOrdersNo(ordersNo);
 
 
         if (ziJinCrawlerQuotationResponse.getItemKindList() != null) {
         if (ziJinCrawlerQuotationResponse.getItemKindList() != null) {
-            // 设置交强险信息
+            // 设置交强险投保时间信息
             quoteResultsVo.setCiRiskInfoVo(buildCiRiskInfoVo(ziJinCrawlerQuotationResponse));
             quoteResultsVo.setCiRiskInfoVo(buildCiRiskInfoVo(ziJinCrawlerQuotationResponse));
-            // 设置商业险信息
+            // 设置商业险投保时间信息
             quoteResultsVo.setBiRiskInfoVo(buildBiRiskInfoVo(ziJinCrawlerQuotationResponse));
             quoteResultsVo.setBiRiskInfoVo(buildBiRiskInfoVo(ziJinCrawlerQuotationResponse));
-            // 设置驾意险信息
+            // 设置驾意险投保时间信息
             // quoteResultsVo.setJyRiskInfoVo(buildJyRiskInfoVo(ziJinCrawlerQuotationResponse));
             // quoteResultsVo.setJyRiskInfoVo(buildJyRiskInfoVo(ziJinCrawlerQuotationResponse));
             // 设置险种明细列表
             // 设置险种明细列表
             quoteResultsVo.setKindInfoVo(buildKindInfoVoList(ziJinCrawlerQuotationResponse));
             quoteResultsVo.setKindInfoVo(buildKindInfoVoList(ziJinCrawlerQuotationResponse));
@@ -72,10 +76,19 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
         buildPremium(quoteResultsVo, ziJinCrawlerQuotationResponse);
         buildPremium(quoteResultsVo, ziJinCrawlerQuotationResponse);
 
 
         // 设置投保单号
         // 设置投保单号
-        // if (ziJinCrawlerQuotationResponse.getBasePart() != null) {
-        //     quoteResultsVo.setCiPolicyNumber(ziJinCrawlerQuotationResponse.getBasePart().getProposalCheckNo());
-        //     quoteResultsVo.setBiPolicyNumber(ziJinCrawlerQuotationResponse.getBasePart().getProposalCheckNo());
-        // }
+        if (ziJinCrawlerSaveProposalResponse != null && ziJinCrawlerSaveProposalResponse.getData() != null) {
+            ZiJinCrawlerSaveProposalResponse.Data data = ziJinCrawlerSaveProposalResponse.getData();
+            quoteResultsVo.setCiPolicyNumber(data.getProposalNoCI());
+            quoteResultsVo.setBiPolicyNumber(data.getProposalNo());
+
+            // 费用信息
+            if (data.getFeeImformationDto() != null) {
+                InsFeeOrders insFeeOrders = new InsFeeOrders();
+                insFeeOrders.setJqCommissionPremium(new BigDecimal(data.getFeeImformationDto().getJqFeeRatio()));
+                insFeeOrders.setSyCommissionPremium(new BigDecimal(data.getFeeImformationDto().getSyFeeRatio()));
+                quoteResultsVo.setFeeOrders(insFeeOrders);
+            }
+        }
 
 
         // 设置警告消息(预核保消息)
         // 设置警告消息(预核保消息)
         if (ziJinCrawlerQuotationResponse.getBasePart() != null) {
         if (ziJinCrawlerQuotationResponse.getBasePart() != null) {
@@ -87,6 +100,16 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
         // 设置评分
         // 设置评分
         quoteResultsVo.setScoreVo(ZiJinCrawlerQuoteResultsVoBuild.buildScoreVo(ziJinCrawlerQuotationResponse));
         quoteResultsVo.setScoreVo(ZiJinCrawlerQuoteResultsVoBuild.buildScoreVo(ziJinCrawlerQuotationResponse));
 
 
+        // 构建因子
+        // ZiJinCrawlerQuotationResponse.PriceInfoList priceInfo = ziJinCrawlerQuotationResponse.getPriceInfoList().get(0);
+        // ExpenseFactor expenseFactor = new ExpenseFactor(null, priceInfo.getEffectNameUPOne(), priceInfo.getEffectValueUPOne());
+        // ExpenseFactor expenseFactor2 = new ExpenseFactor(null, priceInfo.getEffectNameUPTwo(), priceInfo.getEffectValueUPTwo());
+        // ExpenseFactor expenseFactor3 = new ExpenseFactor(null, priceInfo.getEffectNameUPThree(), priceInfo.getEffectValueUPThree());
+        // ExpenseFactor expenseFactor4 = new ExpenseFactor(null, priceInfo.getEffectNameDownFour(), priceInfo.getEffectValueDownFour());
+        // ExpenseFactor expenseFactor5 = new ExpenseFactor(null, priceInfo.getEffectNameDownFive(), priceInfo.getEffectValueDownFive());
+        // ExpenseFactor expenseFactor6 = new ExpenseFactor(null, priceInfo.getEffectNameDownSix(), priceInfo.getEffectValueDownSix());
+        // quoteResultsVo.setExpenseFactors();
+
         // 设置报价状态:待核保
         // 设置报价状态:待核保
         quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.WAIT_AUDIT);
         quoteResultsVo.setQuoteStatusEnum(InsOrderStatusEnum.WAIT_AUDIT);
 
 
@@ -289,7 +312,7 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
         scoreArray.add(new JSONObject()
         scoreArray.add(new JSONObject()
                 .fluentPut("scoreName", "连续承保期间出险次数")
                 .fluentPut("scoreName", "连续承保期间出险次数")
                 .fluentPut("scoreKey", "claimTimes")
                 .fluentPut("scoreKey", "claimTimes")
-                .fluentPut("score", ciProfitDetailData  != null ? ciProfitDetailData.getClaimTimes() : null));
+                .fluentPut("score", ciProfitDetailData != null ? ciProfitDetailData.getClaimTimes() : null));
         scoreArray.add(new JSONObject()
         scoreArray.add(new JSONObject()
                 .fluentPut("scoreName", "总折扣")
                 .fluentPut("scoreName", "总折扣")
                 .fluentPut("scoreKey", "initialELR")
                 .fluentPut("scoreKey", "initialELR")
@@ -359,26 +382,44 @@ public class ZiJinCrawlerQuoteResultsVoBuild {
         scoreVo.setScoreJson(scoreArray);
         scoreVo.setScoreJson(scoreArray);
 
 
         // 影响因子
         // 影响因子
-        scoreArray.add(new JSONObject()
-                .fluentPut("scoreName", "NCD")// 升费因子名称
-                .fluentPut("scoreKey", "effectValueUPOne")
-                .fluentPut("score", priceInfo.getEffectValueUPOne()));// 因子比例
-        scoreArray.add(new JSONObject()
-                .fluentPut("scoreName", "性别年龄")
-                .fluentPut("scoreKey", "effectValueUPTwo")
-                .fluentPut("score", priceInfo.getEffectValueUPTwo()));
-        scoreArray.add(new JSONObject()
-                .fluentPut("scoreName", "车牌")
-                .fluentPut("scoreKey", "effectValueUPThree")
-                .fluentPut("score", priceInfo.getEffectValueUPThree()));
-        scoreArray.add(new JSONObject()
-                .fluentPut("scoreName", "是否投保医保外用药")
-                .fluentPut("scoreKey", "effectValueDownFour")
-                .fluentPut("score", priceInfo.getEffectValueDownFour()));
-        scoreArray.add(new JSONObject()
-                .fluentPut("scoreName", "平台分")
-                .fluentPut("scoreKey", "effectValueDownFive")
-                .fluentPut("score", priceInfo.getEffectValueDownFive()));
+        // 升费因子名称       // 因子比例
+        if (StringUtils.isNotEmpty(priceInfo.getEffectNameUPOne())) {
+            scoreArray.add(new JSONObject()
+                    .fluentPut("scoreName", priceInfo.getEffectNameUPOne())
+                    .fluentPut("scoreKey", "effectValueUPOne")
+                    .fluentPut("score", priceInfo.getEffectValueUPOne()));
+        }
+        if (StringUtils.isNotEmpty(priceInfo.getEffectNameUPTwo())) {
+            scoreArray.add(new JSONObject()
+                    .fluentPut("scoreName", priceInfo.getEffectNameUPTwo())
+                    .fluentPut("scoreKey", "effectValueUPTwo")
+                    .fluentPut("score", priceInfo.getEffectValueUPTwo()));
+        }
+        if (StringUtils.isNotEmpty(priceInfo.getEffectNameUPThree())) {
+            scoreArray.add(new JSONObject()
+                    .fluentPut("scoreName", priceInfo.getEffectNameUPThree())
+                    .fluentPut("scoreKey", "effectValueUPThree")
+                    .fluentPut("score", priceInfo.getEffectValueUPThree()));
+        }
+        // 降费因子名称       // 因子比例
+        if (StringUtils.isNotEmpty(priceInfo.getEffectNameDownFour())) {
+            scoreArray.add(new JSONObject()
+                    .fluentPut("scoreName", priceInfo.getEffectNameDownFour())
+                    .fluentPut("scoreKey", "effectValueDownFour")
+                    .fluentPut("score", priceInfo.getEffectValueDownFour()));
+        }
+        if (StringUtils.isNotEmpty(priceInfo.getEffectNameDownFive())) {
+            scoreArray.add(new JSONObject()
+                    .fluentPut("scoreName", priceInfo.getEffectNameDownFive())
+                    .fluentPut("scoreKey", "effectValueDownFive")
+                    .fluentPut("score", priceInfo.getEffectValueDownFive()));
+        }
+        if (StringUtils.isNotEmpty(priceInfo.getEffectNameDownSix())) {
+            scoreArray.add(new JSONObject()
+                    .fluentPut("scoreName", priceInfo.getEffectNameDownSix())
+                    .fluentPut("scoreKey", "effectValueDownSix")
+                    .fluentPut("score", priceInfo.getEffectValueDownSix()));
+        }
         scoreVo.setScoreJson(scoreArray);
         scoreVo.setScoreJson(scoreArray);
         return scoreVo;
         return scoreVo;
     }
     }

+ 6 - 3
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/build/ZiJinCrawlerSaveQuoteInfoRequestBuild.java

@@ -32,17 +32,17 @@ public class ZiJinCrawlerSaveQuoteInfoRequestBuild {
      *
      *
      * @return 构建完成的保存报价信息请求对象
      * @return 构建完成的保存报价信息请求对象
      */
      */
-    public ZiJinCrawlerSaveQuoteInfoRequest buildSaveQuoteInfoRequest(QuoteVo quoteVo, ZiJinCrawlerQuotationRequest ziJinCrawlerQuotationRequest, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse) {
+    public ZiJinCrawlerSaveQuoteInfoRequest buildSaveQuoteInfoRequest(QuoteVo quoteVo, String orderNo, ZiJinCrawlerQuotationRequest ziJinCrawlerQuotationRequest, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse) {
         ZiJinCrawlerSaveQuoteInfoRequest ziJinCrawlerSaveQuoteInfoRequest = new ZiJinCrawlerSaveQuoteInfoRequest();
         ZiJinCrawlerSaveQuoteInfoRequest ziJinCrawlerSaveQuoteInfoRequest = new ZiJinCrawlerSaveQuoteInfoRequest();
 
 
         // 设置代理人代码
         // 设置代理人代码
         ziJinCrawlerSaveQuoteInfoRequest.setAgentCode(ziJinCrawlerQuotationRequest.getBaseInfo().getAgentCode());
         ziJinCrawlerSaveQuoteInfoRequest.setAgentCode(ziJinCrawlerQuotationRequest.getBaseInfo().getAgentCode());
 
 
         // 设置订单ID
         // 设置订单ID
-        ziJinCrawlerSaveQuoteInfoRequest.setOrderId(ziJinCrawlerQuotationResponse.getOrderId());
+        ziJinCrawlerSaveQuoteInfoRequest.setOrderId(ziJinCrawlerQuotationRequest.getOrderId());
 
 
         // 设置订单号
         // 设置订单号
-        ziJinCrawlerSaveQuoteInfoRequest.setOrderNo(ziJinCrawlerQuotationResponse.getOrderNo());
+        ziJinCrawlerSaveQuoteInfoRequest.setOrderNo(orderNo);
 
 
         // 设置基础信息
         // 设置基础信息
         ziJinCrawlerSaveQuoteInfoRequest.setBaseInfo(buildSaveBaseInfo(quoteVo, ziJinCrawlerQuotationRequest, ziJinCrawlerQuotationResponse));
         ziJinCrawlerSaveQuoteInfoRequest.setBaseInfo(buildSaveBaseInfo(quoteVo, ziJinCrawlerQuotationRequest, ziJinCrawlerQuotationResponse));
@@ -184,6 +184,7 @@ public class ZiJinCrawlerSaveQuoteInfoRequestBuild {
                 .carLoanFlag(carInfo.getCarLoanFlag())
                 .carLoanFlag(carInfo.getCarLoanFlag())
                 .certificateDate(carInfo.getCertificateDate() != null ? carInfo.getCertificateDate() : "")
                 .certificateDate(carInfo.getCertificateDate() != null ? carInfo.getCertificateDate() : "")
                 .chgOwnerFlag(carInfo.getChgOwnerFlag())
                 .chgOwnerFlag(carInfo.getChgOwnerFlag())
+                .colorCode(carInfo.getColorCode())
                 // .completekerbmass(carInfo.getCompletekerbmass() != null ? Integer.parseInt(carInfo.getCompletekerbmass()) : 0)
                 // .completekerbmass(carInfo.getCompletekerbmass() != null ? Integer.parseInt(carInfo.getCompletekerbmass()) : 0)
                 .completekerbmass(carInfo.getCompletekerbmass())
                 .completekerbmass(carInfo.getCompletekerbmass())
                 .ecdemicVehicleFlag(carInfo.getEcdemicVehicleFlag() != null ? carInfo.getEcdemicVehicleFlag() : "0")
                 .ecdemicVehicleFlag(carInfo.getEcdemicVehicleFlag() != null ? carInfo.getEcdemicVehicleFlag() : "0")
@@ -474,6 +475,8 @@ public class ZiJinCrawlerSaveQuoteInfoRequestBuild {
                 .handerCode(ziJinCrawlerQuotationRequest.getBaseInfo().getHanderCode())
                 .handerCode(ziJinCrawlerQuotationRequest.getBaseInfo().getHanderCode())
                 .handerName(ziJinCrawlerQuotationRequest.getBaseInfo().getHanderName())
                 .handerName(ziJinCrawlerQuotationRequest.getBaseInfo().getHanderName())
                 .calculateFlag(ziJinCrawlerQuotationRequest.getBaseInfo().getCalculateFlag())
                 .calculateFlag(ziJinCrawlerQuotationRequest.getBaseInfo().getCalculateFlag())
+                // .proposalNo("1050AA140105260004G3")
+                // .proposalNoCI("10590A14010526000HG8") // todo: 需要找到这2个单号哪来的?没有回导致保存保单接口失败
                 .isCI(quoteVo.getCiRiskInfoVo() != null)
                 .isCI(quoteVo.getCiRiskInfoVo() != null)
                 .isBI(quoteVo.getBiRiskInfoVo() != null)
                 .isBI(quoteVo.getBiRiskInfoVo() != null)
                 .riskCodeEnum(ZiJinCrawlerSaveQuoteInfoRequest.BaseInfo.RiskCodeEnum.builder()
                 .riskCodeEnum(ZiJinCrawlerSaveQuoteInfoRequest.BaseInfo.RiskCodeEnum.builder()

+ 2 - 1
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/component/ZiJinCrawlerRequestComponent.java

@@ -314,7 +314,8 @@ public class ZiJinCrawlerRequestComponent {
     public ZiJinCrawlerSaveProposalResponse saveProposal(ZiJinCrawlerSaveProposalRequest ziJinCrawlerSaveProposalRequest, HttpHeaders headers) throws IOException {
     public ZiJinCrawlerSaveProposalResponse saveProposal(ZiJinCrawlerSaveProposalRequest ziJinCrawlerSaveProposalRequest, HttpHeaders headers) throws IOException {
         String token = headers.getFirst("Authorization");
         String token = headers.getFirst("Authorization");
         HttpHeaders httpHeaders = setHttpHeaders(token);
         HttpHeaders httpHeaders = setHttpHeaders(token);
-
+        httpHeaders.remove("Cache-Control");
+        log.info("请求header信息:{}", httpHeaders);
         String jsonString = JSON.toJSONString(ziJinCrawlerSaveProposalRequest);
         String jsonString = JSON.toJSONString(ziJinCrawlerSaveProposalRequest);
         log.info("ziJinCrawlerSaveProposalRequest请求参数的值:{}", jsonString);
         log.info("ziJinCrawlerSaveProposalRequest请求参数的值:{}", jsonString);
         ResponseEntity<ZiJinCrawlerSaveProposalResponse> responseEntity = requestComponent.post(RequestUrl.SAVE_PROPOSAL_ORDER.getRequestUrl(ziJinCrawlerProperties.getBaseUrl()), jsonString, ZiJinCrawlerSaveProposalResponse.class, httpHeaders);
         ResponseEntity<ZiJinCrawlerSaveProposalResponse> responseEntity = requestComponent.post(RequestUrl.SAVE_PROPOSAL_ORDER.getRequestUrl(ziJinCrawlerProperties.getBaseUrl()), jsonString, ZiJinCrawlerSaveProposalResponse.class, httpHeaders);

+ 1 - 1
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/entity/ZiJinCrawlerConfigureParameters.java

@@ -39,7 +39,7 @@ public class ZiJinCrawlerConfigureParameters implements ConfigureParameters {
     /**
     /**
      * 代理code
      * 代理code
      */
      */
-    private String 代理code;
+    private String agentCode;
 
 
     /**
     /**
      * 渠道: 比如 个人代理
      * 渠道: 比如 个人代理

+ 9 - 0
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/entity/request/ZiJinCrawlerSaveQuoteInfoRequest.java

@@ -271,6 +271,12 @@ public class ZiJinCrawlerSaveQuoteInfoRequest implements Serializable {
         @JsonProperty("proposalCheckNo")
         @JsonProperty("proposalCheckNo")
         private String proposalCheckNo;
         private String proposalCheckNo;
 
 
+        @JsonProperty("proposalNo")
+        private String proposalNo;
+
+        @JsonProperty("proposalNoCI")
+        private String proposalNoCI;
+
         @JsonProperty("xbFlag")
         @JsonProperty("xbFlag")
         private String xbFlag;
         private String xbFlag;
 
 
@@ -936,6 +942,9 @@ public class ZiJinCrawlerSaveQuoteInfoRequest implements Serializable {
 
 
         @JsonProperty("modelEnergyType")
         @JsonProperty("modelEnergyType")
         private String modelEnergyType;
         private String modelEnergyType;
+
+        @JsonProperty("colorCode")
+        private String colorCode;
     }
     }
 
 
     /**
     /**

+ 3 - 1
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/service/ZiJinCrawlerOrderService.java

@@ -14,14 +14,16 @@ public interface ZiJinCrawlerOrderService {
 
 
     /**
     /**
      * 保存紫金财险爬虫订单
      * 保存紫金财险爬虫订单
+     *
      * @param quoteVo
      * @param quoteVo
      * @param ziJinCrawlerQuotationResponse
      * @param ziJinCrawlerQuotationResponse
      * @param success
      * @param success
      */
      */
-    void save(QuoteVo quoteVo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse, ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse, String orderId, boolean success);
+    void save(QuoteVo quoteVo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse, ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse, String orderNo, String orderId, boolean success);
 
 
     /**
     /**
      * 根据系统内部订单号查询紫金财险爬虫订单
      * 根据系统内部订单号查询紫金财险爬虫订单
+     *
      * @param ordersNo
      * @param ordersNo
      * @return ZiJinCrawlerOrder
      * @return ZiJinCrawlerOrder
      */
      */

+ 4 - 5
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/service/impl/ZiJinCrawlerOrderServiceImpl.java

@@ -34,19 +34,18 @@ public class ZiJinCrawlerOrderServiceImpl implements ZiJinCrawlerOrderService {
      * @param success
      * @param success
      */
      */
     @Override
     @Override
-    public void save(QuoteVo quoteVo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse, ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse, String orderId, boolean success) {
+    public void save(QuoteVo quoteVo, ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse, ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse, String orderNo, String orderId, boolean success) {
         ZiJinCrawlerOrder order = new ZiJinCrawlerOrder();
         ZiJinCrawlerOrder order = new ZiJinCrawlerOrder();
         order.setOrdersNo(quoteVo.getOrder().getOrdersNo());
         order.setOrdersNo(quoteVo.getOrder().getOrdersNo());
-        order.setOrderNo(ObjectUtils.isEmpty(ziJinCrawlerQuotationResponse.getOrderNo()) ? ziJinCrawlerSaveProposalResponse.getData().getOrderNo() : ziJinCrawlerQuotationResponse.getOrderNo());
+        // 报价接口没有返回订单号, 报价保存方法save方法成功后返回订单号
+        order.setOrderNo(orderNo);
         order.setBusUniqueId(orderId);
         order.setBusUniqueId(orderId);
         order.setQuoteSuccess(success);
         order.setQuoteSuccess(success);
-        if (success && ziJinCrawlerSaveProposalResponse != null) {
+        if (success) {
             order.setCiApplyNo(ziJinCrawlerSaveProposalResponse.getData().getProposalNoCI());
             order.setCiApplyNo(ziJinCrawlerSaveProposalResponse.getData().getProposalNoCI());
             order.setCiPolicyNo(ziJinCrawlerSaveProposalResponse.getData().getPolicyNoCI());
             order.setCiPolicyNo(ziJinCrawlerSaveProposalResponse.getData().getPolicyNoCI());
-            // order.setCiPremium(ziJinCrawlerQuotationResponse.getData().getTrafficPolicy().getPremium());
             order.setSyApplyNo(ziJinCrawlerSaveProposalResponse.getData().getProposalNo());
             order.setSyApplyNo(ziJinCrawlerSaveProposalResponse.getData().getProposalNo());
             order.setBiPolicyNo(ziJinCrawlerSaveProposalResponse.getData().getPolicyNo());
             order.setBiPolicyNo(ziJinCrawlerSaveProposalResponse.getData().getPolicyNo());
-            // order.setBiPremium(ziJinCrawlerQuotationResponse.getData().getBusinessPolicy().getPremium());
         }
         }
 
 
         order.setCreateTime(LocalDateTime.now());
         order.setCreateTime(LocalDateTime.now());

+ 26 - 28
tenant/insurance/quotation-zijin/src/main/java/com/jzg/quotation/zijin/crawler/service/impl/ZiJinCrawlerRequestImpl.java

@@ -22,7 +22,6 @@ import com.jzg.quotation.commons.utils.DateTimeUtil;
 import com.jzg.quotation.commons.utils.TimeProcessing;
 import com.jzg.quotation.commons.utils.TimeProcessing;
 import com.jzg.quotation.zijin.api.constant.enums.MotorVehicleInsuranceEnum;
 import com.jzg.quotation.zijin.api.constant.enums.MotorVehicleInsuranceEnum;
 import com.jzg.quotation.zijin.api.constant.enums.RiskCodeEnum;
 import com.jzg.quotation.zijin.api.constant.enums.RiskCodeEnum;
-import com.jzg.quotation.zijin.api.entity.request.UploadImageInfoListRequest;
 import com.jzg.quotation.zijin.crawler.build.ZiJinCrawlerQuoteRequestBuild;
 import com.jzg.quotation.zijin.crawler.build.ZiJinCrawlerQuoteRequestBuild;
 import com.jzg.quotation.zijin.crawler.build.ZiJinCrawlerQuoteResultsVoBuild;
 import com.jzg.quotation.zijin.crawler.build.ZiJinCrawlerQuoteResultsVoBuild;
 import com.jzg.quotation.zijin.crawler.build.ZiJinCrawlerSaveQuoteInfoRequestBuild;
 import com.jzg.quotation.zijin.crawler.build.ZiJinCrawlerSaveQuoteInfoRequestBuild;
@@ -181,7 +180,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
             }
             }
             ziJinCrawlerQuotationRequest.setItemKindList(buildItemKindList(quoteVo, actualValue));
             ziJinCrawlerQuotationRequest.setItemKindList(buildItemKindList(quoteVo, actualValue));
 
 
-            // 设置附加保单信息列表
+            // 设置附加保单信息列表(推荐产品、驾意险、健康险、责任险、家财险、企业财产险)
             ziJinCrawlerQuotationRequest.setCarPolicySubInfoList(buildCarPolicySubInfoList(quoteVo));
             ziJinCrawlerQuotationRequest.setCarPolicySubInfoList(buildCarPolicySubInfoList(quoteVo));
 
 
             // 设置车辆信息
             // 设置车辆信息
@@ -201,8 +200,6 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
             log.info("ziJinCrawlerQuotationRequest参数:{}", JSON.toJSONString(ziJinCrawlerQuotationRequest));
             log.info("ziJinCrawlerQuotationRequest参数:{}", JSON.toJSONString(ziJinCrawlerQuotationRequest));
             ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse = ziJinCrawlerRequestComponent.quotation(ziJinCrawlerQuotationRequest, headers);
             ZiJinCrawlerQuotationResponse ziJinCrawlerQuotationResponse = ziJinCrawlerRequestComponent.quotation(ziJinCrawlerQuotationRequest, headers);
             log.info("ziJinCrawlerQuotationResponse响应:{}", JSON.toJSONString(ziJinCrawlerQuotationResponse));
             log.info("ziJinCrawlerQuotationResponse响应:{}", JSON.toJSONString(ziJinCrawlerQuotationResponse));
-            // 设置紫金财险爬虫订单号,后面保存到数据库中
-            ziJinCrawlerQuotationResponse.setOrderNo(ziJinCrawlerGetOrderNoResponse.getOrderNo());
 
 
             // 重复投保,延保
             // 重复投保,延保
             if (ResponseCode.R_0002.getCode().equals(ziJinCrawlerQuotationResponse.getRtnCode()) && ziJinCrawlerQuotationResponse.getRtnMsg() != null && ziJinCrawlerQuotationResponse.getRtnMsg().contains("重复投保")) {
             if (ResponseCode.R_0002.getCode().equals(ziJinCrawlerQuotationResponse.getRtnCode()) && ziJinCrawlerQuotationResponse.getRtnMsg() != null && ziJinCrawlerQuotationResponse.getRtnMsg().contains("重复投保")) {
@@ -238,12 +235,12 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
 
 
             // 4.0 处理报价失败
             // 4.0 处理报价失败
             if (!ResponseCode.R_0000.getCode().equals(ziJinCrawlerQuotationResponse.getRtnCode())) {
             if (!ResponseCode.R_0000.getCode().equals(ziJinCrawlerQuotationResponse.getRtnCode())) {
-                ziJinCrawlerOrderService.save(quoteVo, ziJinCrawlerQuotationResponse, null, ziJinCrawlerQuotationRequest.getOrderId(), false);
+                ziJinCrawlerOrderService.save(quoteVo, ziJinCrawlerQuotationResponse, null, null, ziJinCrawlerQuotationRequest.getOrderId(), false);
                 return ZiJinCrawlerQuoteResultsVoBuild.buildQuoteFailResultsVo(ziJinCrawlerQuotationResponse);
                 return ZiJinCrawlerQuoteResultsVoBuild.buildQuoteFailResultsVo(ziJinCrawlerQuotationResponse);
             } else {
             } else {
                 // 报价成功
                 // 报价成功
                 // 保存报价信息
                 // 保存报价信息
-                ZiJinCrawlerSaveQuoteInfoRequest ziJinCrawlerSaveQuoteInfoRequest = ziJinCrawlerSaveQuoteInfoRequestBuild.buildSaveQuoteInfoRequest(quoteVo, ziJinCrawlerQuotationRequest, ziJinCrawlerQuotationResponse);
+                ZiJinCrawlerSaveQuoteInfoRequest ziJinCrawlerSaveQuoteInfoRequest = ziJinCrawlerSaveQuoteInfoRequestBuild.buildSaveQuoteInfoRequest(quoteVo, ziJinCrawlerGetOrderNoResponse.getOrderNo(), ziJinCrawlerQuotationRequest, ziJinCrawlerQuotationResponse);
                 log.info("ziJinCrawlerSaveQuoteInfoRequest参数:{}", JSON.toJSONString(ziJinCrawlerSaveQuoteInfoRequest));
                 log.info("ziJinCrawlerSaveQuoteInfoRequest参数:{}", JSON.toJSONString(ziJinCrawlerSaveQuoteInfoRequest));
                 ZiJinCrawlerSaveQuoteInfoResponse ziJinCrawlerSaveQuoteInfoResponse = ziJinCrawlerRequestComponent.saveQuoteInformation(ziJinCrawlerSaveQuoteInfoRequest, headers);
                 ZiJinCrawlerSaveQuoteInfoResponse ziJinCrawlerSaveQuoteInfoResponse = ziJinCrawlerRequestComponent.saveQuoteInformation(ziJinCrawlerSaveQuoteInfoRequest, headers);
                 log.info("ziJinCrawlerSaveQuoteInfoResponse响应:{}", JSON.toJSONString(ziJinCrawlerSaveQuoteInfoResponse));
                 log.info("ziJinCrawlerSaveQuoteInfoResponse响应:{}", JSON.toJSONString(ziJinCrawlerSaveQuoteInfoResponse));
@@ -256,8 +253,8 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
                 ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse = ziJinCrawlerRequestComponent.saveProposal(ziJinCrawlerSaveProposalRequest, headers);
                 ZiJinCrawlerSaveProposalResponse ziJinCrawlerSaveProposalResponse = ziJinCrawlerRequestComponent.saveProposal(ziJinCrawlerSaveProposalRequest, headers);
                 log.info("ziJinCrawlerSaveProposalResponse参数的值:{}", JSON.toJSONString(ziJinCrawlerSaveProposalResponse));
                 log.info("ziJinCrawlerSaveProposalResponse参数的值:{}", JSON.toJSONString(ziJinCrawlerSaveProposalResponse));
 
 
-                ziJinCrawlerOrderService.save(quoteVo, ziJinCrawlerQuotationResponse, ziJinCrawlerSaveProposalResponse, ziJinCrawlerQuotationRequest.getOrderId(), true);
-                return ZiJinCrawlerQuoteResultsVoBuild.buildQuoteResultsVo(quoteVo.getOrder().getOrdersNo(), quoteVo, ziJinCrawlerQuotationResponse);
+                ziJinCrawlerOrderService.save(quoteVo, ziJinCrawlerQuotationResponse, ziJinCrawlerSaveProposalResponse, ziJinCrawlerSaveQuoteInfoResponse.getOrderNo(), ziJinCrawlerQuotationRequest.getOrderId(), true);
+                return ZiJinCrawlerQuoteResultsVoBuild.buildQuoteResultsVo(quoteVo.getOrder().getOrdersNo(), ziJinCrawlerQuotationResponse, ziJinCrawlerSaveProposalResponse);
             }
             }
         } catch (Exception e) {
         } catch (Exception e) {
             e.printStackTrace();
             e.printStackTrace();
@@ -292,7 +289,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
 
 
         UnderwritingResultsVo underwritingResultsVo = new UnderwritingResultsVo();
         UnderwritingResultsVo underwritingResultsVo = new UnderwritingResultsVo();
         // 核保成功
         // 核保成功
-        if ("0000".equals(ziJinCrawlerUnderwritingResponse.getRtnCode())) {
+        if ("0000" .equals(ziJinCrawlerUnderwritingResponse.getRtnCode())) {
             underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
             underwritingResultsVo.setUnderwritingStatus(InsOrderStatusEnum.PAY_PENDING);
             underwritingResultsVo.setJqApplyNo(ziJinCrawlerUnderwritingResponse.getData().getResultObj().getProposalNoCI());
             underwritingResultsVo.setJqApplyNo(ziJinCrawlerUnderwritingResponse.getData().getResultObj().getProposalNoCI());
             underwritingResultsVo.setSyApplyNo(ziJinCrawlerUnderwritingResponse.getData().getResultObj().getProposalNo());
             underwritingResultsVo.setSyApplyNo(ziJinCrawlerUnderwritingResponse.getData().getResultObj().getProposalNo());
@@ -342,7 +339,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
             log.info("ziJinCrawlerPaymentLinkResponse参数的值:{}", JSON.toJSONString(ziJinCrawlerPaymentLinkResponse));
             log.info("ziJinCrawlerPaymentLinkResponse参数的值:{}", JSON.toJSONString(ziJinCrawlerPaymentLinkResponse));
             PaymentLinkResultsVo paymentLinkResultsVo = new PaymentLinkResultsVo();
             PaymentLinkResultsVo paymentLinkResultsVo = new PaymentLinkResultsVo();
             // 支付链接获取成功
             // 支付链接获取成功
-            if ("0000".equals(ziJinCrawlerPaymentLinkResponse.getRtnCode())) {
+            if ("0000" .equals(ziJinCrawlerPaymentLinkResponse.getRtnCode())) {
                 paymentLinkResultsVo.setPayLinkStatus(true);
                 paymentLinkResultsVo.setPayLinkStatus(true);
                 paymentLinkResultsVo.setPaymentLink(ziJinCrawlerPaymentLinkResponse.getWechatUrl());
                 paymentLinkResultsVo.setPaymentLink(ziJinCrawlerPaymentLinkResponse.getWechatUrl());
             } else {
             } else {
@@ -435,7 +432,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
                 ZiJinCrawlerImageUploadResponse ziJinCrawlerImageUploadResponse = ziJinCrawlerRequestComponent.uploadImage(ziJinCrawlerImageUploadRequest, headers);
                 ZiJinCrawlerImageUploadResponse ziJinCrawlerImageUploadResponse = ziJinCrawlerRequestComponent.uploadImage(ziJinCrawlerImageUploadRequest, headers);
                 log.info("影像上传响应,订单号:{},响应:{}", ziJinCrawlerOrder.getOrderNo(), JSON.toJSONString(ziJinCrawlerImageUploadResponse));
                 log.info("影像上传响应,订单号:{},响应:{}", ziJinCrawlerOrder.getOrderNo(), JSON.toJSONString(ziJinCrawlerImageUploadResponse));
 
 
-                if ("0000".equals(ziJinCrawlerImageUploadResponse.getRtnCode())) {
+                if ("0000" .equals(ziJinCrawlerImageUploadResponse.getRtnCode())) {
 
 
                     ZiJinCrawlerUploadImageInfoListRequest.ItemFileDataListDTO fileInfo = ZiJinCrawlerUploadImageInfoListRequest.ItemFileDataListDTO.builder()
                     ZiJinCrawlerUploadImageInfoListRequest.ItemFileDataListDTO fileInfo = ZiJinCrawlerUploadImageInfoListRequest.ItemFileDataListDTO.builder()
                             .fileId(ziJinCrawlerImageUploadResponse.getFileId())
                             .fileId(ziJinCrawlerImageUploadResponse.getFileId())
@@ -530,11 +527,11 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
             log.info("订单状态:{},中文含义:{}", orderStatus, ziJinCrawlerQueryOrderStatusResponse.getData().getContent().get(0).getOrderStatusCN());
             log.info("订单状态:{},中文含义:{}", orderStatus, ziJinCrawlerQueryOrderStatusResponse.getData().getContent().get(0).getOrderStatusCN());
             // 将保司返回的订单状态转换为系统定义的订单状态枚举类型
             // 将保司返回的订单状态转换为系统定义的订单状态枚举类型
             InsOrderStatusEnum orderStatusEnum = null;
             InsOrderStatusEnum orderStatusEnum = null;
-            if ("5".equals(orderStatus)) {
+            if ("5" .equals(orderStatus)) {
                 orderStatusEnum = InsOrderStatusEnum.valueOf("ORDER_CLOSE");
                 orderStatusEnum = InsOrderStatusEnum.valueOf("ORDER_CLOSE");
                 orderStatus = orderStatusEnum.getCode();
                 orderStatus = orderStatusEnum.getCode();
             }
             }
-            if ("9".equals(orderStatus)) {
+            if ("9" .equals(orderStatus)) {
                 orderStatusEnum = InsOrderStatusEnum.valueOf("AUDIT_FAIL");
                 orderStatusEnum = InsOrderStatusEnum.valueOf("AUDIT_FAIL");
                 orderStatus = orderStatusEnum.getCode();
                 orderStatus = orderStatusEnum.getCode();
             }
             }
@@ -781,7 +778,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
         ziJinCrawlerGetCarActualValueRequest.setUpdateEnrollDate(quoteVo.getCarInfoVo().getRegisterDate());
         ziJinCrawlerGetCarActualValueRequest.setUpdateEnrollDate(quoteVo.getCarInfoVo().getRegisterDate());
         ziJinCrawlerGetCarActualValueRequest.setPurchasePrice(quoteVo.getCarInfoVo().getPurchasePrice());
         ziJinCrawlerGetCarActualValueRequest.setPurchasePrice(quoteVo.getCarInfoVo().getPurchasePrice());
         ziJinCrawlerGetCarActualValueRequest.setSeatCount(Integer.valueOf(quoteVo.getCarInfoVo().getSeatCount()));
         ziJinCrawlerGetCarActualValueRequest.setSeatCount(Integer.valueOf(quoteVo.getCarInfoVo().getSeatCount()));
-        ziJinCrawlerGetCarActualValueRequest.setUseNatureCode("02".equals(quoteVo.getCarInfoVo().getCarNatureCode()) ? "85" : quoteVo.getCarInfoVo().getCarNatureCode());
+        ziJinCrawlerGetCarActualValueRequest.setUseNatureCode("02" .equals(quoteVo.getCarInfoVo().getCarNatureCode()) ? "85" : quoteVo.getCarInfoVo().getCarNatureCode());
         ziJinCrawlerGetCarActualValueRequest.setStartDate(quoteVo.getCiRiskInfoVo().getStartDate().substring(0, 10));
         ziJinCrawlerGetCarActualValueRequest.setStartDate(quoteVo.getCiRiskInfoVo().getStartDate().substring(0, 10));
         ziJinCrawlerGetCarActualValueRequest.setNewEnergyFlag(quoteVo.getCarInfoVo().getEnergyTypeCode());
         ziJinCrawlerGetCarActualValueRequest.setNewEnergyFlag(quoteVo.getCarInfoVo().getEnergyTypeCode());
         ziJinCrawlerGetCarActualValueRequest.setModelEnergyType(ObjectUtils.isEmpty(quoteVo.getCarInfoVo().getModelEnergyType()) ? "D1" : quoteVo.getCarInfoVo().getModelEnergyType());
         ziJinCrawlerGetCarActualValueRequest.setModelEnergyType(ObjectUtils.isEmpty(quoteVo.getCarInfoVo().getModelEnergyType()) ? "D1" : quoteVo.getCarInfoVo().getModelEnergyType());
@@ -795,8 +792,8 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
      */
      */
     private ZiJinCrawlerQuotationRequest.BaseInfo buildBaseInfo(QuoteVo quoteVo, ZiJinCrawlerConfigureParameters parameters, String operatorCode) {
     private ZiJinCrawlerQuotationRequest.BaseInfo buildBaseInfo(QuoteVo quoteVo, ZiJinCrawlerConfigureParameters parameters, String operatorCode) {
         ZiJinCrawlerQuotationRequest.BaseInfo baseInfo = new ZiJinCrawlerQuotationRequest.BaseInfo();
         ZiJinCrawlerQuotationRequest.BaseInfo baseInfo = new ZiJinCrawlerQuotationRequest.BaseInfo();
-        baseInfo.setAgentCode(parameters.get代理code());
-        baseInfo.setAgreementNo(parameters.get代理code()+"-01");
+        baseInfo.setAgentCode(parameters.getAgentCode());
+        baseInfo.setAgreementNo(parameters.getAgentCode() + "-01");
         baseInfo.setBusinessNature("1");
         baseInfo.setBusinessNature("1");
         baseInfo.setComCode(parameters.getComCode());
         baseInfo.setComCode(parameters.getComCode());
         baseInfo.setComName(parameters.getComName());
         baseInfo.setComName(parameters.getComName());
@@ -881,7 +878,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
             // 证件类型映射,参考Python get_owner_i方法
             // 证件类型映射,参考Python get_owner_i方法
             // 个人类型(1) -> vehicleOwnerNature="1"
             // 个人类型(1) -> vehicleOwnerNature="1"
             // 企业类型(2) -> vehicleOwnerNature="5"
             // 企业类型(2) -> vehicleOwnerNature="5"
-            if ("2".equals(personType)) {
+            if ("2" .equals(personType)) {
                 // 企业
                 // 企业
                 carOwnerInfo.setVehicleOwnerNature("5");
                 carOwnerInfo.setVehicleOwnerNature("5");
                 // 企业证件类型映射
                 // 企业证件类型映射
@@ -1019,7 +1016,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
         // 证件类型映射
         // 证件类型映射
         String identifyType = customerInfo.getIdentifyType();
         String identifyType = customerInfo.getIdentifyType();
         String personType = customerInfo.getPersonType();
         String personType = customerInfo.getPersonType();
-        if ("2".equals(personType)) {
+        if ("2" .equals(personType)) {
             // 企业
             // 企业
             insuredItem.setIdentifyType(mapEnterpriseIdentifyType(identifyType));
             insuredItem.setIdentifyType(mapEnterpriseIdentifyType(identifyType));
         } else {
         } else {
@@ -1029,12 +1026,12 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
 
 
         // 性别映射
         // 性别映射
         String gender = customerInfo.getGender();
         String gender = customerInfo.getGender();
-        insuredItem.setSex("男".equals(gender) ? "1" : "2");
+        insuredItem.setSex("男" .equals(gender) ? "1" : "2");
 
 
         // 根据车主性质设置投保人/被保人类型
         // 根据车主性质设置投保人/被保人类型
         // 个人车主("1"): 投保人/被保人都是自然人
         // 个人车主("1"): 投保人/被保人都是自然人
         // 企业车主("5"): 投保人是法人,被保人是自然人
         // 企业车主("5"): 投保人是法人,被保人是自然人
-        if ("5".equals(vehicleOwnerNature) && insuredFlag == 2) {
+        if ("5" .equals(vehicleOwnerNature) && insuredFlag == 2) {
             // 企业车主的投保人
             // 企业车主的投保人
             insuredItem.setInsuredNature("4");// 4-法人或其他组织
             insuredItem.setInsuredNature("4");// 4-法人或其他组织
             insuredItem.setInsuredType("2");
             insuredItem.setInsuredType("2");
@@ -1406,14 +1403,15 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
         for (AccidentalDrivingVo accidentalDriving : quoteVo.getAccidentalDrivings()) {
         for (AccidentalDrivingVo accidentalDriving : quoteVo.getAccidentalDrivings()) {
             ZiJinCrawlerQuotationRequest.CarPolicySubInfoList carPolicySubInfo = new ZiJinCrawlerQuotationRequest.CarPolicySubInfoList();
             ZiJinCrawlerQuotationRequest.CarPolicySubInfoList carPolicySubInfo = new ZiJinCrawlerQuotationRequest.CarPolicySubInfoList();
             carPolicySubInfo.setPlanName(accidentalDriving.getProductName());
             carPolicySubInfo.setPlanName(accidentalDriving.getProductName());
-            carPolicySubInfo.setInsureGradeNo("");
-            carPolicySubInfo.setProductCode(accidentalDriving.getProductCode());
+            carPolicySubInfo.setInsureGradeNo("200000736004"); // 前端没传
+            carPolicySubInfo.setProductCode("0736");// 这个值前端传过来的是乱码200000736004%%0736%%%0
+            carPolicySubInfo.setPlanName(accidentalDriving.getProductName());
             carPolicySubInfo.setRiskCode("0736"); // 完了要调整编码,是否要转换
             carPolicySubInfo.setRiskCode("0736"); // 完了要调整编码,是否要转换
-            carPolicySubInfo.setRiskName("全家安行保"); // 完了要调整成accidentalDriving.getRiskName(),看名称是否传了
-            carPolicySubInfo.setSumAmount(ObjectUtils.isEmpty(accidentalDriving.getSumAmount()) ? null : (int) Double.parseDouble(accidentalDriving.getSumAmount()));
+            carPolicySubInfo.setRiskName("全家安行保"); // 前端没传
+            carPolicySubInfo.setSumAmount(ObjectUtils.isEmpty(accidentalDriving.getSumAmount()) ? 2350000 : (int) Double.parseDouble(accidentalDriving.getSumAmount()));
             carPolicySubInfo.setQuantity(accidentalDriving.getQuantity() == 0 ? "0" : String.valueOf(accidentalDriving.getQuantity()));
             carPolicySubInfo.setQuantity(accidentalDriving.getQuantity() == 0 ? "0" : String.valueOf(accidentalDriving.getQuantity()));
             carPolicySubInfo.setIsUseInsured("1");
             carPolicySubInfo.setIsUseInsured("1");
-            carPolicySubInfo.setSumPremium(ObjectUtils.isEmpty(accidentalDriving.getPremium()) ? null : (int) Double.parseDouble(accidentalDriving.getPremium()));
+            carPolicySubInfo.setSumPremium(ObjectUtils.isEmpty(accidentalDriving.getPremium()) ? 0 : (int) Double.parseDouble(accidentalDriving.getPremium()));
             carPolicySubInfoList.add(carPolicySubInfo);
             carPolicySubInfoList.add(carPolicySubInfo);
         }
         }
         return carPolicySubInfoList;
         return carPolicySubInfoList;
@@ -1630,7 +1628,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
 
 
         // 新能源标志, 0-燃油,1-新能源
         // 新能源标志, 0-燃油,1-新能源
         // carInfoVo.isNewEnergyMark() 这个字段前端没传无法判断
         // carInfoVo.isNewEnergyMark() 这个字段前端没传无法判断
-        vehicleInfo.setNewEnergyFlag(EnergyTypeCode.ENERGY_TYPE_CODE_0.getCode().equals(carInfoVo.getEnergyTypeCode())? "0" : "1");
+        vehicleInfo.setNewEnergyFlag(EnergyTypeCode.ENERGY_TYPE_CODE_0.getCode().equals(carInfoVo.getEnergyTypeCode()) ? "0" : "1");
 
 
         vehicleInfo.setPower(carInfoVo.getPowerScale());
         vehicleInfo.setPower(carInfoVo.getPowerScale());
         vehicleInfo.setModelEnergyType(ObjectUtils.isEmpty(carInfoVo.getModelEnergyType()) ? ziJinCrawlerCarResponse.getVehicleModelInfoList().get(0).getPowerTypeCode() : carInfoVo.getModelEnergyType());
         vehicleInfo.setModelEnergyType(ObjectUtils.isEmpty(carInfoVo.getModelEnergyType()) ? ziJinCrawlerCarResponse.getVehicleModelInfoList().get(0).getPowerTypeCode() : carInfoVo.getModelEnergyType());
@@ -1652,7 +1650,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
         vehicleInfo.setModelCode(modelCode);
         vehicleInfo.setModelCode(modelCode);
 
 
         // 是否新车未上牌
         // 是否新车未上牌
-        vehicleInfo.setNoLicenseFlag("0".equals(carInfoVo.getIsRegistered()) ? "0" : "1");
+        vehicleInfo.setNoLicenseFlag("0" .equals(carInfoVo.getIsRegistered()) ? "0" : "1");
 
 
         vehicleInfo.setVehicleId("1");
         vehicleInfo.setVehicleId("1");
         vehicleInfo.setVinNo(carInfoVo.getVinNo());
         vehicleInfo.setVinNo(carInfoVo.getVinNo());
@@ -1661,7 +1659,7 @@ public class ZiJinCrawlerRequestImpl implements ZiJinCrawlerRequest {
         vehicleInfo.setSeatCount(ObjectUtils.isEmpty(carInfoVo.getSeatCount()) ? 0 : Integer.parseInt(carInfoVo.getSeatCount()));
         vehicleInfo.setSeatCount(ObjectUtils.isEmpty(carInfoVo.getSeatCount()) ? 0 : Integer.parseInt(carInfoVo.getSeatCount()));
 
 
         // 使用性质代码
         // 使用性质代码
-        vehicleInfo.setUseNatureCode("02".equals(quoteVo.getCarInfoVo().getCarNatureCode()) ? "85" : quoteVo.getCarInfoVo().getCarNatureCode());
+        vehicleInfo.setUseNatureCode("02" .equals(quoteVo.getCarInfoVo().getCarNatureCode()) ? "85" : quoteVo.getCarInfoVo().getCarNatureCode());
         vehicleInfo.setOriCarKindName(carInfoVo.getCarTypeCode());
         vehicleInfo.setOriCarKindName(carInfoVo.getCarTypeCode());
 
 
         // 平台车辆代码
         // 平台车辆代码