|
@@ -7,6 +7,10 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.ydtech.constants.enums.InsuranceRisk;
|
|
import com.ydtech.constants.enums.InsuranceRisk;
|
|
|
import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
|
|
import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
|
|
|
import com.ydtech.core.page.HttpResult;
|
|
import com.ydtech.core.page.HttpResult;
|
|
|
|
|
+import com.ydtech.modules.admin.model.SysArea;
|
|
|
|
|
+import com.ydtech.modules.admin.model.vo.PersonAreaVo;
|
|
|
|
|
+import com.ydtech.modules.admin.model.vo.SysAreaVo;
|
|
|
|
|
+import com.ydtech.modules.admin.service.SysAreaService;
|
|
|
import com.ydtech.modules.fee.service.FeeRuleSchemeService;
|
|
import com.ydtech.modules.fee.service.FeeRuleSchemeService;
|
|
|
import com.ydtech.modules.ins.model.vo.*;
|
|
import com.ydtech.modules.ins.model.vo.*;
|
|
|
import com.ydtech.modules.order.components.ConfigureParametersComponents;
|
|
import com.ydtech.modules.order.components.ConfigureParametersComponents;
|
|
@@ -71,6 +75,9 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private InsTaskImagesService insTaskImagesService;
|
|
private InsTaskImagesService insTaskImagesService;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private SysAreaService sysAreaService;
|
|
|
|
|
+
|
|
|
@Value("${upload.file.path}")
|
|
@Value("${upload.file.path}")
|
|
|
private String uploadFilePath;
|
|
private String uploadFilePath;
|
|
|
|
|
|
|
@@ -106,8 +113,9 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
|
|
|
* @return
|
|
* @return
|
|
|
* @throws Exception
|
|
* @throws Exception
|
|
|
*/
|
|
*/
|
|
|
- private ODR1008Response ConfirmationVehicleCustomerInformation(String orderNo, String busiId,BaseQuoteInfoVo quoteInfoVo, DaJiaConfigureParameters daJiaConfigureParameters,ODR2009Response odr2009Request) throws Exception {
|
|
|
|
|
- ODR1008Request odr1008Request = new ODR1008Request(orderNo,busiId,quoteInfoVo,daJiaConfigureParameters,odr2009Request);
|
|
|
|
|
|
|
+ private ODR1008Response ConfirmationVehicleCustomerInformation(String orderNo, String busiId,BaseQuoteInfoVo quoteInfoVo, DaJiaConfigureParameters daJiaConfigureParameters,ODR2009Response odr2009Request,PersonAreaVo policyHolderPersonArea,PersonAreaVo insuredPersonArea) throws Exception {
|
|
|
|
|
+
|
|
|
|
|
+ ODR1008Request odr1008Request = new ODR1008Request(orderNo,busiId,quoteInfoVo,daJiaConfigureParameters,odr2009Request,policyHolderPersonArea,insuredPersonArea);
|
|
|
ODR1008Response odr1008Response = daJiaRequestApiComponents.carOrCustomInfoConfirm(odr1008Request);
|
|
ODR1008Response odr1008Response = daJiaRequestApiComponents.carOrCustomInfoConfirm(odr1008Request);
|
|
|
if(odr1008Response.getStatus().equals(Message.M0000.getCode())){
|
|
if(odr1008Response.getStatus().equals(Message.M0000.getCode())){
|
|
|
//车辆与客户信息确认返回
|
|
//车辆与客户信息确认返回
|
|
@@ -130,6 +138,19 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
|
|
|
DaJiaConfigureParameters daJiaConfigureParameters = new DaJiaConfigureParameters();
|
|
DaJiaConfigureParameters daJiaConfigureParameters = new DaJiaConfigureParameters();
|
|
|
configureParametersComponents.toEntity(daJiaConfigureParameters,t.getAgreementId());
|
|
configureParametersComponents.toEntity(daJiaConfigureParameters,t.getAgreementId());
|
|
|
PtlAgreementAttribution ptlAgreementAttribution = ptlAgreementAttributionService.getById(t.getAgreementId());
|
|
PtlAgreementAttribution ptlAgreementAttribution = ptlAgreementAttributionService.getById(t.getAgreementId());
|
|
|
|
|
+
|
|
|
|
|
+ //投保人区划信息
|
|
|
|
|
+ PersonAreaVo policyHolderPersonArea = sysAreaService.queryByAddress(quoteInfoVo.getPolicyHolderInfo().getAddr(), quoteInfoVo.getPolicyHolderInfo().getIdentifyNumber());
|
|
|
|
|
+
|
|
|
|
|
+ //被保人区划信息
|
|
|
|
|
+ PersonAreaVo insuredPersonArea = sysAreaService.queryByAddress(quoteInfoVo.getInsuredPersonInfo().getAddr(), quoteInfoVo.getInsuredPersonInfo().getIdentifyNumber());
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ //投保人 赛选出的地址条件
|
|
|
|
|
+// List<SysArea> collect = sysAreaVos.stream().filter(item -> quoteInfoVo.getPolicyHolderInfo().getAddr().contains(item.getAreaCname())).collect(Collectors.toList());
|
|
|
|
|
+// List<SysArea> sysAreas1 = sysAreaService.queryAllParent(collect1.get(0));
|
|
|
|
|
+
|
|
|
// 1.获取业务订单号接口
|
|
// 1.获取业务订单号接口
|
|
|
String orderNo = getOrderNo(daJiaConfigureParameters);
|
|
String orderNo = getOrderNo(daJiaConfigureParameters);
|
|
|
//生成业务id 1008 1010 接口使用
|
|
//生成业务id 1008 1010 接口使用
|
|
@@ -140,7 +161,7 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
|
|
|
ODR2009Response odr2009Response = daJiaRequestApiComponents.queryVehicleTypes(odr2009Request);
|
|
ODR2009Response odr2009Response = daJiaRequestApiComponents.queryVehicleTypes(odr2009Request);
|
|
|
|
|
|
|
|
// 3.车辆与客户信息确认
|
|
// 3.车辆与客户信息确认
|
|
|
- ODR1008Response odr1008Response = ConfirmationVehicleCustomerInformation(orderNo,busiId,quoteInfoVo,daJiaConfigureParameters,odr2009Response);
|
|
|
|
|
|
|
+ ODR1008Response odr1008Response = ConfirmationVehicleCustomerInformation(orderNo,busiId,quoteInfoVo,daJiaConfigureParameters,odr2009Response,policyHolderPersonArea,insuredPersonArea);
|
|
|
if(!odr1008Response.getStatus().equals(Message.M0000.getCode())){
|
|
if(!odr1008Response.getStatus().equals(Message.M0000.getCode())){
|
|
|
throw new Exception("车辆与客户信息确认接口失败");
|
|
throw new Exception("车辆与客户信息确认接口失败");
|
|
|
}
|
|
}
|
|
@@ -169,6 +190,11 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
|
|
|
HttpResult<QuoteRespVo> quoteRespVoHttpResult = responseOrder(odr1009Response, quoteRespVo, ptlAgreementAttribution, orderNo, quoteInfoVo.getOrderNo(),busiId);
|
|
HttpResult<QuoteRespVo> quoteRespVoHttpResult = responseOrder(odr1009Response, quoteRespVo, ptlAgreementAttribution, orderNo, quoteInfoVo.getOrderNo(),busiId);
|
|
|
return quoteRespVoHttpResult;
|
|
return quoteRespVoHttpResult;
|
|
|
}else{
|
|
}else{
|
|
|
|
|
+ if(odr1009Response.getResult().getJqAppStatus().equals("0") && odr1009Response.getStatus().equals("0002")) {
|
|
|
|
|
+ throw new Exception("报价失败,原因:"+odr1009Response.getResult().getJqAppStatusMessage());
|
|
|
|
|
+ }else if(odr1009Response.getResult().getSyAppStatus().equals("0") && odr1009Response.getStatus().equals("0002")) {
|
|
|
|
|
+ throw new Exception("报价失败,原因:" + odr1009Response.getResult().getSyAppStatusMessage());
|
|
|
|
|
+ }
|
|
|
throw new Exception("报价失败");
|
|
throw new Exception("报价失败");
|
|
|
}
|
|
}
|
|
|
}catch(Exception e){
|
|
}catch(Exception e){
|
|
@@ -380,8 +406,13 @@ public class DaJiaOrderServiceImpl implements DaJiaOrderService {
|
|
|
insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
|
|
insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
|
|
|
return HttpResult.ok("核保成功");
|
|
return HttpResult.ok("核保成功");
|
|
|
}
|
|
}
|
|
|
|
|
+ }else{
|
|
|
|
|
+ if(odr1010Response.getResult().getJqAppStatus().equals("0") && odr1010Response.getStatus().equals("0003")){
|
|
|
|
|
+ throw new RuntimeException("核保失败,原因:"+odr1010Response.getResult().getJqAppStatusMessage());
|
|
|
|
|
+ }else if(odr1010Response.getResult().getSyAppStatus().equals("0") && odr1010Response.getStatus().equals("0003")){
|
|
|
|
|
+ throw new RuntimeException("核保失败,原因:"+odr1010Response.getResult().getSyAppStatusMessage());
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
-// return HttpResult.error("核保失败");
|
|
|
|
|
throw new RuntimeException("核保失败");
|
|
throw new RuntimeException("核保失败");
|
|
|
}catch(Exception e){
|
|
}catch(Exception e){
|
|
|
throw new RuntimeException(e.getMessage());
|
|
throw new RuntimeException(e.getMessage());
|