医疗互助系统-医保,报销数据导入:导入学校二次报销数据接口报错处理;

This commit is contained in:
2026-09-22 10:31:43 +08:00
parent 0945ca26ff
commit 5ff22b1697
2 changed files with 29 additions and 5 deletions
@@ -253,15 +253,31 @@ public class SickHelpMedicalInsController {
int success = 0;
List<SickHelpMedicalIns> successData = new ArrayList<>();
List<SickHelpMedicalIns> failData = new ArrayList<>();
for (SickHelpMedicalIns ins : list) {
if (StrUtil.isNotBlank(ins.getLoginName())) {
Optional<SickHelpMedicalIns> optional = excelList.stream().filter(x -> x.getLoginName().equals(ins.getLoginName())).findFirst();
String loginName = StrUtil.trim(ins.getLoginName());
Optional<SickHelpMedicalIns> optional = excelList.stream()
.filter(x -> loginName.equals(StrUtil.trim(x.getLoginName())))
.findFirst();
if (optional.isPresent()) {
ins.setEcbx(optional.get().getEcbx());
BigDecimal subtract = ins.getSxzf().subtract(optional.get().getEcbx());
BigDecimal ecbx = optional.get().getEcbx();
if (ecbx == null) {
ins.setErrMsg("学校二次报销金额为空,请检查导入数据");
failData.add(ins);
continue;
}
if (ins.getSxzf() == null) {
ins.setErrMsg("医保个人自付金额为空,请先核对医保数据");
failData.add(ins);
continue;
}
ins.setEcbx(ecbx);
BigDecimal subtract = ins.getSxzf().subtract(ecbx);
ins.setCalc(subtract);
successData.add(ins);
success += 1;
} else {
failData.add(ins);
@@ -271,7 +287,9 @@ public class SickHelpMedicalInsController {
System.out.println();
dao.update(list, "ecbx|calc");
if (!successData.isEmpty()) {
dao.update(successData, "ecbx|calc");
}
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("success", success);
hashMap.put("fail", failData.size());
@@ -102,10 +102,16 @@ public class SickHelpMemberController {
fundMember.setUnitName(user.getString("unitname"));
fundMember.setSex(user.getString("sex"));
if (StrUtil.isBlank(fundMember.getIdcard())) {
fundMember.setIdcard(StrUtil.trim(user.getString("idcard")));
String userIdcard = StrUtil.trim(user.getString("idcard"));
if (StrUtil.isNotBlank(userIdcard)) {
fundMember.setIdcard(userIdcard);
}
}
// fundMember.setIsMember(true);
}
if (StrUtil.isBlank(fundMember.getIdcard()) && fundMemberOptional.isPresent()) {
fundMember.setIdcard(StrUtil.trim(fundMemberOptional.get().getIdcard()));
}
fundMember.setIsMember("是".equals(fundMember.getMember()));
}
return list;