Commit 477379f9 by jianan

前端对接问题修复49

parent b8053594
......@@ -78,7 +78,7 @@ public class ApiCommissionController {
@PostMapping("/upload/excel")
@Operation(summary = "上传入账Excel文件")
@Transactional(rollbackFor = Exception.class)
public Result<List<CommissionVO>> uploadExcel(@RequestParam("file") MultipartFile file,
public Result<Boolean> uploadExcel(@RequestParam("file") MultipartFile file,
@RequestParam("reconciliationYearMonth") String reconciliationYearMonth) throws IOException {
// 校验来佣检核年月是否为空
......@@ -149,26 +149,26 @@ public class ApiCommissionController {
// 数据处理
List<Commission> entities = processData(dataList, loginUserId);
// 转换为 VO
List<CommissionVO> commissionVOList = commissionService.getCommissionList(entities);
// // 转换为 VO
// List<CommissionVO> commissionVOList = commissionService.getCommissionList(entities);
// 批量比对
// TransactionSynchronizationManager.registerSynchronization(
// new TransactionSynchronization() {
// @Override
// public void afterCommit() {
// try {
// // 重新查询最新的数据,获取已提交的数据
// commissionAsyncService.commissionCompareBatch(entities);
// } catch (Exception e) {
// // 比对失败不影响主事务,记录日志即可
// log.error("批量导入, 比对操作执行失败, error: {}", e.getMessage());
// }
// }
// }
// );
return Result.success(commissionVOList);
TransactionSynchronizationManager.registerSynchronization(
new TransactionSynchronization() {
@Override
public void afterCommit() {
try {
// 重新查询最新的数据,获取已提交的数据
commissionAsyncService.commissionCompareBatch(entities);
} catch (Exception e) {
// 比对失败不影响主事务,记录日志即可
log.error("批量导入, 比对操作执行失败, error: {}", e.getMessage());
}
}
}
);
return Result.success(true);
}
/**
......@@ -215,8 +215,11 @@ public class ApiCommissionController {
entities.add(entity);
}
// 补充完整字段
commissionService.fillCommissionList(entities);
// 保存来佣数据
// commissionService.saveBatch(entities);
commissionService.saveBatch(entities);
return entities;
}
......@@ -256,11 +259,11 @@ public class ApiCommissionController {
// commissionAsyncService.commissionCompareBatch(commissionList);
@GetMapping("/test")
public Result<List<Commission>> testCompareBatch(@RequestParam("customerBizId") String policyNo) {
if (StringUtils.isBlank(policyNo)) {
return Result.fail(ResultCode.PARAMS_ERROR.getCode(), "保单号不能为空");
public Result<List<Commission>> testCompareBatch(@RequestParam("commissionBizId") String commissionBizId) {
if (StringUtils.isBlank(commissionBizId)) {
return Result.fail(ResultCode.PARAMS_ERROR.getCode(), "来佣业务id不能为空");
}
List<Commission> commissionList = commissionService.list(new QueryWrapper<Commission>().eq("policy_no", policyNo));
List<Commission> commissionList = commissionService.list(new QueryWrapper<Commission>().eq("commission_biz_id", commissionBizId));
if (CollectionUtils.isEmpty(commissionList)) {
return Result.fail(ResultCode.PARAMS_ERROR.getCode(), "未查询到来佣数据");
}
......
......@@ -26,6 +26,8 @@ public interface CommissionService extends IService<Commission> {
List<CommissionVO> getCommissionList(List<Commission> commissionList);
void fillCommissionList(List<Commission> commissionList);
Boolean updateCommission(CommissionUpdateRequest commissionUpdateRequest);
Boolean generateFortune(GenerateFortuneRequest generateFortuneRequest);
......
......@@ -198,6 +198,39 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
}
@Override
public void fillCommissionList(List<Commission> commissionList) {
if (CollUtil.isEmpty(commissionList)) {
return;
}
// 1.关联查询保单信息
Set<String> policyNoSet = commissionList.stream().map(Commission::getPolicyNo).collect(Collectors.toSet());
QueryWrapper<Policy> queryWrapper = new QueryWrapper<Policy>();
queryWrapper.in("policy_no", policyNoSet);
queryWrapper.select(
"policy_no", "payment_premium",
"product_launch_biz_id", "product_name",
"insurance_company_biz_id", "insurance_company",
"reconciliation_company", "reconciliation_company_code", "reconciliation_company_biz_id");
List<Policy> policyList = policyService.list(queryWrapper);
Map<String, Policy> policyMap = policyList.stream().collect(Collectors.toMap(Policy::getPolicyNo, a -> a, (oldValue, newValue) -> newValue));
// 填充信息
commissionList.forEach(commission -> {
Policy policy = policyMap.get(commission.getPolicyNo());
if (policy != null) {
// 填充保费、产品名称、保险公司、对账公司
commission.setPremium(String.valueOf(policy.getPaymentPremium()));
commission.setProductLaunchBizId(policy.getProductLaunchBizId());
commission.setInsuranceCompanyBizId(policy.getInsuranceCompanyBizId());
commission.setReconciliationCompany(policy.getReconciliationCompany());
commission.setReconciliationCompanyCode(policy.getReconciliationCompanyCode());
commission.setReconciliationCompanyBizId(policy.getReconciliationCompanyBizId());
}
});
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean updateCommission(CommissionUpdateRequest commissionUpdateRequest) {
String commissionBizId = commissionUpdateRequest.getCommissionBizId();
......
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