From 5f61c3b819d3b231012cf3fadaf772426210feb2 Mon Sep 17 00:00:00 2001 From: linjj <850658129@qq.com> Date: Wed, 5 Jul 2023 09:06:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=97=85=E6=A1=88=E6=B8=85=E5=8D=95=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/emr/controller/SessionContant.java | 10 +- .../emr/controller/inHospitalController.java | 10 +- .../ipml/Archive_MasterServiceImpl.java | 123 +++- .../service/ipml/StatisticsServiceImpl.java | 2 - .../resources/mapper/Archive_MasterMapper.xml | 34 +- .../resources/mapper/StatisticsMapper.xml | 2 +- .../views/beHospitaledDir/beHospList.jsp | 30 +- .../WEB-INF/views/commitDir/commitList.jsp | 31 +- .../views/lastVerifyDir/lastVerifyList.jsp | 596 ++++++++++-------- 9 files changed, 497 insertions(+), 341 deletions(-) diff --git a/src/main/java/com/emr/controller/SessionContant.java b/src/main/java/com/emr/controller/SessionContant.java index a477a47d..c197a9b1 100644 --- a/src/main/java/com/emr/controller/SessionContant.java +++ b/src/main/java/com/emr/controller/SessionContant.java @@ -1,5 +1,7 @@ package com.emr.controller; +import org.apache.commons.lang3.StringUtils; + import javax.servlet.http.HttpServletRequest; import java.util.ArrayList; import java.util.List; @@ -12,11 +14,17 @@ import java.util.List; public class SessionContant { public static String setPdfUrl(String masterId, String imgStr, List urlList, HttpServletRequest request) { - String key = masterId + "_" + imgStr; + String key = ""; + if (StringUtils.isNotBlank(masterId)) { + key = masterId + "_" + imgStr; + }else{ + key = imgStr; + } request.getSession().setAttribute(key,urlList); return key; } + public static List getPdfUrl(String key, HttpServletRequest request) { Object attribute = request.getSession().getAttribute(key); if(null != attribute){ diff --git a/src/main/java/com/emr/controller/inHospitalController.java b/src/main/java/com/emr/controller/inHospitalController.java index 4e0d5527..51c7fe2b 100644 --- a/src/main/java/com/emr/controller/inHospitalController.java +++ b/src/main/java/com/emr/controller/inHospitalController.java @@ -157,8 +157,13 @@ public class inHospitalController { */ @ResponseBody @RequestMapping(value = "/getDetailInfo") - public Archive_Detail_Vo getDetailInfo(String detailId){ + public Archive_Detail_Vo getDetailInfo(String detailId,HttpServletRequest request){ + + Archive_Detail_Vo detailInfo = archiveDetailService.getDetailInfo(detailId); + List list = new ArrayList<>(); + list.add(detailInfo.getPdfPath()); + SessionContant.setPdfUrl(null,detailId,list,request); return detailInfo; } @@ -1284,6 +1289,7 @@ public class inHospitalController { } else { //插入记录 if (file != null) { + entity.setTitle(title); bol = archiveDetailService.insertSel(entity); } else { result = "没有找到相对应的文件!"; @@ -1350,7 +1356,7 @@ public class inHospitalController { */ @RequestMapping(value = "/pdfStreamHandeler") - public void pdfStreamHandeler(HttpServletRequest request, HttpServletResponse response)throws Exception { + public void pdfStreamHandeler(HttpServletRequest request, HttpServletResponse response,String url)throws Exception { String filePath = request.getParameter("url"); String[] list=filePath.split("titleName="); String key =list[0].substring(0,list[0].length()-1); diff --git a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java index 65781ec0..bce6a575 100644 --- a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java @@ -231,8 +231,58 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { PageHelper.offsetPage(offset, limit); } List list = archiveMasterMapper.selectByColumn(archiveMasterVo); + + + //获取科室列表 + Emr_Dictionary dic = new Emr_Dictionary(); + dic.setEffective(1); + dic.setTypecode("dept_code"); + List dicList = emrDictionaryService.dicByTypeCode(dic); + //转换科室 + Map codeMap = ListUtils.toMap(dicList, Emr_Dictionary::getCode); + Setters.instance().list(list).cycleSetProperties(p -> { + String deptCode = p.getDeptName(); + String deptAdmissionCode = p.getDeptAdmissionTo(); + if(StringUtils.isNotBlank(deptCode) && codeMap.containsKey(deptCode)){ + String deptName = codeMap.get(deptCode).getName(); + p.setDeptName(deptName); + } + if(StringUtils.isNotBlank(deptAdmissionCode) && codeMap.containsKey(deptAdmissionCode)){ + String deptAdmissionTo = codeMap.get(deptAdmissionCode).getName(); + p.setDeptAdmissionTo(deptAdmissionTo); + } + }); + //masterIds集合 + List masterIds = ListUtils.distinctSelect(list, Archive_Master_Vo::getId); + //转成逗号拼接 + String ids = String.join(",", masterIds); + //获取医生缺陷数量 + List doctorDefectNum = archiveMasterMapper.getDoctorDefectNum(ids); + //医生是否有缺陷 + Map doctorMap = ListUtils.toMap(doctorDefectNum, Archive_Master_Vo::getArchiveDetailId); + Setters.instance().list(list).cycleSetProperties(p -> { + String doctorId = p.getId(); + if (doctorMap.containsKey(doctorId)){ + String faultDoctorNum = doctorMap.get(doctorId).getFaultDoctorNum(); + p.setFaultDoctorNum(faultDoctorNum); + p.setNumb(1); + } + }); + //获取护士缺陷数量 + List nurseDefectNum = archiveMasterMapper.getNurseDefectNum(ids); + //护士是否有缺陷 + Map nurseMap = ListUtils.toMap(nurseDefectNum, Archive_Master_Vo::getArchiveDetailId); + //判断是否有缺陷就填入 + Setters.instance().list(list).cycleSetProperties(p -> { + String nurseId = p.getId(); + if (nurseMap.containsKey(nurseId)){ + String faultNurseNum = nurseMap.get(nurseId).getFaultNurseNum(); + p.setFaultNurseNum(faultNurseNum); + p.setNumb(1); + } + }); //设置医生、护士名称和打印标识、科室、是否退回医生、是否退回护士 - setNameAndPrintFlag(archiveMasterVo, list); + setNameAndPrintFlagNew(archiveMasterVo, list); if(list!=null && list.size()>0) { JSONArray powerUsers = powerUserService.getPowerUserList("1"); List powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class); @@ -389,11 +439,12 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { masterIds.append(","); } masterIds.append("'").append(archiveMaster.getId()).append("'"); - //设置科室名称 - setDeptName(archiveMaster,dictionaryList); +// //设置科室名称 +// setDeptName(archiveMaster,dictionaryList); archiveMaster.setDoctorNum("0"); archiveMaster.setNurseNum("0"); } + //设置退回医生数量 setDoctorFaultNum(masterIds.toString(),list); //设置退回护士数量 @@ -403,6 +454,70 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { } } + + /** + * 设置医生、护士名称和打印标识、科室名称、是否退回医生、是否退回护士,是否followType=9 + * @param archiveMasterVo + * @param list + */ + private void setNameAndPrintFlagNew(Archive_Master_Vo archiveMasterVo, List list) { + if(!CollectionUtils.isEmpty(list)) { + //查询用户集合 + JSONArray powerUsers = powerUserService.getPowerUserList("1"); + List powerUserList = null; + if(!CollectionUtils.isEmpty(powerUsers)) { + //转换对象 + powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), Power_User_Dto.class); + } + //定义查询的masterId集合 + StringBuilder masterIds = new StringBuilder(); + //遍历赋值 + for (Archive_Master_Vo archiveMaster : list) { + if(null != powerUserList) { + //获取医生工号 + String doctorName = archiveMaster.getDoctorName(); + //获取护士工号 + String nurseName = archiveMaster.getNurseName(); + //获取初审人工号 + String firstInstance = archiveMaster.getFirstInstance(); + //遍历匹配工号赋值姓名 + for(Power_User_Dto powerUserDto : powerUserList){ + String name = powerUserDto.getName(); + if(StringUtils.isNotBlank(doctorName) && powerUserDto.getUserName().equals(doctorName)){ + archiveMaster.setDoctorName(name); + } + if(StringUtils.isNotBlank(nurseName) && powerUserDto.getUserName().equals(nurseName)){ + archiveMaster.setNurseName(name); + } + if(StringUtils.isNotBlank(firstInstance) && powerUserDto.getUserName().equals(firstInstance)){ + archiveMaster.setFirstInstance(name); + } + } + } + String printNum = archiveMaster.getPrintNum(); + if(StringUtils.isNotBlank(printNum) && !"0".equals(printNum)){ + archiveMaster.setPrintNum("已打印"); + }else{ + archiveMaster.setPrintNum("未打印"); + } + //是否打印条件不为空,直接赋值打印标识 + if(StringUtils.isNotBlank(archiveMasterVo.getPrintNum())){ + String printFlag = "未打印"; + if("1".equals(archiveMasterVo.getPrintNum())){ + printFlag = "已打印"; + } + archiveMaster.setPrintNum(printFlag); + } + if(StringUtils.isNotBlank(masterIds)){ + masterIds.append(","); + } + masterIds.append("'").append(archiveMaster.getId()).append("'"); + archiveMaster.setDoctorNum("0"); + archiveMaster.setNurseNum("0"); + } + } + } + /** * 设置医生和护士姓名 * @param list @@ -1200,7 +1315,7 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { }); //设置医生、护士名称和打印标识 - setNameAndPrintFlag(archiveMasterVo, list); + setNameAndPrintFlagNew(archiveMasterVo, list); return list; } diff --git a/src/main/java/com/emr/service/ipml/StatisticsServiceImpl.java b/src/main/java/com/emr/service/ipml/StatisticsServiceImpl.java index 9489191f..bfcd68b4 100644 --- a/src/main/java/com/emr/service/ipml/StatisticsServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/StatisticsServiceImpl.java @@ -37,8 +37,6 @@ public class StatisticsServiceImpl implements StatisticsService { int vxPrintNum = list.getVxPrintNum(); int vxPrintNum1 = list.getVxPrintNum1(); list.setVxPrintNum(vxPrintNum + vxPrintNum1); - int i = statisticsMapper.getpaperlessPageNum(); - list.setPaperlessPageNum(i); } return new OffsetLimitPage((Page) statisticsVos); } diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index f7acf48c..07118b11 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -274,32 +274,11 @@ ORDER BY admission_date_time desc --%> <%----%> -
+
-
@@ -486,26 +494,29 @@
-
+
-
-
+
-
-
+
- @@ -527,9 +538,10 @@
-
+
- @@ -548,7 +560,9 @@ <%--
--%> - +
@@ -557,8 +571,10 @@
@@ -584,7 +600,8 @@
- +
@@ -623,7 +640,7 @@
- +
@@ -633,8 +650,10 @@
@@ -693,11 +712,13 @@
初审管理: - +
缺陷管理: - +
出院科室: @@ -788,10 +809,13 @@ 只显示作废
- - + + - + <%-- --%> @@ -811,7 +835,8 @@ - +
@@ -878,7 +905,9 @@
- +
@@ -886,7 +915,9 @@
- +
@@ -894,7 +925,9 @@
- +
@@ -902,7 +935,9 @@
- +
@@ -910,7 +945,9 @@
- +
@@ -938,12 +975,9 @@
-
- +
+
- <%--
- - -
--%>
@@ -1228,7 +1262,6 @@
- <%--缺陷窗口--%> @@ -1423,6 +1461,7 @@
+ <%-- --%>
>
@@ -1455,7 +1494,8 @@ - +
@@ -1532,7 +1572,8 @@
"; img_div.append(img_html); } } @@ -1707,23 +1748,23 @@ for (var i = 0; i < fileALL.length; i++) { //获取图片路径 objUrl = getObjectURL(fileALL[i]); - if(fileALL[i]!=undefined && fileALL[i]!=null && fileALL[i]!=""){ - if(fileALL[i].name!=undefined && fileALL[i].name!=null && fileALL[i].name!=""){ + if (fileALL[i] != undefined && fileALL[i] != null && fileALL[i] != "") { + if (fileALL[i].name != undefined && fileALL[i].name != null && fileALL[i].name != "") { var extStart = fileALL[i].name.lastIndexOf("."); var ext = fileALL[i].name.substring(extStart, fileALL[i].name.length).toUpperCase(); /** *描述:鉴定每个图片上传尾椎限制 */ if (ext != ".PNG" && ext != ".GIF" && ext != ".JPG" && ext != ".JPEG") { - toastr.warning("图片:"+fileALL[i].name+"不符,限于png,gif,jpeg,jpg格式"); + toastr.warning("图片:" + fileALL[i].name + "不符,限于png,gif,jpeg,jpg格式"); return false; - }else{ + } else { files.push(fileALL[i]); /** *若规则全部通过则在此提交url到后台数据库 */ img_html = "
" - img_html +="
"; + img_html += "
"; img_div.append(img_html); } } @@ -1790,7 +1831,7 @@ for (var j = 0; j < fileList.length; j++) { //通过图片名判断图片在数组中的位置然后删除 // console.log(fileList[j].name + "111"); - if(fileList[j].name!=undefined) + if (fileList[j].name != undefined) if (fileList[j].name == filename) { fileList.splice(j, 1); id--; @@ -1838,7 +1879,7 @@ //遍历数组 for (var j = 0; j < fileList.length; j++) { //通过图片名判断图片在数组中的位置然后删除 - if(fileList[j].name!=undefined) + if (fileList[j].name != undefined) if (fileList[j].name == filename) { fileList.splice(j, 1); id--; @@ -1879,7 +1920,8 @@ //初始化类别 var selectStr = ""; - var assortIdArr=[]; + var assortIdArr = []; + function getAssortFun() { $.ajax({ url: "${path}/zdAssort/getAssort", @@ -1888,10 +1930,10 @@ async: true, success: function (result) { if (result != null && result.length > 0) { - assortIdArr=[]; + assortIdArr = []; selectStr = "