|
|
@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
|
+import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import com.ydtech.config.properties.YangGuangApiConfigurationProperties;
|
|
|
import com.ydtech.constants.enums.InsuranceOrderPdf;
|
|
|
import com.ydtech.constants.enums.InsuranceRisk;
|
|
|
@@ -22,9 +23,11 @@ import com.ydtech.modules.order.entity.api.yangguang.request.*;
|
|
|
import com.ydtech.modules.order.entity.api.yangguang.response.*;
|
|
|
import com.ydtech.modules.order.entity.api.zijin.constants.enums.BusType;
|
|
|
import com.ydtech.modules.order.entity.config.YangGuangConfigureParameters;
|
|
|
+import com.ydtech.modules.order.entity.crawler.vo.CrawlerPolicyPrintVo;
|
|
|
import com.ydtech.modules.order.entity.dto.ReadPdfUrlListDto;
|
|
|
import com.ydtech.modules.order.entity.filter.CarModelsFilterUtils;
|
|
|
import com.ydtech.modules.order.entity.po.InsTaskImagesBase64;
|
|
|
+import com.ydtech.modules.order.entity.po.InsUploadFiles;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
|
|
|
import com.ydtech.modules.order.entity.vo.PolicyPrintVo;
|
|
|
@@ -70,7 +73,9 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
|
|
|
private final InsTaskImagesService insTaskImagesService;
|
|
|
|
|
|
- private InsImagesUploadCacheComponents insImagesUploadCacheComponents;
|
|
|
+ private final InsUploadFilesService insUploadFilesService;
|
|
|
+
|
|
|
+ private final InsImagesUploadCacheComponents insImagesUploadCacheComponents;
|
|
|
|
|
|
|
|
|
@Value("${upload.file.path}")
|
|
|
@@ -121,7 +126,7 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequest = new YangGuangAccuracyCalculateRequest(quoteInfoVo, purchasePrice, carModelList1, riskList.get(0),startDate,ygConfigureParameters,quoteVo.getAccidentalDrivingVo());
|
|
|
yangGuangAccuracyCalculateRequest.setInfotransNo(yangGuangQueryVehicleModelResponse.getInfotransNo());
|
|
|
YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponse = yangGuangRequestApiComponents.accuracyCalculaye(yangGuangAccuracyCalculateRequest);
|
|
|
- if (insOrders.getProductid().equals("034001") || insOrders.getProductid().equals("0330034001")) {
|
|
|
+ if (insOrders.getProductid().equals("034001") || insOrders.getProductid().equals("0330034001") || insOrders.getProductid().equals("0330034002")) {
|
|
|
if (yangGuangAccuracyCalculateResponse.getErrorCode().equals("0")) {
|
|
|
YangGuangAccuracyCalculateResponse.itemcar itemcar = yangGuangAccuracyCalculateResponse.getItemcar();
|
|
|
String actualValue = itemcar.getActualValue();
|
|
|
@@ -195,9 +200,12 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
if (insTaskImagesBase64s.isEmpty()) {
|
|
|
return HttpResult.ok();
|
|
|
}
|
|
|
- for (InsTaskImagesBase64 insTaskImagesBase64 :insTaskImagesBase64s) {
|
|
|
- YangGuangUpLoadRequest yangGuangUpLoadRequest = new YangGuangUpLoadRequest(InfotransNo, insTaskImagesBase64, parameters);
|
|
|
- String yangGuangUpLoadResponse = yangGuangRequestApiComponents.upload(yangGuangUpLoadRequest);
|
|
|
+ for (InsTaskImagesBase64 insTaskImagesBase64 : insTaskImagesBase64s) {
|
|
|
+ ObjectMapper objectMapper = new ObjectMapper();
|
|
|
+ InsUploadFiles insUploadFiles = insUploadFilesService.queryById(insTaskImagesBase64.getImageId());
|
|
|
+ YangGuangUpLoadRequest yangGuangUpLoadRequest = new YangGuangUpLoadRequest(InfotransNo, insTaskImagesBase64, parameters, insUploadFiles);
|
|
|
+ String json = objectMapper.writeValueAsString(yangGuangUpLoadRequest);
|
|
|
+ String yangGuangUpLoadResponse = yangGuangRequestApiComponents.upload(json);
|
|
|
log.info("上传影像:{}", yangGuangUpLoadResponse);
|
|
|
}
|
|
|
insImagesUploadCacheComponents.setUploadImageCache(companyId, insTaskImagesBase64s);
|
|
|
@@ -225,6 +233,18 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
if (!yangGuangSubmitResponse.getErrorCode().equals("0")) {
|
|
|
return HttpResult.error(yangGuangSubmitResponse.getErrorMessage());
|
|
|
}
|
|
|
+ if (yangGuangSubmitResponse.getCiProposalNo() != null) {
|
|
|
+ insAreaCompany.setJqapplyno(yangGuangSubmitResponse.getCiProposalNo());
|
|
|
+ insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
|
|
|
+ }
|
|
|
+ if (yangGuangSubmitResponse.getBiProposalNo() != null) {
|
|
|
+ insAreaCompany.setSyapplyno(yangGuangSubmitResponse.getBiProposalNo());
|
|
|
+ insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
|
|
|
+ }
|
|
|
+ if (yangGuangSubmitResponse.getPtptNonVehicleProductInformationList() != null) {
|
|
|
+ insAreaCompany.setCrossInsurance(yangGuangSubmitResponse.getPtptNonVehicleProductInformationList());
|
|
|
+ insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
|
|
|
+ }
|
|
|
// 核保转人工
|
|
|
if (yangGuangSubmitResponse.getCiUnderWriteFlag() != null && !yangGuangSubmitResponse.getCiUnderWriteFlag().equals("1")) {
|
|
|
if (yangGuangSubmitResponse.getCiUnderWriteFlag().equals("3")) {
|
|
|
@@ -232,11 +252,11 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
insSubOrderUpdateDetailService.insertData(insAreaCompany,insAreaCompany.getOrderstatus(),InsOrderStatusEnum.WAIT_AUDIT.getCode(),"1");
|
|
|
insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_AUDIT.getCode());
|
|
|
String message = yangGuangSubmitResponse.getCiUnderWriteMsg();
|
|
|
- insAreaCompany.setJqpolicyno(yangGuangSubmitResponse.getCiProposalNo() != null ? yangGuangSubmitResponse.getCiProposalNo() :"");
|
|
|
+ insAreaCompany.setJqapplyno(yangGuangSubmitResponse.getCiProposalNo() != null ? yangGuangSubmitResponse.getCiProposalNo() :"");
|
|
|
insAreaCompanyService.updateCompanyAndOrdersMessage(insAreaCompany, message);
|
|
|
return HttpResult.error("自核转人工,原因:" + message);
|
|
|
}
|
|
|
- return HttpResult.error("商业险自核失败,原因:" + yangGuangSubmitResponse.getBiUnderWriteMsg());
|
|
|
+ return HttpResult.error("交强险自核失败,原因:" + yangGuangSubmitResponse.getCiUnderWriteMsg());
|
|
|
}
|
|
|
if (yangGuangSubmitResponse.getBiUnderWriteFlag() != null && !yangGuangSubmitResponse.getBiUnderWriteFlag().equals("1")) {
|
|
|
if (yangGuangSubmitResponse.getBiUnderWriteFlag().equals("3")) {
|
|
|
@@ -244,15 +264,18 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
insSubOrderUpdateDetailService.insertData(insAreaCompany,insAreaCompany.getOrderstatus(),InsOrderStatusEnum.WAIT_AUDIT.getCode(),"1");
|
|
|
insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_AUDIT.getCode());
|
|
|
String message = yangGuangSubmitResponse.getBiUnderWriteMsg();
|
|
|
- insAreaCompany.setSypolicyno(yangGuangSubmitResponse.getBiProposalNo() != null ? yangGuangSubmitResponse.getBiProposalNo() :"");
|
|
|
+ insAreaCompany.setSyapplyno(yangGuangSubmitResponse.getBiProposalNo() != null ? yangGuangSubmitResponse.getBiProposalNo() :"");
|
|
|
insAreaCompanyService.updateCompanyAndOrdersMessage(insAreaCompany, message);
|
|
|
return HttpResult.error("自核转人工,原因:" + message);
|
|
|
}
|
|
|
return HttpResult.error("商业险自核失败,原因:" + yangGuangSubmitResponse.getBiUnderWriteMsg());
|
|
|
}
|
|
|
// 投保单号
|
|
|
- insAreaCompany.setJqpolicyno(yangGuangSubmitResponse.getCiProposalNo() != null ? yangGuangSubmitResponse.getCiProposalNo() :"");
|
|
|
- insAreaCompany.setSypolicyno(yangGuangSubmitResponse.getBiProposalNo() != null ? yangGuangSubmitResponse.getBiProposalNo() :"");
|
|
|
+ insAreaCompany.setJqapplyno(yangGuangSubmitResponse.getCiProposalNo() != null ? yangGuangSubmitResponse.getCiProposalNo() :"");
|
|
|
+ insAreaCompany.setSyapplyno(yangGuangSubmitResponse.getBiProposalNo() != null ? yangGuangSubmitResponse.getBiProposalNo() :"");
|
|
|
+ if (yangGuangSubmitResponse.getPtptNonVehicleProductInformationList() != null) {
|
|
|
+ insAreaCompany.setCrossInsurance(yangGuangSubmitResponse.getPtptNonVehicleProductInformationList());
|
|
|
+ }
|
|
|
insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
|
|
|
|
|
|
|
|
|
@@ -386,10 +409,17 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
insSubOrderUpdateDetailService.insertData(insAreaCompany, insAreaCompany.getOrderstatus(), InsOrderStatusEnum.WAIT_PAY.getCode(), "1");
|
|
|
insAreaCompany.setOrderstatus(InsOrderStatusEnum.WAIT_PAY.getCode());
|
|
|
//更新投保单号和保单号
|
|
|
+ if (insAreaCompany.getJqapplyno() != null && !insAreaCompany.getJqapplyno().equals("") && yangGuangProposalStatusQueryResponse.getCiPolicyNo().equals("")) {
|
|
|
+ return HttpResult.error("该订单未缴费");
|
|
|
+ }
|
|
|
+ if (insAreaCompany.getSyapplyno() != null && !insAreaCompany.getSyapplyno().equals("") && yangGuangProposalStatusQueryResponse.getBiPolicyNo().equals("")) {
|
|
|
+ return HttpResult.error("该订单未缴费");
|
|
|
+ }
|
|
|
insAreaCompany.setJqpolicyno(yangGuangProposalStatusQueryResponse.getCiPolicyNo());
|
|
|
insAreaCompany.setSypolicyno(yangGuangProposalStatusQueryResponse.getBiPolicyNo());
|
|
|
insAreaCompany.setJqapplyno(yangGuangProposalStatusQueryResponse.getCiProposalNo());
|
|
|
insAreaCompany.setSyapplyno(yangGuangProposalStatusQueryResponse.getBiProposalNo());
|
|
|
+ insAreaCompany.setOrderstatus(InsOrderStatusEnum.ACCEPT_INSURANCE.getCode());
|
|
|
//支付链接
|
|
|
YangGuangPaymentRequest yangGuangPaymentRequest = new YangGuangPaymentRequest(insAreaCompany, insOrders,yangGuangApiConfigurationProperties.getPayCallBack(),null,yangGuangConfigureParameters);
|
|
|
YangGuangPaymentResponse yangGuangPaymentResponse = yangGuangRequestApiComponents.payment(yangGuangPaymentRequest);
|