|
|
@@ -19,7 +19,9 @@ import com.ydtech.modules.order.components.FileComponents;
|
|
|
import com.ydtech.modules.order.components.InsImagesUploadCacheComponents;
|
|
|
import com.ydtech.modules.order.components.yangguang.YangGuangRequestApiComponents;
|
|
|
import com.ydtech.modules.order.constants.InsuranceTypeCorrespondence;
|
|
|
+import com.ydtech.modules.order.constants.QuoteNumberConstant;
|
|
|
import com.ydtech.modules.order.constants.UnderwritingStatus;
|
|
|
+import com.ydtech.modules.order.dao.SysQuoteRecordMapper;
|
|
|
import com.ydtech.modules.order.entity.*;
|
|
|
import com.ydtech.modules.order.entity.api.yangguang.request.*;
|
|
|
import com.ydtech.modules.order.entity.api.yangguang.response.*;
|
|
|
@@ -30,6 +32,7 @@ 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.po.SysQuoteRecord;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
|
|
|
import com.ydtech.modules.order.entity.vo.PolicyPrintVo;
|
|
|
@@ -83,6 +86,10 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
|
|
|
private final FileComponents fileComponents;
|
|
|
|
|
|
+ private final SysQuoteRecordMapper sysQuoteRecordMapper;
|
|
|
+
|
|
|
+ private final SysQuoteRedisService sysQuoteRedisService;
|
|
|
+
|
|
|
@Value("${upload.file.path}")
|
|
|
private String uploadFilePath;
|
|
|
|
|
|
@@ -93,6 +100,12 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
private String apiUrl;
|
|
|
@Override
|
|
|
public HttpResult<QuoteRespVo> quote(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<List<YgQuoteAccidentVo>> quoteVo) throws JsonProcessingException {
|
|
|
+
|
|
|
+ Integer maxQuoteNum = quoteVo.getMaxQuoteNum();
|
|
|
+
|
|
|
+ List<SysQuoteRecord> sysQuoteRecords = new ArrayList<>();
|
|
|
+
|
|
|
+
|
|
|
// 通过协议获取配置实体
|
|
|
String agreementId = quoteVo.getAgreementId();
|
|
|
PtlAgreementAttribution ptlAgreementAttribution = ptlAgreementAttributionService.getById(agreementId);
|
|
|
@@ -138,58 +151,123 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
|
|
|
DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
|
|
|
- LocalDateTime dateTime = LocalDateTime.parse(endDate, inputFormatter);
|
|
|
- String newDateStr = dateTime.format(outputFormatter);
|
|
|
- YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequestRe = new YangGuangAccuracyCalculateRequest(quoteInfoVo, purchasePrice, carModelList1, riskList.get(0),newDateStr,ygConfigureParameters,quoteVo);
|
|
|
- yangGuangAccuracyCalculateRequestRe.setInfotransNo(yangGuangQueryVehicleModelResponse.getInfotransNo());
|
|
|
- YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponseRe = yangGuangRequestApiComponents.accuracyCalculaye(yangGuangAccuracyCalculateRequestRe);
|
|
|
- if (insOrders.getProductid().equals("034001") || insOrders.getProductid().equals("0330034001") || insOrders.getProductid().equals("0330034002")) {
|
|
|
- if (yangGuangAccuracyCalculateResponseRe.getErrorCode().equals("0")) {
|
|
|
- YangGuangAccuracyCalculateResponse.itemcar itemcar = yangGuangAccuracyCalculateResponseRe.getItemcar();
|
|
|
- String actualValue = itemcar.getActualValue();
|
|
|
- YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequest1 = new YangGuangAccuracyCalculateRequest(quoteInfoVo, actualValue, carModelList1, riskList.get(0),newDateStr,ygConfigureParameters,quoteVo);
|
|
|
- yangGuangAccuracyCalculateRequest1.setInfotransNo(yangGuangQueryVehicleModelResponse.getInfotransNo());
|
|
|
- YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponse1 = yangGuangRequestApiComponents.accuracyCalculaye(yangGuangAccuracyCalculateRequest1);
|
|
|
- boolean isEnergy = carInfo.isNewEnergy();
|
|
|
-
|
|
|
- if (!yangGuangAccuracyCalculateResponse1.getErrorCode().equals("0")) {
|
|
|
- InsOrders order = insOrdersService.getById(quoteInfoVo.getOrderNo());
|
|
|
- InsOrderStatusEnum insOrderStatusEnum = InsOrderStatusEnum.QUOTE_FAILED;
|
|
|
- if (yangGuangAccuracyCalculateResponse1.getErrorMessage().contains("重复投保")) {
|
|
|
- insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
+ LocalDateTime dateTime = LocalDateTime.parse(endDate, inputFormatter);
|
|
|
+ String newDateStr = dateTime.format(outputFormatter);
|
|
|
+ YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequestRe = new YangGuangAccuracyCalculateRequest(quoteInfoVo, purchasePrice, carModelList1, riskList.get(0),newDateStr,ygConfigureParameters,quoteVo);
|
|
|
+ yangGuangAccuracyCalculateRequestRe.setInfotransNo(yangGuangQueryVehicleModelResponse.getInfotransNo());
|
|
|
+ maxQuoteNum--;
|
|
|
+ SysQuoteRecord sysQuoteRecord = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.DATE_DEAL.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord);
|
|
|
+ if(maxQuoteNum <= 0){
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ throw new SystemException("报价次数限制");
|
|
|
+ }
|
|
|
+ YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponseRe = yangGuangRequestApiComponents.accuracyCalculaye(yangGuangAccuracyCalculateRequestRe);
|
|
|
+ if (insOrders.getProductid().equals("034001") || insOrders.getProductid().equals("0330034001") || insOrders.getProductid().equals("0330034002")) {
|
|
|
+ if (yangGuangAccuracyCalculateResponseRe.getErrorCode().equals("0")) {
|
|
|
+ YangGuangAccuracyCalculateResponse.itemcar itemcar = yangGuangAccuracyCalculateResponseRe.getItemcar();
|
|
|
+ String actualValue = itemcar.getActualValue();
|
|
|
+ YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequest1 = new YangGuangAccuracyCalculateRequest(quoteInfoVo, actualValue, carModelList1, riskList.get(0),newDateStr,ygConfigureParameters,quoteVo);
|
|
|
+ yangGuangAccuracyCalculateRequest1.setInfotransNo(yangGuangQueryVehicleModelResponse.getInfotransNo());
|
|
|
+ maxQuoteNum--;
|
|
|
+ SysQuoteRecord sysQuoteRecord1 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.DATE_DEAL.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord1);
|
|
|
+ if(maxQuoteNum <= 0){
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ throw new SystemException("报价次数限制");
|
|
|
}
|
|
|
- insOrdersService.responseFailedOrder(quoteVo,ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse1.getErrorMessage(),insOrderStatusEnum);
|
|
|
- throw new SystemException(yangGuangAccuracyCalculateResponse1.getErrorMessage());
|
|
|
+ YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponse1 = yangGuangRequestApiComponents.accuracyCalculaye(yangGuangAccuracyCalculateRequest1);
|
|
|
+ boolean isEnergy = carInfo.isNewEnergy();
|
|
|
+
|
|
|
+ if (!yangGuangAccuracyCalculateResponse1.getErrorCode().equals("0")) {
|
|
|
+ InsOrders order = insOrdersService.getById(quoteInfoVo.getOrderNo());
|
|
|
+ InsOrderStatusEnum insOrderStatusEnum = InsOrderStatusEnum.QUOTE_FAILED;
|
|
|
+ if (yangGuangAccuracyCalculateResponse1.getErrorMessage().contains("重复投保")) {
|
|
|
+ insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
+ }
|
|
|
+ String subOrderNo = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse1.getErrorMessage(), insOrderStatusEnum);
|
|
|
+ SysQuoteRecord sysQuoteRecord2 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_FAILED.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord2);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(subOrderNo);
|
|
|
+ });
|
|
|
+
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ throw new SystemException(yangGuangAccuracyCalculateResponse1.getErrorMessage());
|
|
|
+ }
|
|
|
+ // 处理数据
|
|
|
+ QuoteRespVo quoteRespVo = getQuoteRespVo(yangGuangAccuracyCalculateResponse1, quoteInfoVo, quoteVo.getAccidentalDrivingVo(), isEnergy);
|
|
|
+
|
|
|
+ // 设置核心报价车型
|
|
|
+ quoteRespVo.setCoreModels(carModelList1.toCoreModelsVo());
|
|
|
+ HttpResult<QuoteRespVo> quoteRespVoHttpResult = responseOrder(yangGuangAccuracyCalculateResponse1, quoteRespVo, ptlAgreementAttribution, quoteInfoVo.getOrderNo(),
|
|
|
+ quoteVo.getAccidentalDrivingVo());
|
|
|
+
|
|
|
+ SysQuoteRecord sysQuoteRecord3 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_SUCCESS.getCode().toString(),QuoteNumberConstant.QuoteResult.SUCCESS.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord3);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(quoteRespVoHttpResult.getData().getCompanyId());
|
|
|
+ });
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ return quoteRespVoHttpResult;
|
|
|
+ } else {
|
|
|
+ InsOrders order = insOrdersService.getById(quoteInfoVo.getOrderNo());
|
|
|
+ InsOrderStatusEnum insOrderStatusEnum = InsOrderStatusEnum.QUOTE_FAILED;
|
|
|
+ if (yangGuangAccuracyCalculateResponse.getErrorMessage().contains("重复投保")) {
|
|
|
+ insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
+ }
|
|
|
+ String subOrderNo = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse.getErrorMessage(), insOrderStatusEnum);
|
|
|
+ SysQuoteRecord sysQuoteRecord2 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_FAILED.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord2);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(subOrderNo);
|
|
|
+ });
|
|
|
+
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ throw new SystemException(yangGuangAccuracyCalculateResponse.getErrorMessage());
|
|
|
}
|
|
|
- // 处理数据
|
|
|
- QuoteRespVo quoteRespVo = getQuoteRespVo(yangGuangAccuracyCalculateResponse1, quoteInfoVo, quoteVo.getAccidentalDrivingVo(), isEnergy);
|
|
|
-
|
|
|
- // 设置核心报价车型
|
|
|
- quoteRespVo.setCoreModels(carModelList1.toCoreModelsVo());
|
|
|
- return responseOrder(yangGuangAccuracyCalculateResponse1, quoteRespVo, ptlAgreementAttribution, quoteInfoVo.getOrderNo(),
|
|
|
- quoteVo.getAccidentalDrivingVo());
|
|
|
} else {
|
|
|
- InsOrders order = insOrdersService.getById(quoteInfoVo.getOrderNo());
|
|
|
- InsOrderStatusEnum insOrderStatusEnum = InsOrderStatusEnum.QUOTE_FAILED;
|
|
|
- if (yangGuangAccuracyCalculateResponse.getErrorMessage().contains("重复投保")) {
|
|
|
+ boolean isEnergy = carInfo.isNewEnergy();
|
|
|
+ if (!yangGuangAccuracyCalculateResponse.getErrorCode().equals("0")) {
|
|
|
+ QuoteRespVo resp = new QuoteRespVo();
|
|
|
+ InsOrders order = insOrdersService.getById(quoteInfoVo.getOrderNo());
|
|
|
+ InsOrderStatusEnum insOrderStatusEnum = InsOrderStatusEnum.QUOTE_FAILED;
|
|
|
+ if (yangGuangAccuracyCalculateResponse.getErrorMessage().contains("重复投保")) {
|
|
|
insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
+ }
|
|
|
+ String subOrderNo = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse.getErrorMessage(), insOrderStatusEnum);
|
|
|
+ SysQuoteRecord sysQuoteRecord2 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_FAILED.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord2);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(subOrderNo);
|
|
|
+ });
|
|
|
+
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ throw new SystemException(yangGuangAccuracyCalculateResponse.getErrorMessage());
|
|
|
}
|
|
|
- insOrdersService.responseFailedOrder(quoteVo,ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse.getErrorMessage(),insOrderStatusEnum);
|
|
|
- throw new SystemException(yangGuangAccuracyCalculateResponse.getErrorMessage());
|
|
|
- }
|
|
|
- } else {
|
|
|
- boolean isEnergy = carInfo.isNewEnergy();
|
|
|
- if (!yangGuangAccuracyCalculateResponseRe.getErrorCode().equals("0")) {
|
|
|
- InsOrders order = insOrdersService.getById(quoteInfoVo.getOrderNo());
|
|
|
- InsOrderStatusEnum insOrderStatusEnum = InsOrderStatusEnum.QUOTE_FAILED;
|
|
|
- if (yangGuangAccuracyCalculateResponseRe.getErrorMessage().contains("重复投保")) {
|
|
|
- insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
- }
|
|
|
- insOrdersService.responseFailedOrder(quoteVo,ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponseRe.getErrorMessage(),insOrderStatusEnum);
|
|
|
- throw new SystemException(yangGuangAccuracyCalculateResponseRe.getErrorMessage());
|
|
|
- }
|
|
|
- // 处理数据
|
|
|
- QuoteRespVo quoteRespVo = getQuoteRespVo(yangGuangAccuracyCalculateResponseRe, quoteInfoVo, quoteVo.getAccidentalDrivingVo(), isEnergy);
|
|
|
+ // 处理数据
|
|
|
+ QuoteRespVo quoteRespVo = getQuoteRespVo(yangGuangAccuracyCalculateResponse, quoteInfoVo, quoteVo.getAccidentalDrivingVo(), isEnergy);
|
|
|
|
|
|
// 设置核心报价车型
|
|
|
quoteRespVo.setCoreModels(carModelList1.toCoreModelsVo());
|
|
|
@@ -213,7 +291,18 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
if (yangGuangAccuracyCalculateResponse1.getErrorMessage().contains("重复投保")) {
|
|
|
insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
}
|
|
|
- insOrdersService.responseFailedOrder(quoteVo,ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse1.getErrorMessage(),insOrderStatusEnum);
|
|
|
+ String s = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse1.getErrorMessage(), insOrderStatusEnum);
|
|
|
+ SysQuoteRecord sysQuoteRecord2 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_FAILED.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord2);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(s);
|
|
|
+ });
|
|
|
+
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
throw new SystemException(yangGuangAccuracyCalculateResponse1.getErrorMessage());
|
|
|
}
|
|
|
|
|
|
@@ -222,15 +311,36 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
|
|
|
// 设置核心报价车型
|
|
|
quoteRespVo.setCoreModels(carModelList1.toCoreModelsVo());
|
|
|
- return responseOrder(yangGuangAccuracyCalculateResponse1, quoteRespVo, ptlAgreementAttribution, quoteInfoVo.getOrderNo(),
|
|
|
+ HttpResult<QuoteRespVo> quoteRespVoHttpResult = responseOrder(yangGuangAccuracyCalculateResponse1, quoteRespVo, ptlAgreementAttribution, quoteInfoVo.getOrderNo(),
|
|
|
quoteVo.getAccidentalDrivingVo());
|
|
|
+ SysQuoteRecord sysQuoteRecord3 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_SUCCESS.getCode().toString(),QuoteNumberConstant.QuoteResult.SUCCESS.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord3);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(quoteRespVoHttpResult.getData().getCompanyId());
|
|
|
+ });
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ return quoteRespVoHttpResult;
|
|
|
} else {
|
|
|
InsOrders order = insOrdersService.getById(quoteInfoVo.getOrderNo());
|
|
|
InsOrderStatusEnum insOrderStatusEnum = InsOrderStatusEnum.QUOTE_FAILED;
|
|
|
if (yangGuangAccuracyCalculateResponse.getErrorMessage().contains("重复投保")) {
|
|
|
insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
}
|
|
|
- insOrdersService.responseFailedOrder(quoteVo,ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse.getErrorMessage(),insOrderStatusEnum);
|
|
|
+ String s = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse.getErrorMessage(), insOrderStatusEnum);
|
|
|
+ SysQuoteRecord sysQuoteRecord2 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_FAILED.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord2);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(s);
|
|
|
+ });
|
|
|
+
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
throw new SystemException(yangGuangAccuracyCalculateResponse.getErrorMessage());
|
|
|
}
|
|
|
} else {
|
|
|
@@ -243,7 +353,18 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
if (yangGuangAccuracyCalculateResponse.getErrorMessage().contains("重复投保")) {
|
|
|
insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
}
|
|
|
- insOrdersService.responseFailedOrder(quoteVo,ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse.getErrorMessage(),insOrderStatusEnum);
|
|
|
+ String s = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, yangGuangAccuracyCalculateResponse.getErrorMessage(), insOrderStatusEnum);
|
|
|
+ SysQuoteRecord sysQuoteRecord2 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_FAILED.getCode().toString(),QuoteNumberConstant.QuoteResult.FAIL.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord2);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(s);
|
|
|
+ });
|
|
|
+
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ //刷新redis中的报价次数
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
throw new SystemException(yangGuangAccuracyCalculateResponse.getErrorMessage());
|
|
|
}
|
|
|
// 处理数据
|
|
|
@@ -251,8 +372,18 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
|
|
|
|
|
|
// 设置核心报价车型
|
|
|
quoteRespVo.setCoreModels(carModelList1.toCoreModelsVo());
|
|
|
- return responseOrder(yangGuangAccuracyCalculateResponse, quoteRespVo, ptlAgreementAttribution, quoteInfoVo.getOrderNo(),
|
|
|
+ HttpResult<QuoteRespVo> quoteRespVoHttpResult = responseOrder(yangGuangAccuracyCalculateResponse, quoteRespVo, ptlAgreementAttribution, quoteInfoVo.getOrderNo(),
|
|
|
quoteVo.getAccidentalDrivingVo());
|
|
|
+ SysQuoteRecord sysQuoteRecord3 = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_SUCCESS.getCode().toString(),QuoteNumberConstant.QuoteResult.SUCCESS.getCode().toString());
|
|
|
+ sysQuoteRecords.add(sysQuoteRecord3);
|
|
|
+ //存储报价记录
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
+ item.setSubOrderNo(quoteRespVoHttpResult.getData().getCompanyId());
|
|
|
+ });
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(),quoteInfoVo.getUserid(),sysQuoteRecords);
|
|
|
+ return quoteRespVoHttpResult;
|
|
|
}
|
|
|
}
|
|
|
|