|
@@ -412,13 +412,34 @@ public class SetlListUpldService {
|
|
|
Map<String, ZyDisDiagYb> zhuZhenDuan = dao.zhuZhenDuan(inpatientNos).stream().collect(
|
|
|
Collectors.toMap(item -> item.getInpatientNo() + item.getAdmissTimes(), a -> a, (k1, k2) -> k1)
|
|
|
);
|
|
|
+ Map<String, List<SiSetlinfoTemp>> zhuanKeMap = dao.zhuanKeKeShi(inpatientNos).stream().collect(
|
|
|
+ Collectors.groupingBy(SiSetlinfoTemp::getPatNo)
|
|
|
+ );
|
|
|
+
|
|
|
for (SiSetlinfoTemp item : page.getRecords()) {
|
|
|
String key = item.getPatNo() + item.getTimes();
|
|
|
+ String zhuanKeKey = item.getPatNo();
|
|
|
ZyDisDiagYb dis = zhuZhenDuan.get(key);
|
|
|
+ List<SiSetlinfoTemp> temp = zhuanKeMap.get(zhuanKeKey);
|
|
|
if (dis != null) {
|
|
|
item.setDisDiag(dis.getDisDiag());
|
|
|
item.setDisDiagComment(dis.getDisDiagComment());
|
|
|
}
|
|
|
+ if (ListUtil.notBlank(temp)) {
|
|
|
+ item.setZhuanKeAmount(temp.size());
|
|
|
+ if (temp.size() > 1) {
|
|
|
+ StringBuilder keShi = new StringBuilder();
|
|
|
+ for (SiSetlinfoTemp items : temp) {
|
|
|
+ if (!item.getPatNo().equals(items.getPatNo())) {
|
|
|
+ keShi = new StringBuilder();
|
|
|
+ }
|
|
|
+ if (keShi.length() != 0) {
|
|
|
+ keShi.append("--->");
|
|
|
+ }
|
|
|
+ item.setZhuanKeName(keShi.append(items.getWardCodeName()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
if (param.getTotal() == 0) {
|
|
|
page.setTotal(dao.huoQuJieSuanRenYuanTotal(param.getStartTime(), param.getEndTime(), param.getClrType(), param.getPatNo(),
|
|
@@ -455,7 +476,8 @@ public class SetlListUpldService {
|
|
|
param.setCurrentPage(1);
|
|
|
log.info("医保结算单: {}", JSON.toJSONStringWithDateFormat(param, GetDateFormat.DATE));
|
|
|
List<SiSetlinfoTemp> list = huoQuJieSuanRenYuan(param).getData().getRecords();
|
|
|
- String[] title = {"姓名", "审核状态", "申报类型", "出院科室", "住院号/门诊号", "性别", "住院天数", "诊断编码", "诊断名称", "治疗方式", "总费用", "报销金额", "险种类型", "人员类别", "结算时间", "医疗类别", "清算机构", "管床医生"};
|
|
|
+ String[] title = {"姓名", "审核状态", "申报类型", "出院科室", "住院号/门诊号", "性别", "住院天数", "诊断编码", "诊断名称", "治疗方式", "总费用",
|
|
|
+ "报销金额", "险种类型", "人员类别", "结算时间", "医疗类别", "清算机构", "管床医生", "转科室", "转科次数"};
|
|
|
String[][] content = new String[list.size()][];
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
content[i] = new String[title.length];
|
|
@@ -478,6 +500,8 @@ public class SetlListUpldService {
|
|
|
content[i][15] = pojo.getMedTypeName();
|
|
|
content[i][16] = pojo.getClrOptinsName();
|
|
|
content[i][17] = pojo.getReferPhysicianName();
|
|
|
+ content[i][18] = pojo.getZhuanKeName() == null ? "" : pojo.getZhuanKeName().toString();
|
|
|
+ content[i][19] = pojo.getZhuanKeAmount() == null ? "" : pojo.getZhuanKeAmount().toString();
|
|
|
}
|
|
|
//传三个参数 一个是 固定的 response ,excel的头部信息,excel的内容
|
|
|
ExcelUtil.exportExcel(response, title, content);
|
|
@@ -648,6 +672,7 @@ public class SetlListUpldService {
|
|
|
return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "管床医生不能设置为空。");
|
|
|
}
|
|
|
dao.xiuGaiGuanChaungYiShen(patNo, times, code);
|
|
|
+ log.info("修改管床医生 ==》 修改人{},住院号:{},次数:{},管床医生:{}", TokenUtil.getTokenUserId(), patNo, times, code);
|
|
|
return ResultVoUtil.success(ExceptionEnum.SUCCESS_AND_NOTIFICATION, "管床医生修改成功。");
|
|
|
}
|
|
|
|