From feceb0a5c97d975407b35066d0d4b95c27d052b9 Mon Sep 17 00:00:00 2001 From: wengjx <2365319070@qq.com> Date: Fri, 5 Aug 2022 18:19:28 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E7=97=85=E7=90=86=E6=8A=A5=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PathologicalReportController.java | 228 ++++++++++++++ .../com/emr/dao/Archive_MasterMapper.java | 6 + .../com/emr/entity/Archive_Master_Vo.java | 35 +++ .../emr/service/Archive_MasterService.java | 2 + .../ipml/Archive_MasterServiceImpl.java | 9 + .../service/ipml/PowerUserServiceImpl.java | 5 +- .../resources/mapper/Archive_MasterMapper.xml | 28 ++ .../views/pathological/pathologicalReport.jsp | 285 ++++++++++++++++++ 8 files changed, 597 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/emr/controller/PathologicalReportController.java create mode 100644 src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp diff --git a/src/main/java/com/emr/controller/PathologicalReportController.java b/src/main/java/com/emr/controller/PathologicalReportController.java new file mode 100644 index 00000000..2a86856f --- /dev/null +++ b/src/main/java/com/emr/controller/PathologicalReportController.java @@ -0,0 +1,228 @@ +package com.emr.controller; + +import com.emr.entity.Archive_Master_Vo; +import com.emr.entity.OffsetLimitPage; +import com.emr.service.Archive_MasterService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.servlet.http.HttpServletRequest; +import java.util.ArrayList; +import java.util.List; + + +@Controller +@RequestMapping("pathological/") +public class PathologicalReportController { + @Autowired + private Archive_MasterService archiveMasterService; + /** + * 病理报表 + * @return + */ + @RequestMapping("pathologicalReport") + public String pathologicalReport(Model model, String startDateTo, String endDateTo){ + model.addAttribute("startDate",startDateTo); + model.addAttribute("endDate",endDateTo); + return "pathological/pathologicalReport"; + } + + /** + * 病理报表统计分页查询 + * @return + */ + @RequestMapping("getPathologicalReportList") + @ResponseBody + public OffsetLimitPage getPathologicalReportList(Integer offset, + Integer limit, + Archive_Master_Vo Archive_Master_Vo, + HttpServletRequest request){ + List ArchiveMasterList = archiveMasterService.selectArchiveMasterVoAndExt(Archive_Master_Vo); + OffsetLimitPage offsetLimitPage = new OffsetLimitPage(); + offsetLimitPage.setTotal((long) ArchiveMasterList.size()); + List list = new ArrayList<>(); + for (int i = 0; i < ArchiveMasterList.size(); i++) { + list.add(ArchiveMasterList.get(i)); + if(list.size() == limit){ + break; + } + } + offsetLimitPage.setRows(list); + //request.getSession().removeAttribute("unSubmitRecords"); + return offsetLimitPage; + } + + /** + * 统计总病历数,已提交数,已归档数,已采集完整数 + */ +// @RequestMapping("selectCount") +// @ResponseBody +// public Msg selectCount(RecordSearch recordSearch) throws Exception{ +// SubmitRecordStatistics recordStatistics = recordService.selectCount(recordSearch); +// return Msg.success().add("record",recordStatistics); +// } +// +// /** +// * 病案提交导出 +// * @param response +// */ +// @ResponseBody +// @RequestMapping(value = "/exportExcelSubmit") +// public void exportExcelSubmit(HttpServletResponse response, +// RecordSearch recordSearch, +// HttpServletRequest request){ +// String tableThNames = "科室名称,出院人数,医生已提交,医生未提交,医生提交率," + +// "医生质控员已提交,医生质控员未提交,医生质控员提交率," + +// "科主任已提交,科主任未提交,科主任提交率," + +// "护士已提交,护士未提交,护士提交率," + +// "护士质控员已提交,护士质控员未提交,护士质控员提交率," + +// "护士长已提交,护士长未提交,护士长提交率"; +// String fieldCns = "deptNameCn,count,doctorSubmitCount,unDoctorSubmitCount,doctorSubmitPercent," + +// "doctorCheckCount,unDoctorCheckCount,doctorCheckPercent," + +// "directorCheckCount,unDirectorCheckCount,directorCheckPercent," + +// "nurseSubmitCount,unNurseSubmitCount,nurseSubmitPercent," + +// "nurseCheckCount,unNurseCheckCount,nurseCheckPercent," + +// "headNurseCount,unHeadNurseCount,headNursePercent"; +// //构造excel的数据 +// try { +// List list = recordService.selectUnCountGroupDept(recordSearch,request); +// //文件名 +// String fileName = "病案提交统计" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls"; +// //ExportExcelUtil +// ExportExcelUtil exportExcelUtil = new ExportExcelUtil(); +// //导出excel的操作 +// exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response); +// }catch (Exception e){ +// ExceptionPrintUtil.printException(e); +// e.printStackTrace(); +// } +// } +// +// /** +// * 科室病案超期頁面 +// * @return +// */ +// @RequestMapping("deptOverTimeInfo") +// public String deptOverTimeInfo(Model model, String startDateTo, String endDateTo){ +// model.addAttribute("startDate",startDateTo); +// model.addAttribute("endDate",endDateTo); +// return "record/deptOverTimeInfo"; +// } +// +// /** +// * 科室病案超期頁面中,其中各个角色的提交率 +// */ +// @RequestMapping("selectOvertimeCount") +// @ResponseBody +// public Msg selectOvertimeCount(RecordSearch recordSearch, HttpServletRequest request) throws Exception{ +// SubmitRecordStatistics recordStatistics = recordService.selectOvertimeCount(recordSearch,request); +// return Msg.success().add("record",recordStatistics); +// } +// +// /** +// * 按科室待审核角色病案超时分页查询 +// * @return +// */ +// @RequestMapping("getRecordGroupDeptAndRole") +// @ResponseBody +// public OffsetLimitPage getRecordGroupDeptAndRole(Integer offset, +// Integer limit, +// RecordSearch recordSearch){ +// if(offset != null && limit != null) { +// PageHelper.offsetPage(offset, limit); +// } +// List submitRecords = new Page<>(); +// try { +// submitRecords = recordService.selectRecordGroupDeptAndRole(recordSearch); +// }catch (Exception e){ +// e.printStackTrace(); +// ExceptionPrintUtil.printException(e); +// } +// +// return new OffsetLimitPage((Page) submitRecords); +// } +// +// /** +// * 科室病案超期导出 +// * @param response +// */ +// @ResponseBody +// @RequestMapping(value = "/exportExcelDeptOverTime") +// public void exportExcelDeptOverTime(HttpServletResponse response, +// RecordSearch recordSearch, +// HttpServletRequest request){ +// String tableThNames = "科室名称,超期份數,医生未提交,医生质控员未提交,科主任未提交,护士未提交,"+ +// "护士质控员未提交,护士长未提交,病案室未提交"; +// String fieldCns = "deptNameCn,count,unDoctorSubmitCount,unDoctorCheckCount,unDirectorCheckCount," + +// "unNurseSubmitCount,unNurseCheckCount,unHeadNurseCount,headNurseCount"; +// //构造excel的数据 +// try { +// List list = recordService.selectUnCountGroupDept(recordSearch,request); +// //文件名 +// String fileName = "科室病案超期" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls"; +// //ExportExcelUtil +// ExportExcelUtil exportExcelUtil = new ExportExcelUtil(); +// //导出excel的操作 +// exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response); +// }catch (Exception e){ +// ExceptionPrintUtil.printException(e); +// e.printStackTrace(); +// } +// } +// +// /** +// * 病案提交明细页面 +// * @return +// */ +// @RequestMapping("signedRecord") +// public String signedRecord(){ +// return "record/signedRecord"; +// } +// +// /** +// * 病案提交明细分页查询 +// * @return +// */ +// @RequestMapping("getSignedRecordList") +// @ResponseBody +// public OffsetLimitPage getSignedRecordList(Integer offset, Integer limit, RecordSearch recordSearch){ +// if(offset != null && limit != null) { +// PageHelper.offsetPage(offset, limit); +// } +// List submitRecords = new Page<>(); +// try { +// submitRecords = recordService.getSignedRecordList(recordSearch); +// }catch (Exception e){ +// e.printStackTrace(); +// ExceptionPrintUtil.printException(e); +// } +// return new OffsetLimitPage((Page)submitRecords); +// } +// +// /** +// * 病案签收导出 +// * @param response +// */ +// @ResponseBody +// @RequestMapping(value = "/exportExcelSigned") +// public void exportExcelSigned(HttpServletResponse response,RecordSearch recordSearch){ +// String tableThNames = "出院日期,出院科室,出院人数,采集完整,已提交,已归档,完整率,提交率,归档率"; +// String fieldCns = "disDate,deptNameCn,allCount,count3,count1,count2,count3Percent,count1Percent,count2Percent"; +// //构造excel的数据 +// try { +// List list = recordService.getSignedRecordList(recordSearch); +// //文件名 +// String fileName = "病案室签收统计" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls"; +// //ExportExcelUtil +// ExportExcelUtil exportExcelUtil = new ExportExcelUtil(); +// //导出excel的操作 +// exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response); +// }catch (Exception e){ +// ExceptionPrintUtil.printException(e); +// e.printStackTrace(); +// } +// } +} diff --git a/src/main/java/com/emr/dao/Archive_MasterMapper.java b/src/main/java/com/emr/dao/Archive_MasterMapper.java index 0e43f619..83201e7b 100644 --- a/src/main/java/com/emr/dao/Archive_MasterMapper.java +++ b/src/main/java/com/emr/dao/Archive_MasterMapper.java @@ -218,4 +218,10 @@ public interface Archive_MasterMapper { * @return */ Integer selectTime1(Archive_Master_Vo archiveMasterVo); + + /** + * 查询病理报表 + * @return + */ + List selectArchiveMasterVoAndExt(Archive_Master_Vo archive_master_vo); } \ No newline at end of file diff --git a/src/main/java/com/emr/entity/Archive_Master_Vo.java b/src/main/java/com/emr/entity/Archive_Master_Vo.java index e18d94b7..b0dd3290 100644 --- a/src/main/java/com/emr/entity/Archive_Master_Vo.java +++ b/src/main/java/com/emr/entity/Archive_Master_Vo.java @@ -206,6 +206,17 @@ public class Archive_Master_Vo { //退回急诊室总数 private Integer backNum; + //报告名称 + private String C9; + + //报告登记时间 + private String T3; + + //病理号 + private String C1; + + + public Integer getOverTime() { return overTime; } @@ -881,6 +892,30 @@ public class Archive_Master_Vo { public void setBackNum(Integer backNum) { this.backNum = backNum; } + + public String getC9() { + return C9; + } + + public void setC9(String c9) { + C9 = c9; + } + + public String getT3() { + return T3; + } + + public void setT3(String t3) { + T3 = t3; + } + + public String getC1() { + return C1; + } + + public void setC1(String c1) { + C1 = c1; + } } diff --git a/src/main/java/com/emr/service/Archive_MasterService.java b/src/main/java/com/emr/service/Archive_MasterService.java index 9feba923..9e977a28 100644 --- a/src/main/java/com/emr/service/Archive_MasterService.java +++ b/src/main/java/com/emr/service/Archive_MasterService.java @@ -322,6 +322,8 @@ public interface Archive_MasterService { * @return */ Integer selectCountNum(Archive_Master_Vo archiveMasterVo); + + List selectArchiveMasterVoAndExt(Archive_Master_Vo archive_master_vo); } 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 2b520b23..d7a28fc2 100644 --- a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java @@ -917,6 +917,15 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { public Integer selectCountNum(Archive_Master_Vo archiveMasterVo) { return archiveMasterMapper.selectCountNum(archiveMasterVo); } + + @Override + public List selectArchiveMasterVoAndExt(Archive_Master_Vo archive_master_vo) { + List archive_master_vos = archiveMasterMapper.selectArchiveMasterVoAndExt(archive_master_vo); + for (int i = 0; i < archive_master_vos.size(); i++) { + System.out.println(archive_master_vos.get(i)); + } + return archive_master_vos ; + } } diff --git a/src/main/java/com/emr/service/ipml/PowerUserServiceImpl.java b/src/main/java/com/emr/service/ipml/PowerUserServiceImpl.java index 6852b8f5..6762bd02 100644 --- a/src/main/java/com/emr/service/ipml/PowerUserServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/PowerUserServiceImpl.java @@ -46,7 +46,10 @@ public class PowerUserServiceImpl implements PowerUserService { return null; } - + @Override + public List getHandleName(String patientIds) { + return null; + } } diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index 1d45939e..0b9cb3de 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -111,6 +111,10 @@ + + + + id, patient_id, inp_no, visit_id, name, sex, dept_name, discharge_date_time, ArchiveState, @@ -2191,4 +2195,28 @@ + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp b/src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp new file mode 100644 index 00000000..1aab7d39 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp @@ -0,0 +1,285 @@ +<%@ page import="java.util.ResourceBundle" %> +<%@ page contentType="text/html;charset=UTF-8" language="java" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + +<% + ResourceBundle res = ResourceBundle.getBundle("config.jdbc"); +%> + + + 病案提交报表 + + + + + + <%@include file="../../jspf/comm.jspf" %> + + + + + + + + + +
+
+<%--
--%> +<%--
--%> +<%-- --%> +<%-- 病理数据报表--%> +<%-- --%> +<%--
--%> +<%--
--%> +
+ +
+
+
+ + +
+<%--
--%> +<%-- --%> +<%-- +<%-- maxlength="2">--%> +<%--
--%> +
+ + +
+<%--
--%> +<%-- --%> +<%--
--%> +<%-- +<%-- maxlength="10" autocomplete="off"/>--%> +<%-- ---%> +<%-- +<%-- autocomplete="off"/>--%> +<%--
--%> +<%--
--%> + + +
+ +
+
+
+ +
+
+
+
+
+
+ + + \ No newline at end of file From f1f213fd8ab97bb70c624d202ff039b8bfb57128 Mon Sep 17 00:00:00 2001 From: wengjx <2365319070@qq.com> Date: Fri, 5 Aug 2022 18:51:51 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E7=97=85=E7=90=86=E6=8A=A5=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mapper/Archive_MasterMapper.xml | 49 ++++++++++++++++--- .../views/pathological/pathologicalReport.jsp | 41 +++++++++------- 2 files changed, 67 insertions(+), 23 deletions(-) diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index 0b9cb3de..41cc91d9 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -2210,12 +2210,49 @@ AND name LIKE '%' + #{name} + '%' - - and m.discharge_date_time >= CONVERT(VARCHAR(10),#{startDate,jdbcType=NCHAR},120) - - - and m.discharge_date_time <= #{endDate,jdbcType=NCHAR}+ ' 23:59:59' - + + AND visit_id LIKE '%' + #{visitId} + '%' + + + + + + + + + + and m.discharge_date_time = #{dischargeDateTime,jdbcType=NVARCHAR} + + + + and m.discharge_date_time between CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) and + #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + and m.discharge_date_time >= CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) + + + and m.discharge_date_time <= #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp b/src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp index 1aab7d39..7760fe01 100644 --- a/src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp +++ b/src/main/webapp/WEB-INF/views/pathological/pathologicalReport.jsp @@ -62,25 +62,25 @@ -<%--
--%> -<%-- --%> -<%-- -<%-- maxlength="2">--%> -<%--
--%> +
+ + +
-<%--
--%> -<%-- --%> -<%--
--%> -<%-- -<%-- maxlength="10" autocomplete="off"/>--%> -<%-- ---%> -<%-- -<%-- autocomplete="off"/>--%> -<%--
--%> -<%--
--%> +
+ +
+ + - + +
+
@@ -161,9 +161,12 @@ offset: offset, //页码 order: params.order, //排位命令(desc,asc) inpNo: "" + $("#inpNo").val(), + visitId : "" + $("#visitId").val(), startDate: $("#startDate").val(), endDate: $("#endDate").val(), - name: "" + $("#name").val() + name: "" + $("#name").val(), + startDateTo: $("#startDateTo").val(), + endDateTo: $("#endDateTo").val(), }; return temp; }, @@ -279,7 +282,11 @@ //刷新 $('#table').bootstrapTable('refresh'); }); - + //日期控件 + $(".input-daterange").datepicker({ + format: "yyyy-mm-dd", + language: "zh-CN" + }); \ No newline at end of file From ff18bf3feb8cfd488b2a85c11f849979f0378aca Mon Sep 17 00:00:00 2001 From: wengjx <2365319070@qq.com> Date: Tue, 9 Aug 2022 15:18:31 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E7=97=85=E7=90=86=E6=8A=A5=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mapper/Archive_MasterMapper.xml | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index cff32a83..707307dc 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -112,6 +112,9 @@ + + + id, patient_id, inp_no, visit_id, name, sex, dept_name, discharge_date_time, ArchiveState, @@ -2217,5 +2220,43 @@ + \ No newline at end of file