|
@@ -15,7 +15,9 @@ import com.ydtech.modules.order.components.ConfigureParametersComponents;
|
|
|
import com.ydtech.modules.order.components.InsImagesUploadCacheComponents;
|
|
import com.ydtech.modules.order.components.InsImagesUploadCacheComponents;
|
|
|
import com.ydtech.modules.order.components.zijin.ZijinRequestApiComponents;
|
|
import com.ydtech.modules.order.components.zijin.ZijinRequestApiComponents;
|
|
|
import com.ydtech.modules.order.constants.InsuranceTypeCorrespondence;
|
|
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.constants.UnderwritingStatus;
|
|
|
|
|
+import com.ydtech.modules.order.dao.SysQuoteRecordMapper;
|
|
|
import com.ydtech.modules.order.entity.*;
|
|
import com.ydtech.modules.order.entity.*;
|
|
|
import com.ydtech.modules.order.entity.api.zijin.constants.enums.*;
|
|
import com.ydtech.modules.order.entity.api.zijin.constants.enums.*;
|
|
|
import com.ydtech.modules.order.entity.api.zijin.request.*;
|
|
import com.ydtech.modules.order.entity.api.zijin.request.*;
|
|
@@ -25,6 +27,7 @@ import com.ydtech.modules.order.entity.dto.DrivingInsuranceDto;
|
|
|
import com.ydtech.modules.order.entity.dto.ReadPdfUrlListDto;
|
|
import com.ydtech.modules.order.entity.dto.ReadPdfUrlListDto;
|
|
|
import com.ydtech.modules.order.entity.filter.CarModelsFilterUtils;
|
|
import com.ydtech.modules.order.entity.filter.CarModelsFilterUtils;
|
|
|
import com.ydtech.modules.order.entity.po.InsTaskImagesBase64;
|
|
import com.ydtech.modules.order.entity.po.InsTaskImagesBase64;
|
|
|
|
|
+import com.ydtech.modules.order.entity.po.SysQuoteRecord;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
|
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
|
|
import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
|
|
|
import com.ydtech.modules.order.entity.vo.PolicyPrintVo;
|
|
import com.ydtech.modules.order.entity.vo.PolicyPrintVo;
|
|
@@ -71,6 +74,10 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
|
|
|
|
|
|
|
|
private final InsImagesUploadCacheComponents insImagesUploadCacheComponents;
|
|
private final InsImagesUploadCacheComponents insImagesUploadCacheComponents;
|
|
|
|
|
|
|
|
|
|
+ private final SysQuoteRecordMapper sysQuoteRecordMapper;
|
|
|
|
|
+
|
|
|
|
|
+ private final SysQuoteRedisService sysQuoteRedisService;
|
|
|
|
|
+
|
|
|
// 重复投保次数
|
|
// 重复投保次数
|
|
|
private static final int REPEAT_NUMBER = 3;
|
|
private static final int REPEAT_NUMBER = 3;
|
|
|
|
|
|
|
@@ -107,6 +114,9 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public HttpResult<QuoteRespVo> quote(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<List<ZjQuoteAccidentVo>> quoteVo) {
|
|
public HttpResult<QuoteRespVo> quote(BaseQuoteInfoVo quoteInfoVo, BaseQuoteVo<List<ZjQuoteAccidentVo>> quoteVo) {
|
|
|
|
|
+ Integer maxQuoteNum = quoteVo.getMaxQuoteNum();
|
|
|
|
|
+ List<SysQuoteRecord> sysQuoteRecords = new ArrayList<>();
|
|
|
|
|
+
|
|
|
// 1. 协议id获取配置实体
|
|
// 1. 协议id获取配置实体
|
|
|
String agreementId = quoteVo.getAgreementId();
|
|
String agreementId = quoteVo.getAgreementId();
|
|
|
// 1.1 账号信息
|
|
// 1.1 账号信息
|
|
@@ -160,7 +170,15 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
|
|
|
insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
insOrderStatusEnum = InsOrderStatusEnum.REPEAT_INSURE;
|
|
|
}
|
|
}
|
|
|
String subOrderNo = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, calculatePremiumResponse.getRtnMsg(), insOrderStatusEnum);
|
|
String subOrderNo = insOrdersService.responseFailedOrder(quoteVo, ptlAgreementAttribution, order, calculatePremiumResponse.getRtnMsg(), insOrderStatusEnum);
|
|
|
-
|
|
|
|
|
|
|
+ SysQuoteRecord deplSysQuoteRecord = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_SUCCESS.getCode().toString(),QuoteNumberConstant.QuoteResult.SUCCESS.getCode().toString());
|
|
|
|
|
+ sysQuoteRecords.add(deplSysQuoteRecord);
|
|
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
|
|
+ item.setSubOrderNo(subOrderNo);
|
|
|
|
|
+ });
|
|
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
|
|
+ //刷新redis中的报价次数
|
|
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(), quoteInfoVo.getUserid(), sysQuoteRecords);
|
|
|
throw new SystemException(calculatePremiumResponse.getRtnMsg());
|
|
throw new SystemException(calculatePremiumResponse.getRtnMsg());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -174,8 +192,18 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
|
|
|
|
|
|
|
|
// 设置核心报价车型
|
|
// 设置核心报价车型
|
|
|
quoteRespVo.setCoreModels(vehicleModelInfosDTO.toCoreModelsVo());
|
|
quoteRespVo.setCoreModels(vehicleModelInfosDTO.toCoreModelsVo());
|
|
|
- return responseOrder(calculatePremiumResponse, quoteRespVo, ptlAgreementAttribution, calculatePremiumRequest.getOrderId(),
|
|
|
|
|
|
|
+ HttpResult<QuoteRespVo> quoteRespVoHttpResult = responseOrder(calculatePremiumResponse, quoteRespVo, ptlAgreementAttribution, calculatePremiumRequest.getOrderId(),
|
|
|
calculatePremiumRequest.getOrderNo(), quoteVo.getAccidentalDrivingVo());
|
|
calculatePremiumRequest.getOrderNo(), quoteVo.getAccidentalDrivingVo());
|
|
|
|
|
+ SysQuoteRecord deplSysQuoteRecord = new SysQuoteRecord(quoteInfoVo.getUserid(),quoteVo.getCompanyId(),quoteInfoVo.getCarInfo().getLicenseNo(),
|
|
|
|
|
+ QuoteNumberConstant.QuoteAction.QUOTE_SUCCESS.getCode().toString(),QuoteNumberConstant.QuoteResult.SUCCESS.getCode().toString());
|
|
|
|
|
+ sysQuoteRecords.add(deplSysQuoteRecord);
|
|
|
|
|
+ sysQuoteRecords.forEach(item->{
|
|
|
|
|
+ item.setSubOrderNo(quoteRespVoHttpResult.getData().getCompanyId());
|
|
|
|
|
+ });
|
|
|
|
|
+ sysQuoteRecordMapper.insertBatch(sysQuoteRecords);
|
|
|
|
|
+ //刷新redis中的报价次数
|
|
|
|
|
+ sysQuoteRedisService.refreshQuoteNum(quoteVo.getCompanyId(), quoteInfoVo.getUserid(), sysQuoteRecords);
|
|
|
|
|
+ return quoteRespVoHttpResult;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|