|
|
@@ -139,32 +139,6 @@ public class GuoRenCrawlerRequestImpl implements GuoRenCrawlerRequest {
|
|
|
crawlerCalculationPremiumRequest.getBi().getPrpTmain().setOrderFlag("N");
|
|
|
}
|
|
|
}
|
|
|
- // 驾意险(非车险)处理:查询 → 校验 → 投保
|
|
|
- String niPolicyNumber = null;
|
|
|
- GuoRenCrawlerCreateOrderRequest createOrderRequest = null;
|
|
|
- if (CollUtil.isNotEmpty(quoteVo.getAccidentalDrivings())) {
|
|
|
- // 驾意险查询:获取liabList用于订单创建
|
|
|
- GuoRenCrawlerQueryQuotationRequest queryQuotationRequest = new GuoRenCrawlerQueryQuotationRequest(quoteVo, crawlerCalculationPremiumRequest.getBc().getPrpTitemCar());
|
|
|
- GuoRenCrawlerBaseResponse<GuoRenCrawlerQueryQuotationData> queryResponse = guoRenCrawlerRequestComponent.queryQuotation(queryQuotationRequest, headers);
|
|
|
- List<GuoRenCrawlerQueryQuotationData.LiabDTO> queryLiabList = null;
|
|
|
- if ("0000".equals(queryResponse.getCode()) && queryResponse.getData() != null) {
|
|
|
- queryLiabList = queryResponse.getData().getLiabList();
|
|
|
- }
|
|
|
- createOrderRequest = new GuoRenCrawlerCreateOrderRequest(quoteVo, crawlerCalculationPremiumRequest, queryLiabList);
|
|
|
- // 第一步:驾意险校验
|
|
|
- GuoRenCrawlerBaseResponse<GuoRenCrawlerCreateOrderCheckData> checkResponse = guoRenCrawlerRequestComponent.createOrderCheck(createOrderRequest, headers);
|
|
|
- if (!checkResponse.getCode().equals("0000")) {
|
|
|
- throw new SystemException("驾意险订单校验失败:" + checkResponse.getMessage());
|
|
|
- }
|
|
|
- // 第二步:驾意险投保
|
|
|
- GuoRenCrawlerBaseResponse<GuoRenCrawlerCreateOrderDataData> dataResponse = guoRenCrawlerRequestComponent.createOrderData(createOrderRequest, headers);
|
|
|
- if (!dataResponse.getCode().equals("0000")) {
|
|
|
- throw new SystemException("驾意险投保失败:" + dataResponse.getMessage());
|
|
|
- }
|
|
|
- if (dataResponse.getData() != null) {
|
|
|
- niPolicyNumber = dataResponse.getData().getOrderCode();
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
GuoRenCrawlerBaseResponse<GuoRenCrawlerCalculationPremiumData> calculationPremium = guoRenCrawlerRequestComponent.calculationPremium(crawlerCalculationPremiumRequest, headers);
|
|
|
// 处理重复投保
|
|
|
@@ -219,6 +193,34 @@ public class GuoRenCrawlerRequestImpl implements GuoRenCrawlerRequest {
|
|
|
} else if (calculationPremium.getResultCode() == 1) {
|
|
|
return GuoRenCrawlerQuoteResultsVoBuild.buildFailQuoteResultsVo(quoteVo, calculationPremium);
|
|
|
}
|
|
|
+ // 驾意险(非车险)处理:查询 → 校验 → 投保
|
|
|
+ String niPolicyNumber = null;
|
|
|
+ GuoRenCrawlerCreateOrderRequest createOrderRequest = null;
|
|
|
+ if (CollUtil.isNotEmpty(quoteVo.getAccidentalDrivings())) {
|
|
|
+ // 驾意险查询:获取liabList用于订单创建
|
|
|
+ GuoRenCrawlerQueryQuotationRequest queryQuotationRequest = new GuoRenCrawlerQueryQuotationRequest(quoteVo, crawlerCalculationPremiumRequest.getBc().getPrpTitemCar());
|
|
|
+ GuoRenCrawlerBaseResponse<GuoRenCrawlerQueryQuotationData> queryResponse = guoRenCrawlerRequestComponent.queryQuotation(queryQuotationRequest, headers);
|
|
|
+ List<GuoRenCrawlerQueryQuotationData.LiabDTO> queryLiabList = null;
|
|
|
+ if ("0000".equals(queryResponse.getCode()) && queryResponse.getData() != null) {
|
|
|
+ queryLiabList = queryResponse.getData().getLiabList();
|
|
|
+ }
|
|
|
+ createOrderRequest = new GuoRenCrawlerCreateOrderRequest(quoteVo, crawlerCalculationPremiumRequest, queryLiabList);
|
|
|
+ // 第一步:驾意险校验
|
|
|
+ GuoRenCrawlerBaseResponse<GuoRenCrawlerCreateOrderCheckData> checkResponse = guoRenCrawlerRequestComponent.createOrderCheck(createOrderRequest, headers);
|
|
|
+ if (!checkResponse.getCode().equals("0000")) {
|
|
|
+ throw new SystemException("驾意险订单校验失败:" + checkResponse.getMessage());
|
|
|
+ }
|
|
|
+ // 第二步:驾意险投保
|
|
|
+ GuoRenCrawlerBaseResponse<GuoRenCrawlerCreateOrderDataData> dataResponse = guoRenCrawlerRequestComponent.createOrderData(createOrderRequest, headers);
|
|
|
+ if (!dataResponse.getCode().equals("0000")) {
|
|
|
+ throw new SystemException("驾意险投保失败:" + dataResponse.getMessage());
|
|
|
+ }
|
|
|
+ if (dataResponse.getData() != null) {
|
|
|
+ niPolicyNumber = dataResponse.getData().getOrderCode();
|
|
|
+ createOrderRequest.setOrderCode(niPolicyNumber);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
// 投保验证码处理
|
|
|
GuoRenCrawlerCalculationPremiumData calculationPremiumData = guoRenCrawlerQuoteProcessService.insuranceVerificationCodeProcessing(crawlerCalculationPremiumRequest, calculationPremium.getData(), headers);
|