|
@@ -114,6 +114,8 @@ public class YongchengOrderApiServiceImpl implements YongchengOrderApiService {
|
|
|
|
|
|
|
|
public static final String SY_REGEX = "商业险.+?保险止期是[::\\s]?([0-9\\-:]+)";
|
|
public static final String SY_REGEX = "商业险.+?保险止期是[::\\s]?([0-9\\-:]+)";
|
|
|
|
|
|
|
|
|
|
+ public static final String DAN_JQ_REGEX = "终保日期[::\\s]?([0-9\\-]+)";
|
|
|
|
|
+
|
|
|
public static final String END_TIME = "23:59:59";
|
|
public static final String END_TIME = "23:59:59";
|
|
|
|
|
|
|
|
|
|
|
|
@@ -318,23 +320,15 @@ public class YongchengOrderApiServiceImpl implements YongchengOrderApiService {
|
|
|
m.getRequestLabel().getCondition().getVhl().setCQryCdeSY("");
|
|
m.getRequestLabel().getCondition().getVhl().setCQryCdeSY("");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (errorMsg.contains("机动车综合商业保险")) {
|
|
|
|
|
- cAppJqFlag = false;
|
|
|
|
|
- } else if (errorMsg.contains("机动车交通事故强制险")) {
|
|
|
|
|
- appSYFlag = false;
|
|
|
|
|
- } else {
|
|
|
|
|
- appSYFlag = false;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
//处理返回信息
|
|
//处理返回信息
|
|
|
//1、交强险重复投保处理
|
|
//1、交强险重复投保处理
|
|
|
- String jq = ciRepetitionInsure(rr, m, requestInfoList, cAppJqFlag);
|
|
|
|
|
|
|
+ String jq = ciRepetitionInsure(rr, m, requestInfoList, cAppJqFlag, appSYFlag);
|
|
|
//1、商业险重复投保处理
|
|
//1、商业险重复投保处理
|
|
|
- String sy = commerceRepetitionInsure(rr, m, requestInfoList, appSYFlag);
|
|
|
|
|
|
|
+ String sy = commerceRepetitionInsure(rr, m, requestInfoList, appSYFlag, cAppJqFlag);
|
|
|
|
|
|
|
|
if (jq.isEmpty() && sy.isEmpty()) {
|
|
if (jq.isEmpty() && sy.isEmpty()) {
|
|
|
throw new SystemException(errorMsg);
|
|
throw new SystemException(errorMsg);
|
|
|
- }else {
|
|
|
|
|
|
|
+ } else {
|
|
|
InsuranceLog.infoLog(InsuranceEnum.AICS.getPinyin(), "\n\n---------> {} - 重复投保处理", vinNo);
|
|
InsuranceLog.infoLog(InsuranceEnum.AICS.getPinyin(), "\n\n---------> {} - 重复投保处理", vinNo);
|
|
|
return this.getResponse(m, vinNo, requestInfoList, yaQuoteInfoVo);
|
|
return this.getResponse(m, vinNo, requestInfoList, yaQuoteInfoVo);
|
|
|
}
|
|
}
|
|
@@ -459,15 +453,24 @@ public class YongchengOrderApiServiceImpl implements YongchengOrderApiService {
|
|
|
/**
|
|
/**
|
|
|
* 报价 交强险 重复 投保业务处理
|
|
* 报价 交强险 重复 投保业务处理
|
|
|
*/
|
|
*/
|
|
|
- public String ciRepetitionInsure(RuoteResponse rr, Ruote m, List<String> requestInfoList, boolean cAppJqFlag) {
|
|
|
|
|
|
|
+ public String ciRepetitionInsure(RuoteResponse rr, Ruote m, List<String> requestInfoList, boolean cAppJqFlag,
|
|
|
|
|
+ boolean flag) {
|
|
|
String errorMsg = rr.getHead().getErrorMessage();
|
|
String errorMsg = rr.getHead().getErrorMessage();
|
|
|
|
|
|
|
|
if (cAppJqFlag) {
|
|
if (cAppJqFlag) {
|
|
|
requestInfoList.add(errorMsg);
|
|
requestInfoList.add(errorMsg);
|
|
|
-
|
|
|
|
|
log.info("永诚API方式 - xml请求 ------------报价 -> 交强重复投保----------------");
|
|
log.info("永诚API方式 - xml请求 ------------报价 -> 交强重复投保----------------");
|
|
|
|
|
+ String coverageEndDate;
|
|
|
|
|
+
|
|
|
|
|
+ if (flag) {
|
|
|
|
|
+ coverageEndDate = GuorenDuplicateInsuranceComponent.getEndDate(errorMsg, JQ_REGEX);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ coverageEndDate = GuorenDuplicateInsuranceComponent.getEndDate(errorMsg, DAN_JQ_REGEX);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- String coverageEndDate = GuorenDuplicateInsuranceComponent.getEndDate(errorMsg, JQ_REGEX);
|
|
|
|
|
|
|
+ if (coverageEndDate.isEmpty()) {
|
|
|
|
|
+ throw new SystemException(errorMsg);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
//判断是否是及时起保
|
|
//判断是否是及时起保
|
|
|
LocalDateTime start;
|
|
LocalDateTime start;
|
|
@@ -494,13 +497,23 @@ public class YongchengOrderApiServiceImpl implements YongchengOrderApiService {
|
|
|
/**
|
|
/**
|
|
|
* 报价 商业 重复 投保业务处理
|
|
* 报价 商业 重复 投保业务处理
|
|
|
*/
|
|
*/
|
|
|
- public String commerceRepetitionInsure(RuoteResponse rr, Ruote m, List<String> requestInfoList, boolean appSYFlag) {
|
|
|
|
|
|
|
+ public String commerceRepetitionInsure(RuoteResponse rr, Ruote m, List<String> requestInfoList, boolean appSYFlag
|
|
|
|
|
+ , boolean flag) {
|
|
|
String errorMsg = rr.getHead().getErrorMessage();
|
|
String errorMsg = rr.getHead().getErrorMessage();
|
|
|
|
|
|
|
|
if (appSYFlag) {
|
|
if (appSYFlag) {
|
|
|
requestInfoList.add(errorMsg);
|
|
requestInfoList.add(errorMsg);
|
|
|
log.info("永诚API方式 - xml请求 ------------报价 -> 商业险重复投保----------------");
|
|
log.info("永诚API方式 - xml请求 ------------报价 -> 商业险重复投保----------------");
|
|
|
- String coverageEndDate = GuorenDuplicateInsuranceComponent.getEndDate(errorMsg, SY_REGEX);
|
|
|
|
|
|
|
+ String coverageEndDate;
|
|
|
|
|
+ if (flag) {
|
|
|
|
|
+ coverageEndDate = GuorenDuplicateInsuranceComponent.getEndDate(errorMsg, SY_REGEX);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ coverageEndDate = GuorenDuplicateInsuranceComponent.getEndDate(errorMsg, DAN_JQ_REGEX);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (coverageEndDate.isEmpty()) {
|
|
|
|
|
+ throw new SystemException(errorMsg);
|
|
|
|
|
+ }
|
|
|
LocalDateTime start;
|
|
LocalDateTime start;
|
|
|
if (coverageEndDate.contains("23:59:59")) {
|
|
if (coverageEndDate.contains("23:59:59")) {
|
|
|
start = DateTimeUtil.parseLocalDateTime(coverageEndDate, DateTimeUtil.DATETIME_PATTERN).plusSeconds(1);
|
|
start = DateTimeUtil.parseLocalDateTime(coverageEndDate, DateTimeUtil.DATETIME_PATTERN).plusSeconds(1);
|
|
@@ -897,7 +910,7 @@ public class YongchengOrderApiServiceImpl implements YongchengOrderApiService {
|
|
|
|
|
|
|
|
AccidentUnderwritingRequest accidentUnderwritingRequest =
|
|
AccidentUnderwritingRequest accidentUnderwritingRequest =
|
|
|
new AccidentUnderwritingRequest(ycConfigureParameters.getPassword(),
|
|
new AccidentUnderwritingRequest(ycConfigureParameters.getPassword(),
|
|
|
- ycConfigureParameters.getUserName(), insOrderNo);
|
|
|
|
|
|
|
+ ycConfigureParameters.getUserName(), insOrderNo);
|
|
|
|
|
|
|
|
AccidentUnderwritingResponse accidentUnderwritingResponse =
|
|
AccidentUnderwritingResponse accidentUnderwritingResponse =
|
|
|
yongchengRequestApiComponents.submitPolicy(accidentUnderwritingRequest);
|
|
yongchengRequestApiComponents.submitPolicy(accidentUnderwritingRequest);
|