|
|
@@ -130,7 +130,7 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
vehicleTypeQueryRequest);
|
|
|
vehicleModelsDTO = (VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO) map_two.get("vehicleModelsDTO");
|
|
|
vehicleConfirmationResponse = (VehicleConfirmationResponse) map_two.get("vehicleConfirmationResponse");
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
throw new SystemException(responseMsg);
|
|
|
}
|
|
|
}
|
|
|
@@ -141,22 +141,26 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
QuotationRequest quotationRequest = new QuotationRequest(parameters, quoteInfoVo.getRiskList(), quoteInfoVo.getKindList(),
|
|
|
currentValue, orderNo, carInfo, quoteVo.getAccidentalDrivingVo());
|
|
|
QuotationResponse response = boHaiRequestApiComponent.quotation(quotationRequest, parameters.getSysSourceCode());
|
|
|
- //商业险重复投保 重复投保保单信息 :保单号:314042303060007485车牌号:晋A881SR车架号:LMGAC1381K1535834发动机号:F699317保险公司代码:YAIC签单日期:20230414起保日期:202305030000终保日期:202405030000险别:机动车第三者责任保险,附加医保外用药责任险(机动车第三者责任保险)
|
|
|
- response = getQuotationResponse(response,quotationRequest,parameters.getSysSourceCode());
|
|
|
+ //商业险重复投保 重复投保保单信息 :保单号:314042303060007485车牌号:晋A881SR车架号:LMGAC1381K1535834发动机号:F699317保险公司代码:YAIC签单日期:20230414起保日期:202305030000
|
|
|
+ // 终保日期:202405030000险别:机动车第三者责任保险,附加医保外用药责任险(机动车第三者责任保险)
|
|
|
+ response = getQuotationResponse(response, quotationRequest, parameters.getSysSourceCode());
|
|
|
|
|
|
//response = getQuotationResponseNew(quoteInfoVo, quoteVo, parameters, orderNo, carInfo, currentValue, response);
|
|
|
//add by 2024-04-03 会发生重复投保 算费微服务返回报错信息_保信返回错误信息:
|
|
|
- // 平台返回错误信息号牌号码“晋J60L55”的保单发生重复投保,与其重复投保的其它公司的保单信息如下:投保确认码 02PAIC140023031919549498257741;保单号 13312993901973801278;起保日期 2023-04-11 00:00;终保日期 2024-04-11 00:00;号牌号码 晋J60L55;号牌种类 02;车架号 LZWADAGA5LG477030;发动机号 8LB1921291;地区 山西。
|
|
|
+ // 平台返回错误信息号牌号码“晋J60L55”的保单发生重复投保,与其重复投保的其它公司的保单信息如下:投保确认码 02PAIC140023031919549498257741;保单号 13312993901973801278;起保日期
|
|
|
+ // 2023-04-11 00:00;终保日期 2024-04-11 00:00;号牌号码 晋J60L55;号牌种类 02;车架号 LZWADAGA5LG477030;发动机号 8LB1921291;地区 山西。
|
|
|
//重新赋值交强的投保开始日期
|
|
|
if (ResponseCode.R_Z00004.getCode().equals(response.getResponseCode())) {
|
|
|
String responseMsg = response.getResponseMsg();
|
|
|
- if(responseMsg.contains("发生重复投保")){
|
|
|
+ if (responseMsg.contains("发生重复投保")) {
|
|
|
//交强重复投保
|
|
|
- String trafficPolicyDTOBenginDateStr = StringSubStringUtils.subjectStringContentByTrafficPolicyDTOBenginDate(responseMsg,":","起保日期");
|
|
|
- String trafficPolicyDTOEndDateStr = StringSubStringUtils.subjectStringContentByTrafficPolicyDTOBenginDate(responseMsg,":","终保日期");
|
|
|
- if(!StringUtils.isEmpty(trafficPolicyDTOBenginDateStr) && !StringUtils.isEmpty(trafficPolicyDTOEndDateStr)){
|
|
|
+ String trafficPolicyDTOBenginDateStr = StringSubStringUtils.subjectStringContentByTrafficPolicyDTOBenginDate(responseMsg,
|
|
|
+ ":", "起保日期");
|
|
|
+ String trafficPolicyDTOEndDateStr = StringSubStringUtils.subjectStringContentByTrafficPolicyDTOBenginDate(responseMsg,
|
|
|
+ ":", "终保日期");
|
|
|
+ if (!StringUtils.isEmpty(trafficPolicyDTOBenginDateStr) && !StringUtils.isEmpty(trafficPolicyDTOEndDateStr)) {
|
|
|
//结束投保日期为开始日期,结束日期为结束投保日期后一年的日期
|
|
|
- trafficPolicyDTOEndDateStr=trafficPolicyDTOEndDateStr+":00";
|
|
|
+ trafficPolicyDTOEndDateStr = trafficPolicyDTOEndDateStr + ":00";
|
|
|
// 结束日期为59:59:59
|
|
|
String endDateStr = DateUtil_N.getNextYearDateStr(trafficPolicyDTOEndDateStr);
|
|
|
QuotationRequest.TrafficPolicyDTO trafficPolicy = quotationRequest.getTrafficPolicy();
|
|
|
@@ -165,17 +169,19 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
quotationRequest.setTrafficPolicy(trafficPolicy);
|
|
|
response = boHaiRequestApiComponent.quotation(quotationRequest, parameters.getSysSourceCode());
|
|
|
// 判断是否商业险重复投保
|
|
|
- response = getQuotationResponse(response,quotationRequest,parameters.getSysSourceCode());
|
|
|
+ response = getQuotationResponse(response, quotationRequest, parameters.getSysSourceCode());
|
|
|
|
|
|
if (!ResponseCode.R_Z00001.getCode().equals(response.getResponseCode())) {
|
|
|
throw new SystemException(response.getResponseMsg());
|
|
|
}
|
|
|
+ } else {
|
|
|
+ throw new SystemException(responseMsg);
|
|
|
}
|
|
|
// add by hxl 2024-04-07 报价接口报错 算费微服务返回报错信息_保信返回错误信息:录入的校验码有误
|
|
|
// 需要调用 获取交管查询校验码接口 传入到报价参数中 暂未复现不处理 注释掉
|
|
|
- }else if(responseMsg.contains("录入的校验码有误")){
|
|
|
+ } else if (responseMsg.contains("录入的校验码有误")) {
|
|
|
//response = getQuotationResponseNew(quoteInfoVo, quoteVo, parameters, orderNo, carInfo, currentValue, response);
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
throw new SystemException(responseMsg);
|
|
|
}
|
|
|
}
|
|
|
@@ -183,22 +189,27 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
|
|
|
return getQuoteRespVo(response, quoteInfoVo, vehicleModelsDTO, ptlAgreementAttribution, orderNo, accidentalDrivingVo);
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
- * @version 报价传递获取交管查询校验码 报错 未知异常,请联系管理员
|
|
|
- * @author: hxl
|
|
|
- * @Date: 2024/4/7 16:50
|
|
|
- * @Description:
|
|
|
+ * @version 报价传递获取交管查询校验码 报错 未知异常,请联系管理员
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/4/7 16:50
|
|
|
+ * @Description:
|
|
|
*/
|
|
|
- private QuotationResponse getQuotationResponseNew(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<List<BoHaiQuoteAccidentVo>> quoteVo, BoHaiConfigureParameters parameters, String orderNo, CarInfoVo carInfo, String currentValue, QuotationResponse response) throws Exception {
|
|
|
- VehicleCheckCodeRequest vehicleCheckCodeRequest = new VehicleCheckCodeRequest(parameters, orderNo, carInfo.getVinNo(), carInfo.getEngineNo(), carInfo.getLicenseNo());
|
|
|
- VehicleCheckCodeResponse vehicleCheckCodeResponse = boHaiRequestApiComponent.getVehicleCheckCode(vehicleCheckCodeRequest, parameters.getSysSourceCode());
|
|
|
- if(ResponseCode.R_Z00001.getCode().equals(vehicleCheckCodeResponse.getResponseCode())){
|
|
|
+ private QuotationResponse getQuotationResponseNew(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<List<BoHaiQuoteAccidentVo>> quoteVo,
|
|
|
+ BoHaiConfigureParameters parameters, String orderNo, CarInfoVo carInfo,
|
|
|
+ String currentValue, QuotationResponse response) throws Exception {
|
|
|
+ VehicleCheckCodeRequest vehicleCheckCodeRequest = new VehicleCheckCodeRequest(parameters, orderNo, carInfo.getVinNo(),
|
|
|
+ carInfo.getEngineNo(), carInfo.getLicenseNo());
|
|
|
+ VehicleCheckCodeResponse vehicleCheckCodeResponse = boHaiRequestApiComponent.getVehicleCheckCode(vehicleCheckCodeRequest,
|
|
|
+ parameters.getSysSourceCode());
|
|
|
+ if (ResponseCode.R_Z00001.getCode().equals(vehicleCheckCodeResponse.getResponseCode())) {
|
|
|
String checkCode = vehicleCheckCodeResponse.getData().getCheckCode();
|
|
|
//重新报价
|
|
|
QuotationRequest quotationRequestNew = new QuotationRequest(parameters, quoteInfoVo.getRiskList(), quoteInfoVo.getKindList(),
|
|
|
currentValue, orderNo, carInfo, quoteVo.getAccidentalDrivingVo());
|
|
|
- List<QuotationRequest.CheckInfoDTO> checkInfoList=new ArrayList<QuotationRequest.CheckInfoDTO>();
|
|
|
- QuotationRequest.CheckInfoDTO checkInfo=new QuotationRequest.CheckInfoDTO("2",checkCode,"N");
|
|
|
+ List<QuotationRequest.CheckInfoDTO> checkInfoList = new ArrayList<QuotationRequest.CheckInfoDTO>();
|
|
|
+ QuotationRequest.CheckInfoDTO checkInfo = new QuotationRequest.CheckInfoDTO("2", checkCode, "N");
|
|
|
checkInfoList.add(checkInfo);
|
|
|
//quotationRequestNew.setCheckInfoList(checkInfoList);
|
|
|
response = boHaiRequestApiComponent.quotation(quotationRequestNew, parameters.getSysSourceCode());
|
|
|
@@ -210,20 +221,20 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * @version 商业险发生重复投保
|
|
|
- * @author: hxl
|
|
|
- * @Date: 2024/4/7 16:07
|
|
|
- * @Description:
|
|
|
+ * @version 商业险发生重复投保
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/4/7 16:07
|
|
|
+ * @Description:
|
|
|
*/
|
|
|
- private QuotationResponse getQuotationResponse(QuotationResponse response, QuotationRequest quotationRequest,String sysSourCode) throws Exception {
|
|
|
- if(ResponseCode.R_Z00001.getCode().equals(response.getResponseCode()) && response.getData().getBusinessPolicy().getErrorMsg()!=null){
|
|
|
+ private QuotationResponse getQuotationResponse(QuotationResponse response, QuotationRequest quotationRequest, String sysSourCode) throws Exception {
|
|
|
+ if (ResponseCode.R_Z00001.getCode().equals(response.getResponseCode()) && response.getData().getBusinessPolicy().getErrorMsg() != null) {
|
|
|
String errorMsg = response.getData().getBusinessPolicy().getErrorMsg();
|
|
|
- if(errorMsg.contains("重复投保")){
|
|
|
+ if (errorMsg.contains("重复投保")) {
|
|
|
//重新给商业险的开始和结束时间赋值赋值重新填报
|
|
|
- String businessPolicyEndDateStr = StringSubStringUtils.subjectStringContentByBusinessPolicyEndDate(errorMsg,"终保日期:");
|
|
|
- if(!"".equals(businessPolicyEndDateStr) && !"".equals(businessPolicyEndDateStr)){
|
|
|
+ String businessPolicyEndDateStr = StringSubStringUtils.subjectStringContentByBusinessPolicyEndDate(errorMsg, "终保日期:");
|
|
|
+ if (!"".equals(businessPolicyEndDateStr) && !"".equals(businessPolicyEndDateStr)) {
|
|
|
//结束投保日期为开始日期,结束日期为结束投保日期后一年的日期
|
|
|
- businessPolicyEndDateStr=businessPolicyEndDateStr+"00";
|
|
|
+ businessPolicyEndDateStr = businessPolicyEndDateStr + "00";
|
|
|
String beginDateStr = DateUtil_N.strAllToDateToStr(businessPolicyEndDateStr, "yyyyMMddHHmmss", "yyyy-MM-dd HH:mm:ss");
|
|
|
// 结束日期为59:59:59
|
|
|
String endDateStr = DateUtil_N.getNextYearDateStrTranfer(businessPolicyEndDateStr);
|