Ver Fonte

Merge remote-tracking branch 'origin/master'

lixiaolong há 4 meses atrás
pai
commit
7322cd7a0a

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

@@ -1167,14 +1167,14 @@ public class SubmitRequest {
                     // 司机
                     if (code.equals("041") || code.equals("YD11")) {
                         kind.sumInsured = insOrdersKind.getAmount();
-                        kind.unitInsured = insOrdersKind.getUnitAmount();
+                        kind.unitInsured = insOrdersKind.getAmount();
                         kind.quantity = 1;
                     }
                     // 乘客
                     else if (code.equals("044") || code.equals("YD12")) {
-                        kind.unitInsured = insOrdersKind.getUnitAmount();
+                        kind.unitInsured = insOrdersKind.getAmount();
                         kind.sumInsured =
-                                insOrdersKind.getUnitAmount().multiply(new BigDecimal(Integer.parseInt(vehicle.getSeat()) - 1));;
+                                insOrdersKind.getAmount().multiply(new BigDecimal(Integer.parseInt(vehicle.getSeat()) - 1));;
                         kind.quantity = Integer.parseInt(vehicle.getSeat()) - 1;
                     }
                     // 绝对免赔

+ 10 - 4
tenant/insurance/quotation-taishan/src/main/java/com/jzg/quotation/taishan/crawler/build/TaiShanCrawlerQuoteRequestVoBuild.java

@@ -49,6 +49,11 @@ public class TaiShanCrawlerQuoteRequestVoBuild {
         // 系数信息
         request.setCoefficientInfo(toCoefficientInfoDto(quoteVo));
 
+//        request.getProposalInfo().setSaleChannel("10"); // 个人代理人渠道  SaleChannel
+//        request.getProposalInfo().setSaleCode("581222");
+//        request.getProposalInfo().setSaleName("张堃");
+//        request.getProposalInfo().setSaleNo("140107199402270639");
+
         request.setHouseholdInsurance(new Object());
         request.setHouseholdBInsurance(new Object());
         request.setHouseholdCInsurance(new Object());
@@ -150,11 +155,12 @@ public class TaiShanCrawlerQuoteRequestVoBuild {
         proposalInfo.setDefaultChannel("");
         proposalInfo.setPkgNo("");
         proposalInfo.setTeamOrderName("");
-        if (StringUtils.isNotBlank(parameters.getSaleName())){
+
+        if (StringUtils.isNotBlank(parameters.getAgentName())){
             proposalInfo.setSaleChannel("10"); // 个人代理人渠道
-            proposalInfo.setSaleCode(parameters.getSaleCode());
-            proposalInfo.setSaleName(parameters.getSaleName());
-            proposalInfo.setSaleNo(parameters.getSaleNo());
+            proposalInfo.setSaleCode(attributionInformationVo.getUsername());
+            proposalInfo.setSaleName(parameters.getAgentName());
+            proposalInfo.setSaleNo(parameters.getCertificateNo());
         }else{
             proposalInfo.setSaleChannel("02"); // 直销渠道
         }

+ 1 - 0
tenant/insurance/quotation-taishan/src/main/java/com/jzg/quotation/taishan/crawler/service/impl/TaiShanCrawlerQuoteProcessServiceImpl.java

@@ -85,6 +85,7 @@ public class TaiShanCrawlerQuoteProcessServiceImpl implements TaiShanCrawlerQuot
         Map<String, Object> tokenMap = taiShanCrawlerCacheComponent.getToken(loginBase.getUsername());
         TaiShanCrawlerLoginRequest loginRequest = new TaiShanCrawlerLoginRequest(loginBase,tokenMap);
         TaiShanCrawlerLoginResponse loginResponse = taiShanCrawlerRequestComponent.login(loginRequest, httpHeaders);
+        log.info("TaiShan-loginResponse参数的值:{}", JSON.toJSONString(loginResponse));
         if(loginResponse.getCode().equals("200")){
             String authorization = loginResponse.getResult().getIdToken();
             taiShanCrawlerCacheComponent.cacheAuthorization(loginBase.getUsername(), authorization);

+ 2 - 0
tenant/insurance/quotation-taishan/src/main/java/com/jzg/quotation/taishan/crawler/service/impl/TaiShanCrawlerRequestImpl.java

@@ -85,10 +85,12 @@ public class TaiShanCrawlerRequestImpl implements TaiShanCrawlerRequest {
      */
     @Override
     public QuoteResultsVo quote(QuoteVo quoteVo) {
+        log.info("quoteVo参数的值:{}", JSON.toJSONString(quoteVo));
         // 1.0 获取认证信息和用户配置
         AttributionInformationVo attributionInformationVo = quoteVo.getOrder().getAttributionInformationVo();
         // 1.1 解析配置参数
         TaiShanCrawlerConfigureParameters parameters = ConfigureParametersConversion.conversionEntity(TaiShanCrawlerConfigureParameters.class, attributionInformationVo.getConfigInfo());
+        log.info("parameters参数的值:{}", JSON.toJSONString(parameters));
         HttpHeaders headers = taiShanCrawlerQuoteProcessService.getHeaders(attributionInformationVo.getUsername(), parameters.getComCode());
         // 2.0 车型查询
         TaiShanCrawlerCarRequest taiShanCrawlerCarRequest = new TaiShanCrawlerCarRequest(quoteVo,parameters.getComCode());

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

@@ -93,11 +93,11 @@ public class ZmCrawlerQuotedPriceRequest extends BaseRequest {
         @JsonProperty("accident")
         private List<AccidentDTO> accident;
 
-        public List<ContractDTO> buildContractList(QuoteVo quoteVo) {
+        public List<ContractDTO> buildContractList(QuoteVo quoteVo,ZmCrawlerActualValueResponse actualValueResponse) {
             List<ContractDTO> contracts = new ArrayList<>();
             String date = DateUtil.getDateFormat(new Date(), DateUtil.FULL_TIME_SPLIT_PATTERN);
             ContractDTO ciContract = buildCiContract(quoteVo, date);
-            ContractDTO biContract = buildBiContract(quoteVo, date);
+            ContractDTO biContract = buildBiContract(quoteVo, date,actualValueResponse);
             if(Objects.nonNull(ciContract)){
                 contracts.add(ciContract);
             }
@@ -156,7 +156,7 @@ public class ZmCrawlerQuotedPriceRequest extends BaseRequest {
          * @param productionDate
          * @return
          */
-        public ContractDTO buildBiContract(QuoteVo quoteVo, String productionDate) {
+        public ContractDTO buildBiContract(QuoteVo quoteVo, String productionDate,ZmCrawlerActualValueResponse actualValueResponse) {
             ContractDTO contract = new ContractDTO();
             RiskInfoVo biRiskInfoVo = quoteVo.getBiRiskInfoVo();
             if(Objects.isNull(biRiskInfoVo)){return null;}
@@ -182,6 +182,9 @@ public class ZmCrawlerQuotedPriceRequest extends BaseRequest {
                 coverageDTO.setUnitAmount(Integer.parseInt(kindInfoVo.getUnitAmount()));
                 coverageDTO.setQuantity(Objects.isNull(kindInfoVo.getQuantity()) ? 0 : Integer.parseInt(kindInfoVo.getQuantity()));
                 Integer seatCount = Integer.parseInt(quoteVo.getCarInfoVo().getSeatCount());
+                if (kindInfoVo.getKindCode().equals("01")) {
+                    coverageDTO.setAmount(String.valueOf(actualValueResponse.getActualValue()));
+                }
                 if (kindInfoVo.getKindCode().equals("041")) {
                     coverageDTO.setQuantity(1);
                 }
@@ -295,7 +298,7 @@ public class ZmCrawlerQuotedPriceRequest extends BaseRequest {
 
             this.saleInfo = saleInfoDTO;
             //处理险种信息
-            this.contract = buildContractList(quoteVo);
+            this.contract = buildContractList(quoteVo,actualValueResponse);
             //处理投保人,被保人,车主信息
             this.customer = buildCustomerList(quoteVo);
             //处理意外险

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

@@ -67,7 +67,7 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
     }
 
     @Override
-  public boolean detectLogin(DetectLoginRequest detectLoginRequest) {
+    public boolean detectLogin(DetectLoginRequest detectLoginRequest) {
         String username = detectLoginRequest.getUsername();
         String password = detectLoginRequest.getPassword();
         String authorization = (String) redissonClient.getMap(CacheConstant.ZHONGMEI_AUTHORIZATION + username).get(ZmCrawlerRequestComponent.AUTHORIZATION);
@@ -76,7 +76,7 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
         }
         return StringUtils.hasLength(authorization);
 
-    }
+     }
 
     /**
      * 报价
@@ -197,38 +197,39 @@ public class ZhongMeiCrawlerRequestImpl implements ZhongMeiCrawlerRequest {
                         .filter(contractDTO -> "0361".equals(contractDTO.getContractMain().getRiskCode()))
                         .findFirst()
                         .orElse(null);
-
-        ZmCrawlerQuotedPriceResponse.BussinessMainDTO.ContractDTO.PlantFormMessageBeanDTO messageBeanDTO = contract.getPlantFormMessageBean();
-        if (messageBeanDTO.getAnswer().contains("可能存在重复投保")) {
-            String answer = messageBeanDTO.getAnswer();
-            String startTime = extractDuplicateStartTime(answer);
-            String endTime = calculateEndTime(startTime);
-            ZmCrawlerQuotedPriceRequest.BusinessDataDTO.ContractDTO contractReq =
-                    quotedPriceRequest.getBusinessData().getContract().stream()
-                            .filter(contractDTO -> "0361".equals(contractDTO.getContractMain().getRiskCode()))
-                            .findFirst()
-                            .orElse(null);
-            if (startTime != null && endTime != null && contractReq != null) {
-                contractReq.getContractMain().setValidDate(startTime);
-                contractReq.getContractMain().setExpiryDate(endTime);
-            }
-            // 判断是否是即时起保
-            if (!startTime.endsWith("00:00:00")) {
-                contractReq.getContractMain().setReinsuranceFlag("1");
+        if (contract != null) {
+            ZmCrawlerQuotedPriceResponse.BussinessMainDTO.ContractDTO.PlantFormMessageBeanDTO messageBeanDTO = contract.getPlantFormMessageBean();
+            if (messageBeanDTO.getAnswer().contains("可能存在重复投保")) {
+                String answer = messageBeanDTO.getAnswer();
+                String startTime = extractDuplicateStartTime(answer);
+                String endTime = calculateEndTime(startTime);
+                ZmCrawlerQuotedPriceRequest.BusinessDataDTO.ContractDTO contractReq =
+                        quotedPriceRequest.getBusinessData().getContract().stream()
+                                .filter(contractDTO -> "0361".equals(contractDTO.getContractMain().getRiskCode()))
+                                .findFirst()
+                                .orElse(null);
+                if (startTime != null && endTime != null && contractReq != null) {
+                    contractReq.getContractMain().setValidDate(startTime);
+                    contractReq.getContractMain().setExpiryDate(endTime);
+                }
+                // 判断是否是即时起保
+                if (!startTime.endsWith("00:00:00")) {
+                    contractReq.getContractMain().setReinsuranceFlag("1");
+                }
+                contractReq.getCoverage().forEach(coverageDTO -> {
+                    coverageDTO.setValidDate(startTime);
+                    coverageDTO.setExpiryDate(endTime);
+                });
+                quoteVo.getBiRiskInfoVo().setStartDate(startTime);
+                quoteVo.getBiRiskInfoVo().setEndDate(endTime);
+                ZmCrawlerActualValueRequest actualValueReq = new ZmCrawlerActualValueRequest(quoteVo.getCarInfoVo(),fullCarDataDTO,head,quoteVo);
+                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);
             }
-            contractReq.getCoverage().forEach(coverageDTO -> {
-                coverageDTO.setValidDate(startTime);
-                coverageDTO.setExpiryDate(endTime);
-            });
-            quoteVo.getBiRiskInfoVo().setStartDate(startTime);
-            quoteVo.getBiRiskInfoVo().setEndDate(endTime);
-            ZmCrawlerActualValueRequest actualValueReq = new ZmCrawlerActualValueRequest(quoteVo.getCarInfoVo(),fullCarDataDTO,head,quoteVo);
-            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);
         }
         return quotedPriceResponse;
     }