Commit cb305a48 by jianan

前端对接问题修复58

parent bff9005e
...@@ -115,7 +115,7 @@ public class ApiCommissionController { ...@@ -115,7 +115,7 @@ public class ApiCommissionController {
} }
// 数据完整性校验 // 数据完整性校验
// validateCommissionUpload(dataList); validateCommissionUpload(dataList);
// 校验保单是否存在 // 校验保单是否存在
Set<String> policyNos = dataList.stream() Set<String> policyNos = dataList.stream()
...@@ -136,7 +136,7 @@ public class ApiCommissionController { ...@@ -136,7 +136,7 @@ public class ApiCommissionController {
} }
} }
if (StringUtils.isNotBlank(errorMsg)) { if (StringUtils.isNotBlank(errorMsg)) {
errorMsg.append("\n请确认新单跟进中保单是否存在,若不存在请先添加保单"); errorMsg.append("\n请确认保单中心是否存在该保单,若不存在请先添加");
throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), errorMsg.toString()); throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), errorMsg.toString());
} }
...@@ -185,21 +185,25 @@ public class ApiCommissionController { ...@@ -185,21 +185,25 @@ public class ApiCommissionController {
StringBuilder errorMsg = new StringBuilder(); StringBuilder errorMsg = new StringBuilder();
for (CommissionExcelDTO excelDTO : dataList) { for (CommissionExcelDTO excelDTO : dataList) {
// 校验必填字段是否为空 // 校验必填字段是否为空
if (StringUtils.isBlank(excelDTO.getPolicyNo()) || // if (StringUtils.isBlank(excelDTO.getPolicyNo()) ||
StringUtils.isBlank(excelDTO.getReconciliationCompany()) || // StringUtils.isBlank(excelDTO.getReconciliationCompany()) ||
StringUtils.isBlank(excelDTO.getCommissionName()) || // StringUtils.isBlank(excelDTO.getCommissionName()) ||
excelDTO.getAmount() == null || // excelDTO.getAmount() == null ||
StringUtils.isBlank(excelDTO.getCurrency()) || // StringUtils.isBlank(excelDTO.getCurrency()) ||
excelDTO.getCommissionDate() == null) { // excelDTO.getCommissionDate() == null) {
errorMsg.append("第").append(dataList.indexOf(excelDTO) + 1).append("行存在空字段"); // errorMsg.append("第").append(dataList.indexOf(excelDTO) + 1).append("行存在空字段");
} // }
// 校验来佣金额是否为正数
if (excelDTO.getAmount().compareTo(BigDecimal.ZERO) <= 0) { if ("关联保单应收单".equals(excelDTO.getCommissionBizType())) {
errorMsg.append("第").append(dataList.indexOf(excelDTO) + 1).append("行来佣金额必须为正数"); if (StringUtils.isBlank(excelDTO.getPolicyNo())) {
} errorMsg.append("第").append(dataList.indexOf(excelDTO) + 1).append("行关联保单应收单, 保单号不能为空");
// 如果没有保单号,应收账款编号不能为空 }
if (StringUtils.isBlank(excelDTO.getPolicyNo()) && StringUtils.isBlank(excelDTO.getReceivableNo())) { if (excelDTO.getAmount2() == null) {
errorMsg.append("第").append(dataList.indexOf(excelDTO) + 1).append("行无保单号时应收账款编号不能为空"); errorMsg.append("第").append(dataList.indexOf(excelDTO) + 1).append("行关联保单应收单, 来佣金额不能为空");
}
if (StringUtils.isBlank(excelDTO.getExchangeRate2())) {
errorMsg.append("第").append(dataList.indexOf(excelDTO) + 1).append("行关联保单应收单, 结算汇率不能为空");
}
} }
} }
if (errorMsg.length() > 0) { if (errorMsg.length() > 0) {
......
...@@ -194,7 +194,7 @@ public class CommissionAsyncService { ...@@ -194,7 +194,7 @@ public class CommissionAsyncService {
BigDecimal paidAmount = BigDecimal.ZERO; BigDecimal paidAmount = BigDecimal.ZERO;
for (Commission item : existingCommissions) { for (Commission item : existingCommissions) {
if (item.getCurrentCommissionRatio() == null) { if (item.getCurrentCommissionRatio() == null) {
log.warn("当前来佣比例为空,临时计算当前来佣比例: {}", item); log.warn("当前来佣比例为空,临时计算当前来佣比例: commission_id={}", item.getId());
paidRatio = paidRatio.add(item.calculateCurrentPaidRatio()); paidRatio = paidRatio.add(item.calculateCurrentPaidRatio());
} else { } else {
paidRatio = paidRatio.add(item.getCurrentCommissionRatio()); paidRatio = paidRatio.add(item.getCurrentCommissionRatio());
......
...@@ -239,6 +239,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -239,6 +239,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
commission.setReconciliationCompany(policy.getReconciliationCompany()); commission.setReconciliationCompany(policy.getReconciliationCompany());
commission.setReconciliationCompanyCode(policy.getReconciliationCompanyCode()); commission.setReconciliationCompanyCode(policy.getReconciliationCompanyCode());
commission.setReconciliationCompanyBizId(policy.getReconciliationCompanyBizId()); commission.setReconciliationCompanyBizId(policy.getReconciliationCompanyBizId());
commission.setCurrentCommissionRatio(commission.calculateCurrentPaidRatio());
} }
// 根据保单号、期数、入账名称、币种查询预计来佣记录 // 根据保单号、期数、入账名称、币种查询预计来佣记录
CommissionExpected expected = findExpectedFromList(commission, commissionExpectedList); CommissionExpected expected = findExpectedFromList(commission, commissionExpectedList);
...@@ -729,6 +730,8 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -729,6 +730,8 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
commission.setProductLaunchBizId(policy.getProductLaunchBizId()); commission.setProductLaunchBizId(policy.getProductLaunchBizId());
commission.setInsuranceCompanyBizId(policy.getInsuranceCompanyBizId()); commission.setInsuranceCompanyBizId(policy.getInsuranceCompanyBizId());
commission.setPremium(Convert.toStr(policy.getPaymentPremium())); commission.setPremium(Convert.toStr(policy.getPaymentPremium()));
// 本次入账比例
commission.setCurrentCommissionRatio(commission.calculateCurrentPaidRatio());
} }
} }
// 关联预计来佣信息 // 关联预计来佣信息
...@@ -784,6 +787,12 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -784,6 +787,12 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
if (StringUtils.isBlank(request.getCommissionName())) { if (StringUtils.isBlank(request.getCommissionName())) {
throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), "入账项目名称不能为空"); throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), "入账项目名称不能为空");
} }
if ("R".equals(request.getCommissionBizType())) {
// 校验保单号是否存在
if (StringUtils.isBlank(request.getExchangeRate())) {
throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), "关联保单号记录,结算汇率不能为空");
}
}
} }
} }
......
...@@ -83,6 +83,12 @@ public class CommissionExpectedVO implements Serializable { ...@@ -83,6 +83,12 @@ public class CommissionExpectedVO implements Serializable {
private String reconciliationCompany; private String reconciliationCompany;
/** /**
* 对账公司业务ID
*/
@Schema(description = "对账公司业务ID")
private String reconciliationCompanyBizId;
/**
* 佣金期数(1=第一年; 2=第二年; 3=第三年; 4=第四年; 5=第五年) * 佣金期数(1=第一年; 2=第二年; 3=第三年; 4=第四年; 5=第五年)
*/ */
@Schema(description = "佣金期数(1=第一年; 2=第二年; 3=第三年; 4=第四年; 5=第五年)") @Schema(description = "佣金期数(1=第一年; 2=第二年; 3=第三年; 4=第四年; 5=第五年)")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment