|
|
@@ -111,23 +111,24 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
VehicleTypeQueryRequest vehicleTypeQueryRequest = new VehicleTypeQueryRequest(parameters, carInfo.getModelcname(), orderNo);
|
|
|
//add by hxl 2024-04-03 调用车辆型号查询
|
|
|
// 调用 车辆查询和车辆确认接口
|
|
|
- VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO vehicleModelsDTO=new VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO();
|
|
|
- Map<String,Object> map= getVehicleConfirmationResponse(quoteInfoVo, parameters, carInfo, orderNo,vehicleTypeQueryRequest);
|
|
|
+ VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO vehicleModelsDTO = new VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO();
|
|
|
+ Map<String, Object> map = getVehicleConfirmationResponse(quoteInfoVo, parameters, carInfo, orderNo, vehicleTypeQueryRequest);
|
|
|
//调用车型号查询可能会出现多条数据,导致车辆确认报错 ESB车型及纯风险保费查询服务返回错误信息_选择车辆的行业车型编码(BBWABBUA0005)在平台不存在!请使用正确的行业车型编码(BBWABBUB0007)"
|
|
|
//通过报错信息截取出正确的行业车型编
|
|
|
vehicleModelsDTO = (VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO) map.get("vehicleModelsDTO");
|
|
|
- VehicleConfirmationResponse vehicleConfirmationResponse= (VehicleConfirmationResponse) map.get("vehicleConfirmationResponse");
|
|
|
+ VehicleConfirmationResponse vehicleConfirmationResponse = (VehicleConfirmationResponse) map.get("vehicleConfirmationResponse");
|
|
|
if (ResponseCode.R_Z00004.getCode().equals(vehicleConfirmationResponse.getResponseCode())) {
|
|
|
String responseMsg = vehicleConfirmationResponse.getResponseMsg();
|
|
|
- if(responseMsg.contains("行业车型编码")){
|
|
|
+ if (responseMsg.contains("行业车型编码")) {
|
|
|
String modelCode = StringSubStringUtils.extractLastParenthesesContent(responseMsg);
|
|
|
//清空车辆型号 添加行业车型编码确定唯一车型
|
|
|
vehicleTypeQueryRequest.setVehicleBrandModelKey(null);
|
|
|
vehicleTypeQueryRequest.setModelCode(modelCode);
|
|
|
// 重新调用 车辆查询和车辆确认接口
|
|
|
- Map<String,Object> map_two= getVehicleConfirmationResponse(quoteInfoVo, parameters, carInfo, orderNo,vehicleTypeQueryRequest);
|
|
|
+ Map<String, Object> map_two = getVehicleConfirmationResponse(quoteInfoVo, parameters, carInfo, orderNo,
|
|
|
+ vehicleTypeQueryRequest);
|
|
|
vehicleModelsDTO = (VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO) map_two.get("vehicleModelsDTO");
|
|
|
- vehicleConfirmationResponse= (VehicleConfirmationResponse) map_two.get("vehicleConfirmationResponse");
|
|
|
+ vehicleConfirmationResponse = (VehicleConfirmationResponse) map_two.get("vehicleConfirmationResponse");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -142,15 +143,19 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
|
|
|
return getQuoteRespVo(response, quoteInfoVo, vehicleModelsDTO, ptlAgreementAttribution, orderNo, accidentalDrivingVo);
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
- * @version 调用车型查询和车辆确认
|
|
|
- * @author: hxl
|
|
|
- * @Date: 2024/4/3 16:03
|
|
|
- * @Description:
|
|
|
+ * @version 调用车型查询和车辆确认
|
|
|
+ * @author: hxl
|
|
|
+ * @Date: 2024/4/3 16:03
|
|
|
+ * @Description:
|
|
|
*/
|
|
|
- public Map<String,Object> getVehicleConfirmationResponse(BaseQuoteInfoVo quoteInfoVo, BoHaiConfigureParameters parameters,CarInfoVo carInfo,String orderNo,VehicleTypeQueryRequest vehicleTypeQueryRequest) throws Exception {
|
|
|
+ public Map<String, Object> getVehicleConfirmationResponse(BaseQuoteInfoVo quoteInfoVo, BoHaiConfigureParameters parameters,
|
|
|
+ CarInfoVo carInfo, String orderNo,
|
|
|
+ VehicleTypeQueryRequest vehicleTypeQueryRequest) throws Exception {
|
|
|
// 2 车型查询接口
|
|
|
- VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO vehicleModelsDTO = boHaiRequestApiComponent.vehicleTypeQuery(vehicleTypeQueryRequest, parameters.getSysSourceCode(), carInfo);
|
|
|
+ VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO vehicleModelsDTO =
|
|
|
+ boHaiRequestApiComponent.vehicleTypeQuery(vehicleTypeQueryRequest, parameters.getSysSourceCode(), carInfo);
|
|
|
// 3 车辆确认接口
|
|
|
// 车主信息
|
|
|
CustomerInfoVo ownerInfo = quoteInfoVo.getOwnerInfo();
|
|
|
@@ -166,14 +171,13 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
orderNo, ownerInfoArea, insuredPersonArea, policyHolderArea);
|
|
|
VehicleConfirmationResponse vehicleConfirmationResponse = boHaiRequestApiComponent.vehicleConfirmation(vehicleConfirmationReqeust
|
|
|
, parameters.getSysSourceCode());
|
|
|
- Map<String,Object> map=new HashMap<>();
|
|
|
- map.put("vehicleModelsDTO",vehicleModelsDTO);
|
|
|
- map.put("vehicleConfirmationResponse",vehicleConfirmationResponse);
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ map.put("vehicleModelsDTO", vehicleModelsDTO);
|
|
|
+ map.put("vehicleConfirmationResponse", vehicleConfirmationResponse);
|
|
|
return map;
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
@Override
|
|
|
public HttpResult<Object> submitImage(String subOrderNo) throws Exception {
|
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(subOrderNo);
|
|
|
@@ -444,14 +448,16 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
QuoteRespVo quoteRespVo = new QuoteRespVo();
|
|
|
// 交强险
|
|
|
QuotationResponse.DataDTO.TrafficPolicyDTO trafficPolicy = response.getData().getTrafficPolicy();
|
|
|
+
|
|
|
if (!ObjectUtils.isEmpty(trafficPolicy)) {
|
|
|
sumPayTax = Double.parseDouble(trafficPolicy.getVehicleTax().getTotalAmount());
|
|
|
jqPremium = Double.parseDouble(trafficPolicy.getPremium());
|
|
|
quoteRespVo.setJqApplyNo(trafficPolicy.getApplicationNo());
|
|
|
+ // 交强
|
|
|
+ quoteRespVo.setStartDateJq(trafficPolicy.getStartDate());
|
|
|
+ quoteRespVo.setEndDateJq(trafficPolicy.getEndDate());
|
|
|
}
|
|
|
- // 交强
|
|
|
- quoteRespVo.setStartDateJq(trafficPolicy.getStartDate());
|
|
|
- quoteRespVo.setEndDateJq(trafficPolicy.getEndDate());
|
|
|
+
|
|
|
// 商业险
|
|
|
QuotationResponse.DataDTO.BusinessPolicyDTO businessPolicy = response.getData().getBusinessPolicy();
|
|
|
List<QuoteKindRespVo> kindList1 = new ArrayList<>();
|
|
|
@@ -528,25 +534,29 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
|
|
|
insAreaCompany.setInsOrderNo(busUniqueId);
|
|
|
// 驾意险
|
|
|
insAreaCompany.setAccidentInfo(JSON.parseArray(JSON.toJSONString(accidentalDrivingVo)));
|
|
|
+
|
|
|
// 车船税
|
|
|
- QuotationResponse.DataDTO.TrafficPolicyDTO.VehicleTaxDTO vehicleTax = response.getData().getTrafficPolicy().getVehicleTax();
|
|
|
- TaxArrears taxArrears = new TaxArrears("往年欠税", Double.parseDouble(vehicleTax.getOverdueTaxAmount()),
|
|
|
- Double.parseDouble(vehicleTax.getLateFee()));
|
|
|
+ TaxArrears taxArrears = Optional.ofNullable(response.getData().getTrafficPolicy())
|
|
|
+ .map(QuotationResponse.DataDTO.TrafficPolicyDTO::getVehicleTax)
|
|
|
+ .map(x -> new TaxArrears("往年欠税", Double.parseDouble(x.getOverdueTaxAmount()),
|
|
|
+ Double.parseDouble(x.getLateFee())))
|
|
|
+ .orElse(new TaxArrears());
|
|
|
+
|
|
|
List<TaxArrears> taxArrearsList = Collections.singletonList(taxArrears);
|
|
|
insAreaCompany.setTaxArrears(JSON.parseArray(JSON.toJSONString(taxArrearsList)));
|
|
|
insAreaCompanyService.insertCompanyAndOrders(insAreaCompany);
|
|
|
quoteRespVo.setCompanyId(orderId);
|
|
|
return HttpResult.ok("报价成功", quoteRespVo);
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
- * @Description 更新承保状态和支付时间
|
|
|
- * @Author hxl
|
|
|
- * @Date 2024/4/2 11:29
|
|
|
- * @Param
|
|
|
- * @Return
|
|
|
- * @Exception
|
|
|
- *
|
|
|
- */
|
|
|
+ * @Description 更新承保状态和支付时间
|
|
|
+ * @Author hxl
|
|
|
+ * @Date 2024/4/2 11:29
|
|
|
+ * @Param
|
|
|
+ * @Return
|
|
|
+ * @Exception
|
|
|
+ */
|
|
|
@Override
|
|
|
public void getOrderDetailNew(String subOrderNo) throws Exception {
|
|
|
InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(subOrderNo);
|