From bfdc1ce246a48934099fd8fccbc955bab8a46173 Mon Sep 17 00:00:00 2001 From: zengwh <81383286@qq.com> Date: Sun, 1 Aug 2021 15:40:41 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E7=9C=8B=E6=9D=BF=E5=8A=9F=E8=83=BD=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/emr/controller/RecordController.java | 9 +- .../emr/controller/StatisticsController.java | 4 +- .../com/emr/controller/VCountController.java | 4 +- .../emr/controller/WorkHomeController.java | 211 ++++++++ .../emr/controller/lastVerifyController.java | 4 +- .../com/emr/dao/ArchiveOtherExtMapper.java | 8 + .../com/emr/dao/Archive_DetailMapper.java | 2 + .../com/emr/dao/Archive_MasterMapper.java | 35 ++ .../java/com/emr/dao/ServerMachineMapper.java | 22 + .../java/com/emr/entity/Archive_Master.java | 10 + .../java/com/emr/entity/ServerMachine.java | 261 ++++++++++ src/main/java/com/emr/quart/Task1.java | 1 - .../ipml/Archive_DetailServiceImpl.java | 2 +- .../com/emr/service/ipml/RecordService.java | 30 ++ .../com/emr/service/ipml/WorkHomeService.java | 474 ++++++++++++++++++ .../java/com/emr/vo/ArchiveOtherExtVo.java | 6 + .../java/com/emr/vo/NotSubmitRecordVo.java | 32 ++ src/main/java/com/emr/vo/RecordCommonVo.java | 22 + .../java/com/emr/vo/RecordStatisticsHome.java | 33 ++ src/main/java/com/emr/vo/ServerMachineVo.java | 23 + .../mapper/ArchiveOtherExtMapper.xml | 50 ++ .../resources/mapper/Archive_DetailMapper.xml | 32 +- .../resources/mapper/Archive_MasterMapper.xml | 138 ++++- .../resources/mapper/ServerMachineMapper.xml | 308 ++++++++++++ src/main/webapp/WEB-INF/jspf/comm.jspf | 2 +- .../views/beHospitaledDir/beHospList.jsp | 2 +- .../views/lastVerifyDir/lastVerifyList.jsp | 8 +- .../WEB-INF/views/record/deptOverTimeInfo.jsp | 6 +- .../WEB-INF/views/record/submitRecord.jsp | 6 +- .../WEB-INF/views/statistics/scanCount.jsp | 6 +- .../WEB-INF/views/vCountDir/vCountList.jsp | 6 +- .../views/workHome/callBackStatistics.jsp | 273 ++++++++++ .../WEB-INF/views/workHome/collectList.jsp | 140 ++++++ .../views/workHome/medicalRoomManage.jsp | 227 +++++++++ .../views/workHome/notSubmitRecord.jsp | 368 ++++++++++++++ .../WEB-INF/views/workHome/recordData.jsp | 324 ++++++++++++ .../WEB-INF/views/workHome/workHomeIframe.jsp | 123 +++++ .../WEB-INF/views/workHome/workHomeList.jsp | 116 +++++ .../bower_components/dashboard.js | 210 ++++++++ src/main/webapp/static/img/green.png | Bin 0 -> 1885 bytes src/main/webapp/static/img/orange.png | Bin 0 -> 2240 bytes src/main/webapp/static/img/red.png | Bin 0 -> 1746 bytes src/main/webapp/static/js/comm.js | 14 + .../js/hospitalCommom/hospitalCommom.js | 2 +- .../js/lastVerifyList/lastVerifyList.js | 6 +- src/main/webapp/static/js/menu.js | 1 + .../webapp/static/js/statistics/scanCount.js | 2 +- .../static/js/statistics/statisticsCommom.js | 4 +- .../webapp/static/js/vCount/vCountList.js | 7 +- 49 files changed, 3535 insertions(+), 39 deletions(-) create mode 100644 src/main/java/com/emr/controller/WorkHomeController.java create mode 100644 src/main/java/com/emr/dao/ServerMachineMapper.java create mode 100644 src/main/java/com/emr/entity/ServerMachine.java create mode 100644 src/main/java/com/emr/service/ipml/WorkHomeService.java create mode 100644 src/main/java/com/emr/vo/NotSubmitRecordVo.java create mode 100644 src/main/java/com/emr/vo/RecordCommonVo.java create mode 100644 src/main/java/com/emr/vo/RecordStatisticsHome.java create mode 100644 src/main/java/com/emr/vo/ServerMachineVo.java create mode 100644 src/main/resources/mapper/ServerMachineMapper.xml create mode 100644 src/main/webapp/WEB-INF/views/workHome/callBackStatistics.jsp create mode 100644 src/main/webapp/WEB-INF/views/workHome/collectList.jsp create mode 100644 src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp create mode 100644 src/main/webapp/WEB-INF/views/workHome/notSubmitRecord.jsp create mode 100644 src/main/webapp/WEB-INF/views/workHome/recordData.jsp create mode 100644 src/main/webapp/WEB-INF/views/workHome/workHomeIframe.jsp create mode 100644 src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp create mode 100644 src/main/webapp/static/bootstrap-3.3.7/bower_components/dashboard.js create mode 100644 src/main/webapp/static/img/green.png create mode 100644 src/main/webapp/static/img/orange.png create mode 100644 src/main/webapp/static/img/red.png diff --git a/src/main/java/com/emr/controller/RecordController.java b/src/main/java/com/emr/controller/RecordController.java index 6d11430..4da5f9f 100644 --- a/src/main/java/com/emr/controller/RecordController.java +++ b/src/main/java/com/emr/controller/RecordController.java @@ -14,6 +14,7 @@ import com.github.pagehelper.PageHelper; import org.apache.shiro.util.CollectionUtils; 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; @@ -34,7 +35,9 @@ public class RecordController { * @return */ @RequestMapping("submitRecord") - public String submitRecord(){ + public String submitRecord(Model model, String startDateTo, String endDateTo){ + model.addAttribute("startDate",startDateTo); + model.addAttribute("endDate",endDateTo); return "record/submitRecord"; } @@ -122,7 +125,9 @@ public class RecordController { * @return */ @RequestMapping("deptOverTimeInfo") - public String deptOverTimeInfo(){ + public String deptOverTimeInfo(Model model, String startDateTo, String endDateTo){ + model.addAttribute("startDate",startDateTo); + model.addAttribute("endDate",endDateTo); return "record/deptOverTimeInfo"; } diff --git a/src/main/java/com/emr/controller/StatisticsController.java b/src/main/java/com/emr/controller/StatisticsController.java index d4fcf63..8442314 100644 --- a/src/main/java/com/emr/controller/StatisticsController.java +++ b/src/main/java/com/emr/controller/StatisticsController.java @@ -76,7 +76,9 @@ public class StatisticsController { //扫描上传记录报表 @RequestMapping("scanCount") - public String scanCount(){ + public String scanCount(Model model,String startDateTo,String endDateTo){ + model.addAttribute("startDate",startDateTo); + model.addAttribute("endDate",endDateTo); return "statistics/scanCount"; } diff --git a/src/main/java/com/emr/controller/VCountController.java b/src/main/java/com/emr/controller/VCountController.java index 3baeb2d..9fc10b2 100644 --- a/src/main/java/com/emr/controller/VCountController.java +++ b/src/main/java/com/emr/controller/VCountController.java @@ -42,7 +42,9 @@ public class VCountController { private Archive_MasterMapper archiveMasterMapper; @RequestMapping(value = "/vCounts") - public String faults(){ + public String faults(Model model,String startDateTo,String endDateTo){ + model.addAttribute("startDate",startDateTo); + model.addAttribute("endDate",endDateTo); return "vCountDir/vCountList"; } diff --git a/src/main/java/com/emr/controller/WorkHomeController.java b/src/main/java/com/emr/controller/WorkHomeController.java new file mode 100644 index 0000000..2ffacf2 --- /dev/null +++ b/src/main/java/com/emr/controller/WorkHomeController.java @@ -0,0 +1,211 @@ +package com.emr.controller; + +import com.emr.dao.ServerMachineMapper; +import com.emr.entity.Archive_Master_Vo; +import com.emr.entity.OffsetLimitPage; +import com.emr.service.ipml.RecordService; +import com.emr.service.ipml.WorkHomeService; +import com.emr.util.ExceptionPrintUtil; +import com.emr.util.ExportExcelUtil; +import com.emr.vo.NotSubmitRecordVo; +import com.emr.vo.RecordSearch; +import com.emr.vo.ServerMachineVo; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +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.HttpServletResponse; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; +import java.util.Map; + + +/** + * @ProjectName: + * @Description: + * @Param 传输参数 + * @Return + * @Author: 曾文和 + * @CreateDate: 2021/7/23 13:23 + * @UpdateUser: 曾文和 + * @UpdateDate: 2021/7/23 13:23 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ +@Controller +@RequestMapping("workHome") +public class WorkHomeController { + @Autowired + private WorkHomeService workHomeService; + @Autowired + private RecordService recordService; + @Autowired + private ServerMachineMapper serverMachineMapper; + /** + * 工作看板 + * @return + */ + @RequestMapping("workHomeList") + public String workHomeList(){ + return "workHome/workHomeList"; + } + + /** + * 工作看板内容 + * @return + */ + @RequestMapping("workHomeIframe") + public String workHomeIframe(){ + return "workHome/workHomeIframe"; + } + + /** + * 病案数据 + * @return + */ + @RequestMapping("recordData") + public String recordData(){ + return "workHome/recordData"; + } + + /** + * 病案数据第一层表格 + * @return + */ + @RequestMapping("recordDataOneTable") + @ResponseBody + public OffsetLimitPage recordDataOneTable(String startDateTo,String endDateTo) throws Exception{ + return workHomeService.recordDateOneTable(startDateTo,endDateTo); + } + + /** + * 病案数据第二层表格 + * @return + */ + @RequestMapping("recordDataTwoTable") + @ResponseBody + public OffsetLimitPage recordDataTwoTable(Integer offset, Integer limit,String startDateTo,String endDateTo) throws Exception{ + return workHomeService.recordDataTwoTable(offset,limit,startDateTo,endDateTo); + } + + /** + * 病案数据第三层表格 + * @return + */ + @RequestMapping("recordDataThreeTable") + @ResponseBody + public List recordDataThreeTable(RecordSearch recordSearch) throws Exception{ + return workHomeService.recordDataThreeTable(recordSearch); + } + + /** + * 病案数据待审核详情页面 + * @return + */ + @RequestMapping("notSubmitRecord") + public String notSubmitRecord(RecordSearch recordSearch, Model model) throws Exception{ + model.addAttribute("obj",recordSearch); + return "workHome/notSubmitRecord"; + } + + /** + * 病案数据未提交报表导出 + * @param response + */ + @ResponseBody + @RequestMapping(value = "exportExcelNotSubmit") + public void exportExcelNotSubmit(HttpServletResponse response, + RecordSearch recordSearch){ + String tableThNames = "主管医生,医生工号,超期份数,出院科室,患者姓名,住院号,"+ + "住院次数,出院日期,超期天数,状态,完整性"; + String fieldCns = "doctorInCharge,doctorInChargeCode,overTimeCounts,deptName,name," + + "inpNo,visitId,dischargeDateTime,overtimeDays,status,lockInfo"; + //构造excel的数据 + try { + List list = recordService.selectRecordGroupDeptAndRole(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(); + } + } + + /** + * 病案室管理 + * @return + */ + @RequestMapping("medicalRoomManage") + public String medicalRoomManage(){ + return "workHome/medicalRoomManage"; + } + + /** + * 病案室管理数据监控 + * @return + */ + @RequestMapping("medicalRoomManageData") + @ResponseBody + public Map medicalRoomManageData(String startDateTo, String endDateTo) throws Exception{ + return workHomeService.medicalRoomManageData(startDateTo,endDateTo); + } + + /** + * HIS退回病案统计 + * @return + */ + @RequestMapping("callBackStatistics") + public String callBackStatistics(){ + return "workHome/callBackStatistics"; + } + + /** + * HIS退回病案统计数据 + * @return + */ + @RequestMapping("callBackStatisticsData") + @ResponseBody + public OffsetLimitPage callBackStatisticsData(Integer offset, Integer limit,String startDateTo,String endDateTo) throws Exception{ + return workHomeService.callBackStatisticsData(offset,limit,startDateTo,endDateTo); + } + + /** + * HIS退回病案统计数据详情 + * @return + */ + @RequestMapping("callBackStatisticsDetail") + @ResponseBody + public OffsetLimitPage callBackStatisticsDetail(Integer offset, Integer limit,String time,String startDateTo,String endDateTo) throws Exception{ + return workHomeService.callBackStatisticsDetail(offset,limit,time,startDateTo,endDateTo); + } + + /** + * 采集器状态 + * @return + */ + @RequestMapping("collectList") + public String collectList(){ + return "workHome/collectList"; + } + + /** + * 采集器状态列表 + * @return + */ + @RequestMapping("collectListData") + @ResponseBody + public OffsetLimitPage collectListData(Integer offset, Integer limit) throws Exception{ + PageHelper.offsetPage(offset, limit); + List list = serverMachineMapper.selectAll(); + return new OffsetLimitPage((Page) list); + } +} diff --git a/src/main/java/com/emr/controller/lastVerifyController.java b/src/main/java/com/emr/controller/lastVerifyController.java index cf8c8d2..b441f8c 100644 --- a/src/main/java/com/emr/controller/lastVerifyController.java +++ b/src/main/java/com/emr/controller/lastVerifyController.java @@ -49,7 +49,7 @@ public class lastVerifyController { private EmrOvertimeSetService emrOvertimeSetService; @RequestMapping(value = "/lastVerifys") - public String faults(Integer flag, Model model){ + public String faults(Integer flag, Model model,String startDateTo,String endDateTo){ if(null != flag){ model.addAttribute("flag",flag); model.addAttribute("overDateSet",overDateSet); @@ -59,6 +59,8 @@ public class lastVerifyController { model.addAttribute("remindDate",remindDate); } } + model.addAttribute("startDate",startDateTo); + model.addAttribute("endDate",endDateTo); return "lastVerifyDir/lastVerifyList"; } diff --git a/src/main/java/com/emr/dao/ArchiveOtherExtMapper.java b/src/main/java/com/emr/dao/ArchiveOtherExtMapper.java index 9f3e655..b6dd5e6 100644 --- a/src/main/java/com/emr/dao/ArchiveOtherExtMapper.java +++ b/src/main/java/com/emr/dao/ArchiveOtherExtMapper.java @@ -67,4 +67,12 @@ public interface ArchiveOtherExtMapper { @Param("filePath")String filePath); void updateOtherDomForStatusFlag( @Param("jzh")String jzh, @Param("filePath")String filePath,@Param("sysFlag")Integer sysFlag); + + /** + * 根据时间查询his召回详情 + * @param time + * @return + */ + List callBackStatisticsDetail(@Param("time") String time,@Param("startDateTo")String startDateTo, + @Param("endDateTo")String endDateTo); } \ No newline at end of file diff --git a/src/main/java/com/emr/dao/Archive_DetailMapper.java b/src/main/java/com/emr/dao/Archive_DetailMapper.java index e5c0e02..1c929e7 100644 --- a/src/main/java/com/emr/dao/Archive_DetailMapper.java +++ b/src/main/java/com/emr/dao/Archive_DetailMapper.java @@ -52,5 +52,7 @@ public interface Archive_DetailMapper { List selectIsScan(@Param("ids") String ids,@Param("fieldFlag")Integer fieldFlag); + List selectIsScanByDate(@Param("startDateTo") String startDateTo,@Param("endDateTo")String endDateTo); + List selectRepeatRecordFileForMasterIds(@Param("masterIds")String masterIds); } \ No newline at end of file diff --git a/src/main/java/com/emr/dao/Archive_MasterMapper.java b/src/main/java/com/emr/dao/Archive_MasterMapper.java index 41140ab..1fe7ec1 100644 --- a/src/main/java/com/emr/dao/Archive_MasterMapper.java +++ b/src/main/java/com/emr/dao/Archive_MasterMapper.java @@ -3,6 +3,8 @@ package com.emr.dao; import com.emr.entity.Archive_Master; import com.emr.entity.Archive_Master_Vo; import com.emr.vo.DoctorStatistics; +import com.emr.vo.RecordCommonVo; +import com.emr.vo.RecordStatisticsHome; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -60,4 +62,37 @@ public interface Archive_MasterMapper { * 自定义完整性校验查询 */ List selectCompleteMasterIds(Archive_Master_Vo master); + + /** + * 病案数据第一层表格 + * @param startDateTo + * @param endDateTo + * @return + */ + List recordDateOneTable(@Param("startDateTo") String startDateTo,@Param("endDateTo") String endDateTo,@Param("deptCodes")String deptCodes); + + /** + * 病案数据第二层表格 + * @param startDateTo + * @param endDateTo + * @return + */ + List recordDataTwoTable(@Param("startDateTo") String startDateTo,@Param("endDateTo") String endDateTo); + + /** + * HIS退回病案统计数据 + * @param startDateTo + * @param endDateTo + * @return + */ + List callBackStatisticsData(@Param("startDateTo") String startDateTo, @Param("endDateTo") String endDateTo); + + List selectStatisticsCount(@Param("startDateTo") String startDateTo, @Param("endDateTo") String endDateTo); + + List overTimeAndReOverTimeCount(@Param("date")String date, + @Param("deadDate")String deadDate, + @Param("reDate")String reDate, + @Param("reDeadDate")String reDeadDate, + @Param("startDateTo")String startDateTo, + @Param("endDateTo")String endDateTo); } \ No newline at end of file diff --git a/src/main/java/com/emr/dao/ServerMachineMapper.java b/src/main/java/com/emr/dao/ServerMachineMapper.java new file mode 100644 index 0000000..3b2cf6b --- /dev/null +++ b/src/main/java/com/emr/dao/ServerMachineMapper.java @@ -0,0 +1,22 @@ +package com.emr.dao; + +import com.emr.entity.ServerMachine; +import com.emr.vo.ServerMachineVo; + +import java.util.List; + +public interface ServerMachineMapper { + int deleteByPrimaryKey(String servername); + + int insert(ServerMachine record); + + int insertSelective(ServerMachine record); + + ServerMachine selectByPrimaryKey(String servername); + + int updateByPrimaryKeySelective(ServerMachine record); + + int updateByPrimaryKey(ServerMachine record); + + List selectAll(); +} \ No newline at end of file diff --git a/src/main/java/com/emr/entity/Archive_Master.java b/src/main/java/com/emr/entity/Archive_Master.java index 9a1ee06..f41ee57 100644 --- a/src/main/java/com/emr/entity/Archive_Master.java +++ b/src/main/java/com/emr/entity/Archive_Master.java @@ -51,6 +51,16 @@ public class Archive_Master { private BigDecimal d1; + private String t1; + + public String getT1() { + return t1; + } + + public void setT1(String t1) { + this.t1 = t1; + } + public String getChangeReason() { return changeReason; } diff --git a/src/main/java/com/emr/entity/ServerMachine.java b/src/main/java/com/emr/entity/ServerMachine.java new file mode 100644 index 0000000..709d026 --- /dev/null +++ b/src/main/java/com/emr/entity/ServerMachine.java @@ -0,0 +1,261 @@ +package com.emr.entity; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +public class ServerMachine implements Serializable { + private String servername; + + private Date lastonlinetime; + + private Integer state; + + private String loginuser; + + private String loginpwd; + + private Long doccount; + + private Long infocount; + + private Long warningcount; + + private Long errorcount; + + private Long donecount; + + private Date lastupdatetime; + + private String c1; + + private String c2; + + private String c3; + + private String c4; + + private String c5; + + private BigDecimal n1; + + private BigDecimal n2; + + private BigDecimal n3; + + private Date t1; + + private Date t2; + + private Date t3; + + private static final long serialVersionUID = 1L; + + public String getServername() { + return servername; + } + + public void setServername(String servername) { + this.servername = servername == null ? null : servername.trim(); + } + + public Date getLastonlinetime() { + return lastonlinetime; + } + + public void setLastonlinetime(Date lastonlinetime) { + this.lastonlinetime = lastonlinetime; + } + + public Integer getState() { + return state; + } + + public void setState(Integer state) { + this.state = state; + } + + public String getLoginuser() { + return loginuser; + } + + public void setLoginuser(String loginuser) { + this.loginuser = loginuser == null ? null : loginuser.trim(); + } + + public String getLoginpwd() { + return loginpwd; + } + + public void setLoginpwd(String loginpwd) { + this.loginpwd = loginpwd == null ? null : loginpwd.trim(); + } + + public Long getDoccount() { + return doccount; + } + + public void setDoccount(Long doccount) { + this.doccount = doccount; + } + + public Long getInfocount() { + return infocount; + } + + public void setInfocount(Long infocount) { + this.infocount = infocount; + } + + public Long getWarningcount() { + return warningcount; + } + + public void setWarningcount(Long warningcount) { + this.warningcount = warningcount; + } + + public Long getErrorcount() { + return errorcount; + } + + public void setErrorcount(Long errorcount) { + this.errorcount = errorcount; + } + + public Long getDonecount() { + return donecount; + } + + public void setDonecount(Long donecount) { + this.donecount = donecount; + } + + public Date getLastupdatetime() { + return lastupdatetime; + } + + public void setLastupdatetime(Date lastupdatetime) { + this.lastupdatetime = lastupdatetime; + } + + public String getC1() { + return c1; + } + + public void setC1(String c1) { + this.c1 = c1 == null ? null : c1.trim(); + } + + public String getC2() { + return c2; + } + + public void setC2(String c2) { + this.c2 = c2 == null ? null : c2.trim(); + } + + public String getC3() { + return c3; + } + + public void setC3(String c3) { + this.c3 = c3 == null ? null : c3.trim(); + } + + public String getC4() { + return c4; + } + + public void setC4(String c4) { + this.c4 = c4 == null ? null : c4.trim(); + } + + public String getC5() { + return c5; + } + + public void setC5(String c5) { + this.c5 = c5 == null ? null : c5.trim(); + } + + public BigDecimal getN1() { + return n1; + } + + public void setN1(BigDecimal n1) { + this.n1 = n1; + } + + public BigDecimal getN2() { + return n2; + } + + public void setN2(BigDecimal n2) { + this.n2 = n2; + } + + public BigDecimal getN3() { + return n3; + } + + public void setN3(BigDecimal n3) { + this.n3 = n3; + } + + public Date getT1() { + return t1; + } + + public void setT1(Date t1) { + this.t1 = t1; + } + + public Date getT2() { + return t2; + } + + public void setT2(Date t2) { + this.t2 = t2; + } + + public Date getT3() { + return t3; + } + + public void setT3(Date t3) { + this.t3 = t3; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", servername=").append(servername); + sb.append(", lastonlinetime=").append(lastonlinetime); + sb.append(", state=").append(state); + sb.append(", loginuser=").append(loginuser); + sb.append(", loginpwd=").append(loginpwd); + sb.append(", doccount=").append(doccount); + sb.append(", infocount=").append(infocount); + sb.append(", warningcount=").append(warningcount); + sb.append(", errorcount=").append(errorcount); + sb.append(", donecount=").append(donecount); + sb.append(", lastupdatetime=").append(lastupdatetime); + sb.append(", c1=").append(c1); + sb.append(", c2=").append(c2); + sb.append(", c3=").append(c3); + sb.append(", c4=").append(c4); + sb.append(", c5=").append(c5); + sb.append(", n1=").append(n1); + sb.append(", n2=").append(n2); + sb.append(", n3=").append(n3); + sb.append(", t1=").append(t1); + sb.append(", t2=").append(t2); + sb.append(", t3=").append(t3); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/src/main/java/com/emr/quart/Task1.java b/src/main/java/com/emr/quart/Task1.java index fa9f593..a37175f 100644 --- a/src/main/java/com/emr/quart/Task1.java +++ b/src/main/java/com/emr/quart/Task1.java @@ -255,7 +255,6 @@ public class Task1 { Field field = vo.getClass().getDeclaredField(fieldName); field.setAccessible(true); Integer unCheckCount = (Integer) field.get(vo); - System.out.println(unCheckCount); if(unCheckCount > 0){ List roleUserList = new ArrayList<>(); //获取该角色的用户集合 diff --git a/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java b/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java index e8aa9d7..a26ba5f 100644 --- a/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/Archive_DetailServiceImpl.java @@ -164,7 +164,7 @@ public class Archive_DetailServiceImpl implements Archive_DetailService { nurseFlag = true; } if(StringUtils.isNotBlank(detailVo.getTitle()) && - !detailVo.getTitle().contains(strTemp) && !detailVo.getTitle().contains(nurseTemp)) { + (StringUtils.isBlank(detailVoTemp.getId()) || !detailVo.getId().equals(detailVoTemp.getId())) && (StringUtils.isBlank(nurseDetailVoTemp.getId()) || !detailVo.getId().equals(nurseDetailVoTemp.getId()))) { returnList.add(detailVo); }else{ if(StringUtils.isBlank(detailVo.getTitle())){ diff --git a/src/main/java/com/emr/service/ipml/RecordService.java b/src/main/java/com/emr/service/ipml/RecordService.java index 12c6ccb..2fcc64b 100644 --- a/src/main/java/com/emr/service/ipml/RecordService.java +++ b/src/main/java/com/emr/service/ipml/RecordService.java @@ -464,6 +464,30 @@ public class RecordService { return recordStatistics; } + /** + * 科室名称编码转名称 + * @param dictionaries 科室字典列表 + * @param vo 患者记录对象 + */ + private void deptNameCode2Name(List dictionaries, Archive_Master_Vo vo) { + if(!CollectionUtils.isEmpty(dictionaries)) { + //在院科室 + String deptAdmissionTo = vo.getDeptAdmissionTo(); + //出院科室 + String deptName = vo.getDeptName(); + //住院科室 + for (Emr_Dictionary dictionaryTemp : dictionaries) { + String name = dictionaryTemp.getName(); + if (StringUtils.isNotBlank(deptAdmissionTo) && deptAdmissionTo.equals(dictionaryTemp.getCode())) { + vo.setDeptAdmissionTo(name); + } + if (StringUtils.isNotBlank(deptName) && deptName.equals(dictionaryTemp.getCode())) { + vo.setDeptName(name); + } + } + } + } + /** * 按科室待审核角色病案超时分页查询 * @param recordSearch @@ -473,7 +497,13 @@ public class RecordService { List list = recordMapper.selectRecordGroupDeptAndRole(recordSearch); if(!CollectionUtils.isEmpty(list)){ List userList = commomService.getUserList(); + //查询科室集合 + Emr_Dictionary dictionary = new Emr_Dictionary(); + dictionary.setTypecode("dept_code"); + List dictionaries = dictionaryMapper.dicByTypeCode(dictionary); for (Archive_Master_Vo obj : list) { + //转换科室 + deptNameCode2Name(dictionaries, obj); //转换工号 if(!CollectionUtils.isEmpty(userList)) { for (User user : userList) { diff --git a/src/main/java/com/emr/service/ipml/WorkHomeService.java b/src/main/java/com/emr/service/ipml/WorkHomeService.java new file mode 100644 index 0000000..bb9de81 --- /dev/null +++ b/src/main/java/com/emr/service/ipml/WorkHomeService.java @@ -0,0 +1,474 @@ +package com.emr.service.ipml; + +import com.emr.dao.*; +import com.emr.entity.*; +import com.emr.vo.*; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import org.apache.commons.lang3.StringUtils; +import org.apache.ibatis.annotations.Param; +import org.apache.shiro.util.CollectionUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * @ProjectName: + * @Description: + * @Param 传输参数 + * @Return + * @Author: 曾文和 + * @CreateDate: 2021/7/28 14:22 + * @UpdateUser: 曾文和 + * @UpdateDate: 2021/7/28 14:22 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ +@Service +public class WorkHomeService { + @Autowired + private Archive_MasterMapper archiveMasterMapper; + @Autowired + private Emr_DictionaryMapper dictionaryMapper; + @Autowired + private RecordMapper recordMapper; + @Autowired + private EmrOvertimeSetService overtimeSetService; + @Autowired + private EmrHolidaySetMapper holidaySetMapper; + @Autowired + private Archive_DetailMapper archiveDetailMapper; + @Autowired + private ArchiveOtherExtMapper archiveOtherExtMapper; + /** + * 病案数据第一层表格 + * @param startDateTo + * @param endDateTo + * @return + */ + public OffsetLimitPage recordDateOneTable(String startDateTo, String endDateTo) { + //查询全部出院日期和状态 + List list= archiveMasterMapper.recordDateOneTable(startDateTo,endDateTo,null); + //定义返回集合 + List returnList = new Page<>(); + //定义接收对象 + RecordStatisticsHome obj = new RecordStatisticsHome(); + obj.setName("全院"); + //定义出院人数 + int disCount = 0; + //定义入院人数 + int admissCount = 0; + //定义出科数量 + int sumbitCount = 0; + //定义归档数量 + int recordCount = 0; + if(!CollectionUtils.isEmpty(list)){ + for(Archive_Master archiveMaster : list){ + //判断出院、入院 + String disDate = archiveMaster.getDischargeDateTime(); + if(StringUtils.isNotBlank(disDate) && !"1801".equals(disDate.substring(0,4))){ + disCount++; + }else{ + admissCount++; + } + //判断出科 + String archivestate = archiveMaster.getArchivestate(); + if(StringUtils.isNotBlank(archivestate)) { + if ("64".equals(archivestate) || "128".equals(archivestate)) { + sumbitCount++; + } + //判断归档 + if ("128".equals(archivestate)) { + recordCount++; + } + } + } + } + obj.setName("全院"); + obj.setDisCount(disCount); + obj.setAdmissCount(admissCount); + obj.setSumbitCount(sumbitCount); + obj.setRecordCount(recordCount); + if(disCount != 0) { + obj.setRecordRate((recordCount * 100 / disCount) + "%"); + } + returnList.add(obj); + return new OffsetLimitPage((Page) returnList); + } + + /** + * 病案数据第二层表格 + * @param offset + * @param limit + * @param startDateTo + * @param endDateTo + * @return + */ + public OffsetLimitPage recordDataTwoTable(Integer offset, Integer limit, String startDateTo, String endDateTo) { + PageHelper.offsetPage(offset, limit); + //查询科室归档数量排名 + List returnList = archiveMasterMapper.recordDataTwoTable(startDateTo,endDateTo); + if(!CollectionUtils.isEmpty(returnList)){ + //定义科室编号集合 + StringBuilder deptCodes = new StringBuilder(); + //查询科室集合 + Emr_Dictionary dictionary = new Emr_Dictionary(); + dictionary.setTypecode("dept_code"); + List dictionaries = dictionaryMapper.dicByTypeCode(dictionary); + for(RecordStatisticsHome obj : returnList){ + if(StringUtils.isNotBlank(deptCodes)){ + deptCodes.append(","); + } + //出院科室 + String deptName = obj.getDeptName(); + deptCodes.append(deptName); + } + //查询全部出院日期和状态 + List list = archiveMasterMapper.recordDateOneTable(startDateTo,endDateTo,deptCodes.toString()); + for(RecordStatisticsHome vo : returnList){ + //出院科室 + String deptName = vo.getDeptName(); + //定义出院人数 + int disCount = 0; + //定义入院人数 + int admissCount = 0; + //定义归档数量 + int recordCount = 0; + if(!CollectionUtils.isEmpty(list)){ + for(Archive_Master archiveMaster : list){ + if(StringUtils.isNotBlank(archiveMaster.getDeptName()) && archiveMaster.getDeptName().equals(deptName)){ + //判断出院、入院 + String disDate = archiveMaster.getDischargeDateTime(); + if(StringUtils.isNotBlank(disDate) && !"1801".equals(disDate.substring(0,4))){ + disCount++; + }else{ + admissCount++; + } + //判断出科 + String archivestate = archiveMaster.getArchivestate(); + //判断归档 + if ("128".equals(archivestate)) { + recordCount++; + } + } + } + } + vo.setDisCount(disCount); + vo.setRecordCount(recordCount); + vo.setAdmissCount(admissCount); + if(disCount != 0) { + vo.setRecordRate((recordCount * 100 / disCount) + "%"); + } + //转换科室 + for (Emr_Dictionary dictionaryTemp : dictionaries) { + String name = dictionaryTemp.getName(); + if (StringUtils.isNotBlank(deptName) && deptName.equals(dictionaryTemp.getCode())) { + vo.setName(name); + } + } + } + } + return new OffsetLimitPage((Page) returnList); + } + + /** + * 病案数据第三层表格 + * @param recordSearch + * @return + */ + public List recordDataThreeTable(RecordSearch recordSearch) { + List list = recordMapper.selectUnCountGroupDeptForRemind(recordSearch); + List returnList = new ArrayList<>(); + if(!CollectionUtils.isEmpty(list)){ + SubmitRecord obj = list.get(0); + //获取科室编号 + String deptName = obj.getDeptName(); + //获取科室名称 + String deptNameCn = obj.getDeptNameCn(); + int count2 = obj.getUnDoctorSubmitCount(); + if(count2 > 0){ + NotSubmitRecordVo vo = new NotSubmitRecordVo(deptName,deptNameCn,2,"医生未提交",count2); + returnList.add(vo); + } + int count3 = obj.getUnDoctorCheckCount(); + if(count3 > 0){ + NotSubmitRecordVo vo = new NotSubmitRecordVo(deptName,deptNameCn,3,"医生质控员未提交",count3); + returnList.add(vo); + } + int count4 = obj.getUnDirectorCheckCount(); + if(count4 > 0){ + NotSubmitRecordVo vo = new NotSubmitRecordVo(deptName,deptNameCn,4,"科主任未提交",count4); + returnList.add(vo); + } + int count5 = obj.getUnNurseSubmitCount(); + if(count5 > 0){ + NotSubmitRecordVo vo = new NotSubmitRecordVo(deptName,deptNameCn,5,"护士未提交",count5); + returnList.add(vo); + } + int count6 = obj.getUnNurseCheckCount(); + if(count6 > 0){ + NotSubmitRecordVo vo = new NotSubmitRecordVo(deptName,deptNameCn,6,"护士质控员未提交",count6); + returnList.add(vo); + } + int count7 = obj.getUnHeadNurseCount(); + if(count7 > 0){ + NotSubmitRecordVo vo = new NotSubmitRecordVo(deptName,deptNameCn,7,"护士长未提交",count7); + returnList.add(vo); + } + int count8 = obj.getUnRecordRoomCount(); + if(count8 > 0){ + NotSubmitRecordVo vo = new NotSubmitRecordVo(deptName,deptNameCn,8,"病案室未提交",count8); + returnList.add(vo); + } + } + return returnList; + } + + /** + * 病案室管理数据监控 + * @param startDateTo + * @param endDateTo + */ + public Map medicalRoomManageData(String startDateTo, String endDateTo) throws Exception{ + //查询总数据 1.出院人数 2.待终审数量 3.已归档数量 4.已签收数量 5.已扫描数量 6.待终审已扫描 + List list = archiveMasterMapper.selectStatisticsCount(startDateTo, endDateTo); + //组织返回数据 + //定义出院人数 + int disCount = 0; + //定义待终审数量 + int headNurseCount = 0; + //定义归档数量 + int recordCount = 0; + //定义签收数量 + int signCount = 0; + //已扫描数量 + int isScanCount = 0; + //待终审未扫描数量 + int notScanCount = 0; + //超期病历 + int overTimeCount = 0; + //预超期病历 + int reOverTimeCount = 0; + //归档率 归档数量/出院人数 + int recordRate = 0; + //签收率 已签收/总出院人数 + int signRate = 0; + //扫描率 + int scanRate = 0; + Map map = new HashMap<>(); + if (!CollectionUtils.isEmpty(list)) { + disCount = list.get(0); + headNurseCount = list.get(1); + recordCount = list.get(2); + signCount = list.get(3); + isScanCount = list.get(4); + //待终审未扫描数量 = 待终审总数 - 已扫描 + notScanCount = headNurseCount - list.get(5); + //查询超期参数 + EmrOvertimeSet overtimeSet = overtimeSetService.selectByPrimaryKey(1); + //获取未超期列表 + List unHolidays = holidaySetMapper.selectNotHolidayList(); + //获取非死亡工作日 + String date = unHolidays.get(overtimeSet.getDays()).getDate(); + //获取死亡工作日 + String deadDate = unHolidays.get(overtimeSet.getDeadDays()).getDate(); + //获取预超期非死亡工作日 + String reDate = unHolidays.get(overtimeSet.getDays() - overtimeSet.getSurplusDays()).getDate(); + //获取预超期死亡工作日 + String reDeadDate = unHolidays.get(overtimeSet.getDeadDays() - overtimeSet.getSurplusDays()).getDate(); + //查询超期与预超期数量集合 1.超期数量 2.预超期数量 + List overTimeAndReOverTimeCountList = archiveMasterMapper.overTimeAndReOverTimeCount(date,deadDate,reDate,reDeadDate,startDateTo, endDateTo); + overTimeCount = overTimeAndReOverTimeCountList.get(0); + reOverTimeCount = overTimeAndReOverTimeCountList.get(1); + } + //归档率 归档数量/出院人数 + if(disCount != 0){ + recordRate = recordCount * 100 / disCount; + } + map.put("recordRate",recordRate + "%"); + //终审数量 + map.put("recordCount", recordCount + ""); + //待终审数量 + map.put("headNurseCount", headNurseCount + ""); + //出科数量 待终审数量+终审数量 + map.put("submitCount", (recordCount + headNurseCount) + ""); + //签收数量 + map.put("signCount", signCount + ""); + //待签收数量 总出院人数-已签收数量 + map.put("notSignCount", (disCount - signCount) + ""); + //签收率 已签收/总出院人数 + if(disCount != 0){ + signRate = signCount * 100 / disCount; + } + map.put("signRate",signRate + "%"); + //超期数量 + map.put("overTimeCount", overTimeCount + ""); + //预超期数量 + map.put("reOverTimeCount",reOverTimeCount + ""); + //已扫描数量 + map.put("isScanCount",isScanCount + ""); + //待终审未扫描数量 + map.put("notScanCount",notScanCount + ""); + //扫描率 + if(disCount != 0){ + scanRate = (isScanCount * 100 / disCount); + } + map.put("scanRate",scanRate + "%"); + return map; + } +/* + public Map medicalRoomManageData(String startDateTo, String endDateTo) throws Exception{ + //查询总数据 + List list = archiveMasterMapper.recordDateOneTable(startDateTo, endDateTo, null); + //组织返回数据 + Map map = new HashMap<>(); + if (!CollectionUtils.isEmpty(list)) { + //查询超期参数 + EmrOvertimeSet overtimeSet = overtimeSetService.selectByPrimaryKey(1); + //获取未超期列表 + List unHolidays = holidaySetMapper.selectNotHolidayList(); + //获取非死亡工作日 + String date = unHolidays.get(overtimeSet.getDays()).getDate(); + //获取死亡工作日 + String deadDate = unHolidays.get(overtimeSet.getDeadDays()).getDate(); + //获取预超期非死亡工作日 + String reDate = unHolidays.get(overtimeSet.getDays() - overtimeSet.getSurplusDays()).getDate(); + //获取预超期死亡工作日 + String reDeadDate = unHolidays.get(overtimeSet.getDeadDays() - overtimeSet.getSurplusDays()).getDate(); + //定义出院人数 + int disCount = 0; + //定义待终审数量 + int headNurseCount = 0; + //定义归档数量 + int recordCount = 0; + //定义签收数量 + int signCount = 0; + //超期病历 + int overTimeCount = 0; + //预超期病历 + int reOverTimeCount = 0; + //未扫描数量 + int notScanCount = 0; + //定义格式化日期 + SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); + //查询已纸质扫描的MasterId + List archiveDetails = archiveDetailMapper.selectIsScanByDate(startDateTo, endDateTo); + for (Archive_Master obj : list) { + //获取出院日期 + String dischargeDateTime = obj.getDischargeDateTime(); + //获取状态 + String archivestate = obj.getArchivestate(); + //获取签收时间 + String t1 = obj.getT1(); + //判断出院人数 + if (StringUtils.isNotBlank(dischargeDateTime) && !"1801".equals(dischargeDateTime.substring(0, 4))) { + disCount++; + //获取死亡状态 + String dischargeDisposition = obj.getDischargeDisposition(); + long time = fmt.parse(dischargeDateTime).getTime(); + if(StringUtils.isNotBlank(dischargeDisposition) && "5".equals(dischargeDisposition)){ + //死亡病历 + if(time <= fmt.parse(deadDate).getTime()){ + //超期 + overTimeCount++; + } + if(time > fmt.parse(deadDate).getTime() && time <= fmt.parse(reDeadDate).getTime()){ + //预超期 + reOverTimeCount++; + } + }else{ + //非死亡病历 + if(time <= fmt.parse(date).getTime()){ + //超期 + overTimeCount++; + } + if(time > fmt.parse(date).getTime() && time <= fmt.parse(reDate).getTime()){ + //预超期 + reOverTimeCount++; + } + } + } + //判断待终审数量 + if ("64".equals(archivestate)) { + headNurseCount++; + //判断是否纸质扫描 + boolean isScanFlag = false; + if(!CollectionUtils.isEmpty(archiveDetails)){ + for(Archive_Detail detail : archiveDetails){ + if(detail.getMasterid().equals(obj.getId())){ + isScanFlag = true; + break; + } + } + } + if(!isScanFlag){ + notScanCount++; + } + } + //判断归档数量 + if ("128".equals(archivestate)) { + recordCount++; + } + //判断签收数量 + if (StringUtils.isNotBlank(t1) && !"1801".equals(t1.substring(0, 4))) { + signCount++; + } + } + //归档率 归档数量/出院人数 + map.put("recordRate", (recordCount * 100 / disCount) + "%"); + //终审数量 + map.put("recordCount", recordCount + ""); + //待终审数量 + map.put("headNurseCount", headNurseCount + ""); + //出科数量 待终审数量+终审数量 + map.put("submitCount", (recordCount + headNurseCount) + ""); + //签收数量 + map.put("signCount", signCount + ""); + //待签收数量 总出院人数-已签收数量 + map.put("notSignCount", (disCount - signCount) + ""); + //签收率 已签收/总出院人数 + map.put("signRate", (signCount * 100 / disCount) + "%"); + //超期数量 + map.put("overTimeCount", overTimeCount + ""); + //预超期数量 + map.put("reOverTimeCount",reOverTimeCount + ""); + //已扫描数量 + map.put("isScanCount",archiveDetails.size() + ""); + //预超期数量 + map.put("notScanCount",notScanCount + ""); + //扫描率 + map.put("scanRate",(archiveDetails.size() * 100 / disCount) + "%"); + } + return map; + } +*/ + + /** + * HIS退回病案统计数据 + * @param offset + * @param limit + * @param startDateTo + * @param endDateTo + * @return + */ + public OffsetLimitPage callBackStatisticsData(Integer offset, Integer limit, String startDateTo, String endDateTo) { + PageHelper.offsetPage(offset, limit); + List list = archiveMasterMapper.callBackStatisticsData(startDateTo, endDateTo); + return new OffsetLimitPage((Page) list); + } + + /** + * HIS退回病案统计数据详情 + * @param offset + * @param limit + * @param time + * @return + */ + public OffsetLimitPage callBackStatisticsDetail(Integer offset, Integer limit, String time,String startDateTo,String endDateTo) { + PageHelper.offsetPage(offset, limit); + List list = archiveOtherExtMapper.callBackStatisticsDetail(time,startDateTo,endDateTo); + return new OffsetLimitPage((Page) list); + } +} diff --git a/src/main/java/com/emr/vo/ArchiveOtherExtVo.java b/src/main/java/com/emr/vo/ArchiveOtherExtVo.java index c4331dd..ccfffed 100644 --- a/src/main/java/com/emr/vo/ArchiveOtherExtVo.java +++ b/src/main/java/com/emr/vo/ArchiveOtherExtVo.java @@ -38,4 +38,10 @@ public class ArchiveOtherExtVo extends ArchiveOtherExt { private String tempTime; private String nursingEndTime; + + private String t1Str; + + private String t2Str; + + private String n2Str; } diff --git a/src/main/java/com/emr/vo/NotSubmitRecordVo.java b/src/main/java/com/emr/vo/NotSubmitRecordVo.java new file mode 100644 index 0000000..84b4bff --- /dev/null +++ b/src/main/java/com/emr/vo/NotSubmitRecordVo.java @@ -0,0 +1,32 @@ +package com.emr.vo; + +import lombok.Data; + +/** + * @ProjectName: + * @Description: + * @Param 传输参数 + * @Return + * @Author: 曾文和 + * @CreateDate: 2021/7/29 9:45 + * @UpdateUser: 曾文和 + * @UpdateDate: 2021/7/29 9:45 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ +@Data +public class NotSubmitRecordVo { + private String deptCode; + private String deptNameCn; + private Integer infoId; + private String role; + private Integer unCount; + + public NotSubmitRecordVo(String deptCode, String deptNameCn, Integer infoId, String role, Integer unCount) { + this.deptCode = deptCode; + this.deptNameCn = deptNameCn; + this.infoId = infoId; + this.role = role; + this.unCount = unCount; + } +} \ No newline at end of file diff --git a/src/main/java/com/emr/vo/RecordCommonVo.java b/src/main/java/com/emr/vo/RecordCommonVo.java new file mode 100644 index 0000000..7f93e27 --- /dev/null +++ b/src/main/java/com/emr/vo/RecordCommonVo.java @@ -0,0 +1,22 @@ +package com.emr.vo; + +import lombok.Data; + +/** + * @ProjectName: + * @Description: + * @Param 传输参数 + * @Return + * @Author: 曾文和 + * @CreateDate: 2021/7/30 10:04 + * @UpdateUser: 曾文和 + * @UpdateDate: 2021/7/30 10:04 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ +@Data +public class RecordCommonVo { + private String time; + + private Integer count; +} diff --git a/src/main/java/com/emr/vo/RecordStatisticsHome.java b/src/main/java/com/emr/vo/RecordStatisticsHome.java new file mode 100644 index 0000000..6271b43 --- /dev/null +++ b/src/main/java/com/emr/vo/RecordStatisticsHome.java @@ -0,0 +1,33 @@ +package com.emr.vo; + +import lombok.Data; + +/** + * @ProjectName: + * @Description: + * @Param 传输参数 + * @Return + * @Author: 曾文和 + * @CreateDate: 2021/7/28 14:18 + * @UpdateUser: 曾文和 + * @UpdateDate: 2021/7/28 14:18 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ +@Data +public class RecordStatisticsHome { + private String deptName; + + private String name; + + private Integer disCount; + + private Integer admissCount; + + private Integer sumbitCount; + + private Integer recordCount; + + private String recordRate; +} + diff --git a/src/main/java/com/emr/vo/ServerMachineVo.java b/src/main/java/com/emr/vo/ServerMachineVo.java new file mode 100644 index 0000000..8033f25 --- /dev/null +++ b/src/main/java/com/emr/vo/ServerMachineVo.java @@ -0,0 +1,23 @@ +package com.emr.vo; + +import com.emr.entity.ServerMachine; +import lombok.Data; + +/** + * @ProjectName: + * @Description: + * @Param 传输参数 + * @Return + * @Author: 曾文和 + * @CreateDate: 2021/7/30 11:00 + * @UpdateUser: 曾文和 + * @UpdateDate: 2021/7/30 11:00 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ +@Data +public class ServerMachineVo extends ServerMachine { + private String lastOnlintTimeStr; + + private String stateStr; +} diff --git a/src/main/resources/mapper/ArchiveOtherExtMapper.xml b/src/main/resources/mapper/ArchiveOtherExtMapper.xml index 5b0d99e..cbdcef2 100644 --- a/src/main/resources/mapper/ArchiveOtherExtMapper.xml +++ b/src/main/resources/mapper/ArchiveOtherExtMapper.xml @@ -708,4 +708,54 @@ + + + + + + + + AND discharge_date_time between CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) and + #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + AND discharge_date_time >= CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) + + + AND discharge_date_time <= #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + diff --git a/src/main/resources/mapper/Archive_DetailMapper.xml b/src/main/resources/mapper/Archive_DetailMapper.xml index 56ff9dd..43881f2 100644 --- a/src/main/resources/mapper/Archive_DetailMapper.xml +++ b/src/main/resources/mapper/Archive_DetailMapper.xml @@ -471,10 +471,40 @@ ${item} ) - AND Source = '扫描上传' + AND Source = '扫描上传' AND flag = '0' GROUP BY MasterID + + + + + AND discharge_date_time between CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) and + #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + AND discharge_date_time >= CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) + + + AND discharge_date_time <= #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + + + + + + + + + AND discharge_date_time between CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) and + #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + AND discharge_date_time >= CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120) + + + AND discharge_date_time <= #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59' + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/ServerMachineMapper.xml b/src/main/resources/mapper/ServerMachineMapper.xml new file mode 100644 index 0000000..faf632e --- /dev/null +++ b/src/main/resources/mapper/ServerMachineMapper.xml @@ -0,0 +1,308 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ServerName, LastOnlineTime, State, LoginUser, LoginPwd, DocCount, InfoCount, WarningCount, + ErrorCount, DoneCount, LastUpdateTime, C1, C2, C3, C4, C5, N1, N2, N3, T1, T2, T3 + + + + delete from Server_Machine + where ServerName = #{servername,jdbcType=NVARCHAR} + + + insert into Server_Machine (ServerName, LastOnlineTime, State, + LoginUser, LoginPwd, DocCount, + InfoCount, WarningCount, ErrorCount, + DoneCount, LastUpdateTime, C1, + C2, C3, C4, C5, + N1, N2, N3, T1, + T2, T3) + values (#{servername,jdbcType=NVARCHAR}, #{lastonlinetime,jdbcType=TIMESTAMP}, #{state,jdbcType=INTEGER}, + #{loginuser,jdbcType=NVARCHAR}, #{loginpwd,jdbcType=NVARCHAR}, #{doccount,jdbcType=BIGINT}, + #{infocount,jdbcType=BIGINT}, #{warningcount,jdbcType=BIGINT}, #{errorcount,jdbcType=BIGINT}, + #{donecount,jdbcType=BIGINT}, #{lastupdatetime,jdbcType=TIMESTAMP}, #{c1,jdbcType=NVARCHAR}, + #{c2,jdbcType=NVARCHAR}, #{c3,jdbcType=NVARCHAR}, #{c4,jdbcType=NVARCHAR}, #{c5,jdbcType=NVARCHAR}, + #{n1,jdbcType=DECIMAL}, #{n2,jdbcType=DECIMAL}, #{n3,jdbcType=DECIMAL}, #{t1,jdbcType=TIMESTAMP}, + #{t2,jdbcType=TIMESTAMP}, #{t3,jdbcType=TIMESTAMP}) + + + insert into Server_Machine + + + ServerName, + + + LastOnlineTime, + + + State, + + + LoginUser, + + + LoginPwd, + + + DocCount, + + + InfoCount, + + + WarningCount, + + + ErrorCount, + + + DoneCount, + + + LastUpdateTime, + + + C1, + + + C2, + + + C3, + + + C4, + + + C5, + + + N1, + + + N2, + + + N3, + + + T1, + + + T2, + + + T3, + + + + + #{servername,jdbcType=NVARCHAR}, + + + #{lastonlinetime,jdbcType=TIMESTAMP}, + + + #{state,jdbcType=INTEGER}, + + + #{loginuser,jdbcType=NVARCHAR}, + + + #{loginpwd,jdbcType=NVARCHAR}, + + + #{doccount,jdbcType=BIGINT}, + + + #{infocount,jdbcType=BIGINT}, + + + #{warningcount,jdbcType=BIGINT}, + + + #{errorcount,jdbcType=BIGINT}, + + + #{donecount,jdbcType=BIGINT}, + + + #{lastupdatetime,jdbcType=TIMESTAMP}, + + + #{c1,jdbcType=NVARCHAR}, + + + #{c2,jdbcType=NVARCHAR}, + + + #{c3,jdbcType=NVARCHAR}, + + + #{c4,jdbcType=NVARCHAR}, + + + #{c5,jdbcType=NVARCHAR}, + + + #{n1,jdbcType=DECIMAL}, + + + #{n2,jdbcType=DECIMAL}, + + + #{n3,jdbcType=DECIMAL}, + + + #{t1,jdbcType=TIMESTAMP}, + + + #{t2,jdbcType=TIMESTAMP}, + + + #{t3,jdbcType=TIMESTAMP}, + + + + + update Server_Machine + + + LastOnlineTime = #{lastonlinetime,jdbcType=TIMESTAMP}, + + + State = #{state,jdbcType=INTEGER}, + + + LoginUser = #{loginuser,jdbcType=NVARCHAR}, + + + LoginPwd = #{loginpwd,jdbcType=NVARCHAR}, + + + DocCount = #{doccount,jdbcType=BIGINT}, + + + InfoCount = #{infocount,jdbcType=BIGINT}, + + + WarningCount = #{warningcount,jdbcType=BIGINT}, + + + ErrorCount = #{errorcount,jdbcType=BIGINT}, + + + DoneCount = #{donecount,jdbcType=BIGINT}, + + + LastUpdateTime = #{lastupdatetime,jdbcType=TIMESTAMP}, + + + C1 = #{c1,jdbcType=NVARCHAR}, + + + C2 = #{c2,jdbcType=NVARCHAR}, + + + C3 = #{c3,jdbcType=NVARCHAR}, + + + C4 = #{c4,jdbcType=NVARCHAR}, + + + C5 = #{c5,jdbcType=NVARCHAR}, + + + N1 = #{n1,jdbcType=DECIMAL}, + + + N2 = #{n2,jdbcType=DECIMAL}, + + + N3 = #{n3,jdbcType=DECIMAL}, + + + T1 = #{t1,jdbcType=TIMESTAMP}, + + + T2 = #{t2,jdbcType=TIMESTAMP}, + + + T3 = #{t3,jdbcType=TIMESTAMP}, + + + where ServerName = #{servername,jdbcType=NVARCHAR} + + + update Server_Machine + set LastOnlineTime = #{lastonlinetime,jdbcType=TIMESTAMP}, + State = #{state,jdbcType=INTEGER}, + LoginUser = #{loginuser,jdbcType=NVARCHAR}, + LoginPwd = #{loginpwd,jdbcType=NVARCHAR}, + DocCount = #{doccount,jdbcType=BIGINT}, + InfoCount = #{infocount,jdbcType=BIGINT}, + WarningCount = #{warningcount,jdbcType=BIGINT}, + ErrorCount = #{errorcount,jdbcType=BIGINT}, + DoneCount = #{donecount,jdbcType=BIGINT}, + LastUpdateTime = #{lastupdatetime,jdbcType=TIMESTAMP}, + C1 = #{c1,jdbcType=NVARCHAR}, + C2 = #{c2,jdbcType=NVARCHAR}, + C3 = #{c3,jdbcType=NVARCHAR}, + C4 = #{c4,jdbcType=NVARCHAR}, + C5 = #{c5,jdbcType=NVARCHAR}, + N1 = #{n1,jdbcType=DECIMAL}, + N2 = #{n2,jdbcType=DECIMAL}, + N3 = #{n3,jdbcType=DECIMAL}, + T1 = #{t1,jdbcType=TIMESTAMP}, + T2 = #{t2,jdbcType=TIMESTAMP}, + T3 = #{t3,jdbcType=TIMESTAMP} + where ServerName = #{servername,jdbcType=NVARCHAR} + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jspf/comm.jspf b/src/main/webapp/WEB-INF/jspf/comm.jspf index f69066c..c8bca64 100644 --- a/src/main/webapp/WEB-INF/jspf/comm.jspf +++ b/src/main/webapp/WEB-INF/jspf/comm.jspf @@ -58,6 +58,6 @@ - + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp b/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp index 6a5caa2..8c3dba3 100644 --- a/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp +++ b/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp @@ -840,6 +840,6 @@ - + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp index 9fc9c67..6e5c16d 100644 --- a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp +++ b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp @@ -166,9 +166,9 @@
+ maxlength="10" autocomplete="off" <%--value="${overDateSet}" --%>value="${startDate}"/> - - + value="${endDate}"/>
@@ -671,8 +671,8 @@
- - + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/record/deptOverTimeInfo.jsp b/src/main/webapp/WEB-INF/views/record/deptOverTimeInfo.jsp index 088bbb5..d440443 100644 --- a/src/main/webapp/WEB-INF/views/record/deptOverTimeInfo.jsp +++ b/src/main/webapp/WEB-INF/views/record/deptOverTimeInfo.jsp @@ -63,10 +63,10 @@
+ maxlength="10" autocomplete="off" value="${startDate}"/> - + maxlength="10" autocomplete="off" value="${endDate}"/>
@@ -143,7 +143,7 @@
- + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/record/submitRecord.jsp b/src/main/webapp/WEB-INF/views/record/submitRecord.jsp index 1c3bbc7..deaada0 100644 --- a/src/main/webapp/WEB-INF/views/record/submitRecord.jsp +++ b/src/main/webapp/WEB-INF/views/record/submitRecord.jsp @@ -99,10 +99,10 @@
+ maxlength="10" autocomplete="off" value="${startDate}"/> - + maxlength="10" autocomplete="off" value="${endDate}"/>
@@ -164,7 +164,7 @@
- + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/statistics/scanCount.jsp b/src/main/webapp/WEB-INF/views/statistics/scanCount.jsp index a80d4bd..1d0070a 100644 --- a/src/main/webapp/WEB-INF/views/statistics/scanCount.jsp +++ b/src/main/webapp/WEB-INF/views/statistics/scanCount.jsp @@ -59,10 +59,10 @@
+ maxlength="10" autocomplete="off" value="${startDate}"/> - + maxlength="10" autocomplete="off" value="${endDate}"/>
- + diff --git a/src/main/webapp/WEB-INF/views/vCountDir/vCountList.jsp b/src/main/webapp/WEB-INF/views/vCountDir/vCountList.jsp index 160a24b..bc686b8 100644 --- a/src/main/webapp/WEB-INF/views/vCountDir/vCountList.jsp +++ b/src/main/webapp/WEB-INF/views/vCountDir/vCountList.jsp @@ -86,10 +86,10 @@
+ maxlength="10" autocomplete="off" value="${startDate}"/> - + maxlength="10" autocomplete="off" value="${endDate}"/>
@@ -129,5 +129,5 @@ - + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/workHome/callBackStatistics.jsp b/src/main/webapp/WEB-INF/views/workHome/callBackStatistics.jsp new file mode 100644 index 0000000..770179c --- /dev/null +++ b/src/main/webapp/WEB-INF/views/workHome/callBackStatistics.jsp @@ -0,0 +1,273 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + + + + + HIS退回病案统计 + + + <%@include file="../../jspf/comm.jspf" %> + + + + + +
+
+
+ + + + diff --git a/src/main/webapp/WEB-INF/views/workHome/collectList.jsp b/src/main/webapp/WEB-INF/views/workHome/collectList.jsp new file mode 100644 index 0000000..becb455 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/workHome/collectList.jsp @@ -0,0 +1,140 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + + + + + 采集器状态 + + + <%@include file="../../jspf/comm.jspf" %> + + + + + +
+
+
+ + + + diff --git a/src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp b/src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp new file mode 100644 index 0000000..9bdcf36 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp @@ -0,0 +1,227 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + + + + + 病案室管理 + + + <%@include file="../../jspf/comm.jspf" %> + + + + + +
+
+
+
+ +
+
+
0
+
归档率
+
+
+
+
+
+
+ +
+
+
0
+
终审数量
+
+
+
+
+
+
+ +
+
+
0
+
待终审数量
+
+
+
+
+
+
+ +
+
+
0
+
出科数量
+
+
+
+
+
+
+ +
+
+
0
+
超期病历数量
+
+
+
+
+
+
+ +
+
+
0
+
预超期病历数量
+
+
+
+
+
+
+
+
+ +
+
+
0
+
签收数量
+
+
+
+
+
+
+ +
+
+
0
+
待签收数量
+
+
+
+
+
+
+ +
+
+
0
+
签收率
+
+
+
+
+
+
+ +
+
+
0
+
扫描数量
+
+
+
+
+
+
+ +
+
+
0
+
待扫描数量
+
+
+
+
+
+
+ +
+
+
0
+
扫描率
+
+
+
+
+ + + + diff --git a/src/main/webapp/WEB-INF/views/workHome/notSubmitRecord.jsp b/src/main/webapp/WEB-INF/views/workHome/notSubmitRecord.jsp new file mode 100644 index 0000000..fa171ae --- /dev/null +++ b/src/main/webapp/WEB-INF/views/workHome/notSubmitRecord.jsp @@ -0,0 +1,368 @@ +<%@ page contentType="text/html;charset=UTF-8" language="java" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + + 病案未提交报表 + + + + + + <%@include file="../../jspf/comm.jspf" %> + + + + + + + + + + +
+
+
+
+ + 病案未提交报表 + +
+
+
+ +
+
+
+ +
+ + - + +
+
+
+ + +
+
+ + +
+
+ + +
+ <%--
+ + +
+
+ + +
--%> +
+ + +
+
+
+ +
+
+
+
+
+
+<%--查看流程弹窗--%> + + + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/workHome/recordData.jsp b/src/main/webapp/WEB-INF/views/workHome/recordData.jsp new file mode 100644 index 0000000..110351f --- /dev/null +++ b/src/main/webapp/WEB-INF/views/workHome/recordData.jsp @@ -0,0 +1,324 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + + + + + 病案数据 + + + <%@include file="../../jspf/comm.jspf" %> + + + + + +
+
+
+ + + + diff --git a/src/main/webapp/WEB-INF/views/workHome/workHomeIframe.jsp b/src/main/webapp/WEB-INF/views/workHome/workHomeIframe.jsp new file mode 100644 index 0000000..956a20a --- /dev/null +++ b/src/main/webapp/WEB-INF/views/workHome/workHomeIframe.jsp @@ -0,0 +1,123 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + + + + + 看板的内容页 + + + <%@include file="../../jspf/comm.jspf" %> + + + + + +
+
+
+

病案数据

+ +
+ + +
+ +
+
+ +
+
+
+
+
+
+

病案室管理

+ +
+ + +
+ +
+
+ +
+
+
+
+
+
+

HIS退回病历统计

+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+
+
+
+
+

采集器状态

+ +
+ + +
+ +
+
+
+ +
+
+
+
+ + + + diff --git a/src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp b/src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp new file mode 100644 index 0000000..6adcbff --- /dev/null +++ b/src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp @@ -0,0 +1,116 @@ +<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %> +<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> + + + + + + + 工作看板 + + + <%@include file="../../jspf/comm.jspf" %> + + + + + +
+
+
+
+ +
+ + - + +
+
+
+ + +
+ +
+
+
+
+ +
+ + + + diff --git a/src/main/webapp/static/bootstrap-3.3.7/bower_components/dashboard.js b/src/main/webapp/static/bootstrap-3.3.7/bower_components/dashboard.js new file mode 100644 index 0000000..05f2e7e --- /dev/null +++ b/src/main/webapp/static/bootstrap-3.3.7/bower_components/dashboard.js @@ -0,0 +1,210 @@ +/* + * Author: Abdullah A Almsaeed + * Date: 4 Jan 2014 + * Description: + * This is a demo file used only for the main dashboard (index.html) + **/ + +$(function () { + + 'use strict'; + + // Make the dashboard widgets sortable Using jquery UI + $('.connectedSortable').sortable({ + placeholder : 'sort-highlight', + connectWith : '.connectedSortable', + handle : '.box-header, .nav-tabs', + forcePlaceholderSize: true, + zIndex : 999999 + }); + $('.connectedSortable .box-header, .connectedSortable .nav-tabs-custom').css('cursor', 'move'); + + // jQuery UI sortable for the todo list + $('.todo-list').sortable({ + placeholder : 'sort-highlight', + handle : '.handle', + forcePlaceholderSize: true, + zIndex : 999999 + }); + + // bootstrap WYSIHTML5 - text editor + //$('.textarea').wysihtml5(); + + $('.daterange').daterangepicker({ + ranges : { + 'Today' : [moment(), moment()], + 'Yesterday' : [moment().subtract(1, 'days'), moment().subtract(1, 'days')], + 'Last 7 Days' : [moment().subtract(6, 'days'), moment()], + 'Last 30 Days': [moment().subtract(29, 'days'), moment()], + 'This Month' : [moment().startOf('month'), moment().endOf('month')], + 'Last Month' : [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')] + }, + startDate: moment().subtract(29, 'days'), + endDate : moment() + }, function (start, end) { + window.alert('You chose: ' + start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY')); + }); + + /* jQueryKnob */ + $('.knob').knob(); + + // jvectormap data + var visitorsData = { + US: 398, // USA + SA: 400, // Saudi Arabia + CA: 1000, // Canada + DE: 500, // Germany + FR: 760, // France + CN: 300, // China + AU: 700, // Australia + BR: 600, // Brazil + IN: 800, // India + GB: 320, // Great Britain + RU: 3000 // Russia + }; + // World map by jvectormap + $('#world-map').vectorMap({ + map : 'world_mill_en', + backgroundColor : 'transparent', + regionStyle : { + initial: { + fill : '#e4e4e4', + 'fill-opacity' : 1, + stroke : 'none', + 'stroke-width' : 0, + 'stroke-opacity': 1 + } + }, + series : { + regions: [ + { + values : visitorsData, + scale : ['#92c1dc', '#ebf4f9'], + normalizeFunction: 'polynomial' + } + ] + }, + onRegionLabelShow: function (e, el, code) { + if (typeof visitorsData[code] != 'undefined') + el.html(el.html() + ': ' + visitorsData[code] + ' new visitors'); + } + }); + + // Sparkline charts + var myvalues = [1000, 1200, 920, 927, 931, 1027, 819, 930, 1021]; + $('#sparkline-1').sparkline(myvalues, { + type : 'line', + lineColor: '#92c1dc', + fillColor: '#ebf4f9', + height : '50', + width : '80' + }); + myvalues = [515, 519, 520, 522, 652, 810, 370, 627, 319, 630, 921]; + $('#sparkline-2').sparkline(myvalues, { + type : 'line', + lineColor: '#92c1dc', + fillColor: '#ebf4f9', + height : '50', + width : '80' + }); + myvalues = [15, 19, 20, 22, 33, 27, 31, 27, 19, 30, 21]; + $('#sparkline-3').sparkline(myvalues, { + type : 'line', + lineColor: '#92c1dc', + fillColor: '#ebf4f9', + height : '50', + width : '80' + }); + + // The Calender + $('#calendar').datepicker(); + + // SLIMSCROLL FOR CHAT WIDGET + $('#chat-box').slimScroll({ + height: '250px' + }); + + /* Morris.js Charts */ + // Sales chart + var area = new Morris.Area({ + element : 'revenue-chart', + resize : true, + data : [ + { y: '2011 Q1', item1: 2666, item2: 2666 }, + { y: '2011 Q2', item1: 2778, item2: 2294 }, + { y: '2011 Q3', item1: 4912, item2: 1969 }, + { y: '2011 Q4', item1: 3767, item2: 3597 }, + { y: '2012 Q1', item1: 6810, item2: 1914 }, + { y: '2012 Q2', item1: 5670, item2: 4293 }, + { y: '2012 Q3', item1: 4820, item2: 3795 }, + { y: '2012 Q4', item1: 15073, item2: 5967 }, + { y: '2013 Q1', item1: 10687, item2: 4460 }, + { y: '2013 Q2', item1: 8432, item2: 5713 } + ], + xkey : 'y', + ykeys : ['item1', 'item2'], + labels : ['Item 1', 'Item 2'], + lineColors: ['#a0d0e0', '#3c8dbc'], + hideHover : 'auto' + }); + var line = new Morris.Line({ + element : 'line-chart', + resize : true, + data : [ + { y: '2011 Q1', item1: 2666 }, + { y: '2011 Q2', item1: 2778 }, + { y: '2011 Q3', item1: 4912 }, + { y: '2011 Q4', item1: 3767 }, + { y: '2012 Q1', item1: 6810 }, + { y: '2012 Q2', item1: 5670 }, + { y: '2012 Q3', item1: 4820 }, + { y: '2012 Q4', item1: 15073 }, + { y: '2013 Q1', item1: 10687 }, + { y: '2013 Q2', item1: 8432 } + ], + xkey : 'y', + ykeys : ['item1'], + labels : ['Item 1'], + lineColors : ['#efefef'], + lineWidth : 2, + hideHover : 'auto', + gridTextColor : '#fff', + gridStrokeWidth : 0.4, + pointSize : 4, + pointStrokeColors: ['#efefef'], + gridLineColor : '#efefef', + gridTextFamily : 'Open Sans', + gridTextSize : 10 + }); + + // Donut Chart + var donut = new Morris.Donut({ + element : 'sales-chart', + resize : true, + colors : ['#3c8dbc', '#f56954', '#00a65a'], + data : [ + { label: 'Download Sales', value: 12 }, + { label: 'In-Store Sales', value: 30 }, + { label: 'Mail-Order Sales', value: 20 } + ], + hideHover: 'auto' + }); + + // Fix for charts under tabs + $('.box ul.nav a').on('shown.bs.tab', function () { + area.redraw(); + donut.redraw(); + line.redraw(); + }); + + /* The todo list plugin */ + $('.todo-list').todoList({ + onCheck : function () { + window.console.log($(this), 'The element has been checked'); + }, + onUnCheck: function () { + window.console.log($(this), 'The element has been unchecked'); + } + }); + +}); diff --git a/src/main/webapp/static/img/green.png b/src/main/webapp/static/img/green.png new file mode 100644 index 0000000000000000000000000000000000000000..d1b9abde4342723f4e2c0dfac0c8673358dbe149 GIT binary patch literal 1885 zcmV-j2cr0iP)l=9A%sdbL`^V;2Z#`2B>05!frQT}yi{J)1c4gk z3z38veGnoK;73e|CIUsF2&jn&MnHi`OQD6*?#G>b%nWU5x4S#DJ9idpwvU~2&pG$E zckVs++;fLe#J~F1)fO zMgmt;C+F-+70X=;)ld^e{o>WJvdGwIB5p?`CW#>Sl9E+4W+Zx(Hxefg?uuh8R1kf+ z+J*vV+W9rn+IF+TjBr$mNGLXhO0rB+qPLB6_R)Rvu?!xkYcA@$T1~b29U70k^>Yx*9p^kgCb0%t2%C2J#JA1ukGd(W|%IE=1!SX`=ADIy5KuO;E9VD+cT|H8NtkNSvU4U3-fisNY~?T9~ySv zNdNyZFjKyNE%s1#-Po`kc@Xtp>1w-iap9i$VBdy;X*jyE?tbr*iw)1&mA5?oep^;B zPCg|jMvvC*m`x&Lvbf+wuLSriK*tsE1wsDcqm34kxa#a2oX;6DVj9kDtP3NM%L7b$ zCyz^;*BgfI2WlWdZd5$$-l!P><0PBL-!7{Oq&-XH0ARpC7n8k;m`{Y^+hCp7M)h{| zC%Fc|gt-z00pmFC!U4ZXurGxPXYdMj7fcgG(U0|5;DM-EMXZ3;MvmpDqFu^1vtWM0>_AfcdrZF+PHcVsMzyMuGg4L=wlRWn z3ZS}xc7A8b=L72SY%WLjc2k(~%U}+{5A+8=S0BN*t%t+64LXu zAc&zMa}C6^4DoRua5@#?RbqKcmk(Zggffc{#&t@V)1k0~fY}~SwlK>LAm~`?y?6{f z?*mi3S81?kDxM;WmMtXk5)jn`m`Gp-(G@U`gVcUzb<}rnGzz+}Qn4mqjedu&>h9zl z@^Y<|T_p@_0hp!&s3fL><})U@5V4zConzpLAf>IWES%iR*_ z-b6BNOCWjxz|3%=^l4`tv5nppLRqZKp1XJc82r{7JYFWlG@aj3{Rz0G-5^m^5sDmA!cj?$>vOt-Ib25bHktU9ftjA5WD?t zha|&w9-k1*(*S~`O1CrQj*OkOF^UZHZ2B{1oCV3ix!_^PCypUq@eIM-4j@Q+;3gRR z01Uf=!-SaxG!BDC_=s5sp74hsxB<|1M9aoh5FH|*Shc|2wouOqrLF~il`JzM&8LF93Soohu2W`dt29f<$9&Iv;WmXl-HlrD1pf8peF zyDe)RlNC?tvS{u=dnBz^UKh5q^|YYFul_ivbRj((*3u^oa=%*6#&c3+T-E))&g1No zuO_eGO22zl$PT>VS1FUR(q~dUeuC16b-c!CsGnk*827qV?&V&t=UQJSFGohw$GiRm X@zt literal 0 HcmV?d00001 diff --git a/src/main/webapp/static/img/orange.png b/src/main/webapp/static/img/orange.png new file mode 100644 index 0000000000000000000000000000000000000000..f6badb515f1c10157087f7ec8c2eae4f3cdb13d2 GIT binary patch literal 2240 zcmV;x2tW6UP)^B`+fKPxaXexga$tPgT)yxA%i#1$MpJG-=n3)5DXibS0TvyoZ8Yeg&a(}95D zT)(V7a>kWhC&0uj#OrHsI3QzDhyV)P`&_J`Ndcp~@Mv4vj)YzZT0Y>+Ax026v)=Q7`l5Zw|N>=m?mFjjb zFngEHoAO<9qtVlWKvo`nqbx9SJtf=O(P+KS3wgOyy`}Y>Q7c9py;@W}yl^e>SyUDQ zkv_-3?gH}*qD-|>&zMy+0!&nT9R4a~KL?1)t9#s134v_61l4}pe5h?~I-VZHZKEG~->*9<= zKLy+g%&T#dC%|q)y(elMR~va$U_Z3~f6+cF0jAzg*VxNY*$!M?o2KXN0QaM2GjM!z zd@77CIN=1C{a0PU;EWm0g?V9yP;NrxD}Wm_RdNX5BM2VC%M3f$dB)(NEPwW`1ekr@ z7dcP=CHM$TN=6?)bwZr`7tu$7Zf8oSVWj#eFgK(jO+^#=8QuNiHvG2PsRpDW z5_=S+(b@9=Dht!7mx?Cv`$b*nFQV&#txz>bNu^_TqR5!<--gaZv$e#3gS8y z7((>{JpDeQ=e}pg*idxO@{65jyqfRC_=~W^&m-9!qL+f+1F|ALsud~!SP0Xv#3vWV zF2|KT(T`=$@4qW0DMb(oZfFTFn9AGDQCc+=?~(6TWseB9ZTzKS4QBz2r_* zeiM%ueLwI3un^JL3G+*k?1T^TN9kmZV_*^h4j^)QA}Df<5|t0`0tQHOoZC>=rPx3g zSP*R_e~AsZ$GJ+7H~8L72)BY1edDVbyNu9_@|wv%2{4XLiC_WZJqTP`qT#E+EvOty zehaPyZzsb0D$YXmC?T5=^L$K~?76-Rd}w5x=-&zW62|;v@`w~T#HLga=NrA%jK2=_ zHjp_*afto|(d~rZAe!?q{(6w;&5zBa1`xfE(0c^YkjO-{-daSz3Ct=irGA8a3G+X7 zWo%?SX;gm$y^7zC@F&QBJkT0XX=ITz?%Dj zt4et6Mx$+j|6gaTq?Az{u3aa1a0SLLA+&!${MQnB_M?d04P07~A34c~vF2Vx$8Ri* z%AO`z4`$=pRYJt?c2u58*alq~a~+=kmC*Z}Gmw%5Z&e$9;ATtUg@QFlfp$a(vFyOp zAH_~lqINX78FWL5(|ifF_Y>+qJpb)@Vo?az7|4wv?ALLT2XhF`w}H=$lpT~a7`=-@{W)1rNmkYk2wPCf zosajTx*bm+JsXC@s}Z>$tFlrJM>3t+sB$~IIU8<|Q}0=4Fy1ygx#)cz*{IEqR|$DKpvAvE`3yybBHj4Exq z_A}=yy8yANwGSI^EE{r-jeN-#&>Kru$pJ#$>@=AhtLvy@c*BlQ;z)7_P%NcJ zXGK2-evb~nh_vLe_Hr<*Fnj?hHW!@4>NdnY?s|cY;y3pABsM4a`ONrp5N$^z-yk=p zC}u^sOMZpu-B?p|uWrpCjy-UTfob#+trte+f}L^xG47+su<<_W&oxhQq65Y|qK(06 z^r3#zGyHj!&mk-X6_8_y?n32f&JwmXK$SbxkAbPb6HcSz)X-FF1DTRlGc_=bmRhZG zCBw2D@ZxL#a}SMx%8rBL4dgh6H7iZ`Ca!);T3 zohSO}MN7-+v3HLqvVnKg7gLbj{7gzU=iL0TP8Abteu^ob6;G#+cl{rqhUku91ydgY O0000dAOf69m>6 zFB?gS(Ssp+Fe;H4vyrce*`Oy02Nk~}3oNrZ%Y1ZqJyW$ivh&&9)71l$OdqFTz4z)j z)vsQ^s%kngza!xIipVVw&6wSOZ7tZ*kK(oA}41(Tq$H}eDbOheE^Jr(IX@^ z)8BF+l@t`9LjR135flpyKLrant?7r;+imKfGNQ-L=JDsr89D^NS$$1|;hk&Juv7i9 z18TFL2engy+AGY^{*$>N(OUPL0>e8-2him#YQ|v8+Z5faG&YfmYBv%XejNhY(Lq>F zS5!mSRo-`t=$)9RH^NWvp~2{Qa`XD75Zu}s#}rXX9?l)P6gKXJ0@Ll0+r))hGgWOcJJ$@}aB03N7?pb5 zY@YU?oUZ)23JgCt+KnM+FeyK7NWD|;G##ACFZ8V%%*ziB8GlO_ZWnyrRh@uzXYMkr zIEm4s+-)9=YCQwytq}GP@p>N6x?2r4~I5Fh;xbfS5lg@FO`a1 z*T5t>6U7GufRBUhrxOLUV209QbTxm+$cn@Y*G9l-N1uSOzE2E}DzJ|oJ+D?D=D;Ks zbW1%j2j(LP>y^a7D8=(Zcn-{~YnMQ#(}@{028Pc-*y|GWQ%@AR9KC()@*J4mqbn0l z|4o5WGZa~OCJKgKNqZ*#A-!xmFt|KXV_w06W&du#Mh0ZvWk6436`AP^3QRIdU8QOE zPXic=*{PpF)}t|X1UFZ4hPOY^hjd?Wuyjlb>5YTv@pxM3Ly&kao{kW$b9RWfIZ36^szmX0uuRX)SpN0uYqt+r<*e7OQlhXJ~~Nkd0L*5)SLMr)SK zyTmW9TY;3YqP1*R+Pecxp96@xSeF6w1_=9)W-Ui*SCBsOj*(S~WxTb#VgF$OAB2X( z$N>B-gsp;iYp!CRTMtHeP2LWc`vAJHVNV$+AjB?!OicCRpv$ZUWIT zfK^~H2!H8972`9Ibv%4;3`$;CFb4Z!T$Kisbnx}vJ_xZEz-lmhK^(ZqSG%Jm!ITB@ zS$Ogo9LL!1sVaLq_$D=7GkQS&ZZNh0FuSpckpg2(wbVXRR7EuKz8F~F)XrDp-O`>Roaw=6v+N1tPeHinD#)3 zvD)_vJ%D|-#=TjPbz3aErN(8YO_Onky&nOJQxV(?vi8;Pq_-GMXR7Y8!CG)xG2GL3H6Eq+L3aFrU%7muA171!49nF3e*>U3TV7SNC&fds z>3r-*sdB+hgE6^8E4?QHjDe`h^gnbLeK1~tu)Yl4qLE;&C0Y%~v*tM6)rbm%FwDm6lH7k7$DL;ngT!~L) zUPGg8AjU_HF|QL=6trY{O zn@;CgPNPxN?x)*IeKUEGtE98-Pq{^aQa6vOH+VXSMFTSMwwkS4alCjTug-z=prG9O zgh72m`o(iuvCsH%o~SR?>Z2DIyRKB8J&LL(a_|i@(D_VCP;l;iSf??eL_fu}YBC>m os61$dH@cs6vAWE5JAJ(CKM#oo4iNOR2><{907*qoM6N<$g63p1ApigX literal 0 HcmV?d00001 diff --git a/src/main/webapp/static/js/comm.js b/src/main/webapp/static/js/comm.js index bee1d13..83cc9fa 100644 --- a/src/main/webapp/static/js/comm.js +++ b/src/main/webapp/static/js/comm.js @@ -389,3 +389,17 @@ $.ajaxSetup({ } } }); +//获取url上的参数 +function setSearchWhere(startDateId,endDateId){ + var params = window.location.search; + if(params != '') { + params = params.substring(1,params.length); + var paramArr = params.split("&"); + if (paramArr != '') { + var startDateTo = paramArr[0].split("=")[1]; + var endDateTo = paramArr[1].split("=")[1]; + $("#" + startDateId).val(startDateTo); + $("#" + endDateId).val(endDateTo); + } + } +} diff --git a/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js b/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js index f4c974f..b5cd5ae 100644 --- a/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js +++ b/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js @@ -581,7 +581,7 @@ function initTable2() { paginationShowPageGo: true, pageList: [10, 20, 50, 100], // 如果设置了分页,设置可供选择的页面数据条数。设置为All 则显示所有记录。 smartDisplay: false, - pageSize: 2, // 页面数据条数 + pageSize: 20, // 页面数据条数 pageNumber: 1, // 初始化加载第一页,默认第一页 sidePagination: 'server', // 设置为服务器端分页 客户端:client search: false, diff --git a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js index 360bbf5..f67af53 100644 --- a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js +++ b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js @@ -309,7 +309,7 @@ function initTable() { onLoadSuccess: function (result) { //加载成功时执行 $(".page-list").show(); tipLoad = 0; - reloadTableHeight("table"); + //reloadTableHeight("table"); }, onLoadError: function () { //加载失败时执行 tipLoad = 0; @@ -628,13 +628,13 @@ $(function () { //日期控件 var url = window.location.href; var index = url.substring(url.lastIndexOf('?') + 1).replace("num=", ""); - if (index != null && index != "" && index.indexOf("excel") != -1) { + /*if (index != null && index != "" && index.indexOf("excel") != -1) { $("#excelBtn").show(); $("#toolbar").show(); } else { $("#excelBtn").hide(); $(".columns-right").hide(); - } + }*/ if (index != null && index != "" && index.indexOf("upload") != -1) { $("#uploadBtn").show(); } else { diff --git a/src/main/webapp/static/js/menu.js b/src/main/webapp/static/js/menu.js index d31dfac..6a08fd8 100644 --- a/src/main/webapp/static/js/menu.js +++ b/src/main/webapp/static/js/menu.js @@ -4,6 +4,7 @@ var sysFlag = 'emr_medical_record'; var userId = $("#userId").val(); //默认菜单 var defaultUrl = ''; +//var defaultUrlReal = '/workHome/workHomeList'; var defaultUrlReal = '/beHosp/beHosps'; var sysULReal = ''; var defaultUrlMenuId = ''; diff --git a/src/main/webapp/static/js/statistics/scanCount.js b/src/main/webapp/static/js/statistics/scanCount.js index 7bb1081..58e6432 100644 --- a/src/main/webapp/static/js/statistics/scanCount.js +++ b/src/main/webapp/static/js/statistics/scanCount.js @@ -118,7 +118,7 @@ function initTable() { onLoadSuccess: function (result) { //加载成功时执行 $(".page-list").show(); tipLoad =0; - reloadTableHeight("table"); + //reloadTableHeight("table"); }, onLoadError: function () { //加载失败时执行 tipLoad = 0; diff --git a/src/main/webapp/static/js/statistics/statisticsCommom.js b/src/main/webapp/static/js/statistics/statisticsCommom.js index 38c9dff..3250fd8 100644 --- a/src/main/webapp/static/js/statistics/statisticsCommom.js +++ b/src/main/webapp/static/js/statistics/statisticsCommom.js @@ -87,13 +87,13 @@ function post(url, params) { //控制导出excel权限 var url = window.location.href; var index = url.substring(url.lastIndexOf('?') + 1).replace("num=", ""); -if (index != null && index != "" && index.indexOf("export") != -1) { +/*if (index != null && index != "" && index.indexOf("export") != -1) { $("#excelBtn").show(); $("#toolbar").show(); } else { $("#excelBtn").hide(); $(".columns-right").hide(); -} +}*/ //格式化百分比 function formatPercent(value){ if(value != null){ diff --git a/src/main/webapp/static/js/vCount/vCountList.js b/src/main/webapp/static/js/vCount/vCountList.js index 42128b2..98da5e4 100644 --- a/src/main/webapp/static/js/vCount/vCountList.js +++ b/src/main/webapp/static/js/vCount/vCountList.js @@ -2,18 +2,19 @@ var tipLoad = 1; //定义表格内容最大高度 var maxHeight = 0; $(function () { + initTable(); getDept(); //日期控件 initDateInput('startDate', 'endDate'); var url = window.location.href; var index = url.substring(url.lastIndexOf('?') + 1).replace("num=", ""); - if (index != null && index != "" && index.indexOf("excel") != -1) { + /* if (index != null && index != "" && index.indexOf("excel") != -1) { $("#excelBtn").show(); $("#toolbar").show(); } else { $("#excelBtn").hide(); $(".columns-right").hide(); - } + }*/ if (index != null && index != "" && index.indexOf("excel2") != -1) { $("#excelBtn2").show(); } else { @@ -782,8 +783,6 @@ $('#searchBtn').click(function () { } }); -initTable(); - //2.初始化select的change事件 $("#sel_exportoption").change(function () { $('#table').bootstrapTable('refreshOptions', { From de59011365132b90e7cfd3f076043fb19e64236c Mon Sep 17 00:00:00 2001 From: zengwh <81383286@qq.com> Date: Sun, 1 Aug 2021 18:28:20 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E6=8F=90=E4=BA=A4HIS=E5=8F=AC=E5=9B=9E?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E5=92=8C=E6=89=93=E5=8D=B0=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/beHospitaledController.java | 4 +- .../emr/controller/lastVerifyController.java | 4 +- src/main/java/com/emr/dao/TUuPrintMapper.java | 2 + .../com/emr/entity/Archive_Master_Vo.java | 4 ++ .../ipml/Archive_MasterServiceImpl.java | 45 ++++++++++++-- .../resources/mapper/Archive_MasterMapper.xml | 59 +++++++++++++++++-- src/main/resources/mapper/TUuPrintMapper.xml | 13 ++++ .../views/beHospitaledDir/beHospList.jsp | 12 +++- .../views/lastVerifyDir/lastVerifyList.jsp | 12 +++- .../webapp/static/js/beHospList/beHospList.js | 29 ++++++++- .../js/hospitalCommom/hospitalCommom.js | 2 +- .../js/lastVerifyList/lastVerifyList.js | 29 ++++++++- 12 files changed, 195 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/emr/controller/beHospitaledController.java b/src/main/java/com/emr/controller/beHospitaledController.java index 33ecb3b..bd15074 100644 --- a/src/main/java/com/emr/controller/beHospitaledController.java +++ b/src/main/java/com/emr/controller/beHospitaledController.java @@ -153,8 +153,8 @@ public class beHospitaledController { @ResponseBody @RequestMapping(value = "/exportExcel") public void exportExcel(HttpServletResponse response, HttpServletRequest request,Archive_Master_Vo archiveMasterVo,Integer isSearch){ - String tableThNames = "住院号,住院次数,名字,性别,出院科室,出院日期,主管医生,状态"; - String fieldCns = "inpNo,visitId,name,sex,deptName,dischargeDateTime,doctorInCharge,status"; + String tableThNames = "住院号,住院次数,名字,性别,出院科室,出院日期,主管医生,状态,是否完整,HIS召回状态,打印状态"; + String fieldCns = "inpNo,visitId,name,sex,deptName,dischargeDateTime,doctorInCharge,status,lockinfo,callBackStatus,printStatus"; //构造excel的数据 if(isSearch == 0){ archiveMasterVo.setStartDateTo(null); diff --git a/src/main/java/com/emr/controller/lastVerifyController.java b/src/main/java/com/emr/controller/lastVerifyController.java index b441f8c..514ef41 100644 --- a/src/main/java/com/emr/controller/lastVerifyController.java +++ b/src/main/java/com/emr/controller/lastVerifyController.java @@ -95,8 +95,8 @@ public class lastVerifyController { archiveMasterVo.setStartDateTo(null); archiveMasterVo.setEndDateTo(null); } - String tableThNames = "住院号,住院次数,名字,性别,出院科室,出院日期,主管医生,状态,纸质状态,纸质扫描"; - String fieldCns = "inpNo,visitId,name,sex,deptName,dischargeDateTime,doctorInCharge,status,remark,checkName"; + String tableThNames = "住院号,住院次数,名字,性别,出院科室,出院日期,主管医生,状态,纸质状态,纸质扫描,HIS召回状态,打印状态"; + String fieldCns = "inpNo,visitId,name,sex,deptName,dischargeDateTime,doctorInCharge,status,remark,checkName,callBackStatus,printStatus"; try { //构造excel的数据 List list = archiveMasterService.selectLastVerifyList(archiveMasterVo); diff --git a/src/main/java/com/emr/dao/TUuPrintMapper.java b/src/main/java/com/emr/dao/TUuPrintMapper.java index d7163d4..11a5b1d 100644 --- a/src/main/java/com/emr/dao/TUuPrintMapper.java +++ b/src/main/java/com/emr/dao/TUuPrintMapper.java @@ -15,4 +15,6 @@ public interface TUuPrintMapper { List getPrintCount(TUuPrintSearch record); List getPrintInfo(TUuPrintSearch record); + + List selectAllByPatientId(@Param("patientId") String patientId); } \ 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 fe36c75..23290d3 100644 --- a/src/main/java/com/emr/entity/Archive_Master_Vo.java +++ b/src/main/java/com/emr/entity/Archive_Master_Vo.java @@ -83,6 +83,10 @@ public class Archive_Master_Vo extends Archive_Master{ private String paperPosition4; private String lockInfo;//完整性描述 + + private String callBackStatus;//退回召回状态 + + private String printStatus;//打印状态 } 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 9882cc3..b7e05c0 100644 --- a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java @@ -56,6 +56,8 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { private Emr_DictionaryMapper dictionaryMapper; @Autowired private PaperPostionService paperPostionService; + @Autowired + private TUuPrintMapper tUuPrintMapper; /** * 在院列表 * */ @@ -218,6 +220,7 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { Emr_Dictionary dictionary = new Emr_Dictionary(); dictionary.setTypecode("dept_code"); List dictionaries = dictionaryMapper.dicByTypeCode(dictionary); + StringBuilder patientIdStr = new StringBuilder(); for (Archive_Master_Vo masterVo : list) { //科室名称编码转名称 deptNameCode2Name(dictionaries, masterVo); @@ -228,6 +231,23 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { }else if(status.equals(EnumVerify.DocState.CallBacked.getCode())){ masterVo.setStatus(EnumVerify.DocState.CallBacked.getName()); } + if(StringUtils.isNotBlank(patientIdStr)){ + patientIdStr.append(","); + } + masterVo.setPrintStatus("否"); + patientIdStr.append(masterVo.getPatientId()); + } + //设置打印状态 + List tUuPrints = tUuPrintMapper.selectAllByPatientId(patientIdStr.toString()); + if(!CollectionUtils.isEmpty(tUuPrints)){ + for (Archive_Master_Vo masterVo : list) { + for (TUuPrint tUuPrint : tUuPrints){ + if(tUuPrint.getPatientId().equals(masterVo.getPatientId())){ + masterVo.setPrintStatus("是"); + break; + } + } + } } } return list; @@ -270,9 +290,10 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { //组织完整性字段并完整的更新archive_master表的完整性字段值为完整LockInfo='完整' //updateMasterBySuccess(list); //转换科室与赋值超期天数 - selectByColumnChange(list); + String patientIds = selectByColumnChange(list); //根据状态code转换状态及判断显示按钮 if(null != list && !list.isEmpty()){ + List tUuPrints = tUuPrintMapper.selectAllByPatientId(patientIds); //查询流转角色集合 List flowRoles = flowRoleMapper.selectAll(); //计算属于哪种审核角色 @@ -297,6 +318,17 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { masterVo.setBtns(btns); } } + //定义打印状态 + String printStatus = "否"; + if(!CollectionUtils.isEmpty(tUuPrints)){ + for(TUuPrint tUuPrint : tUuPrints){ + if(tUuPrint.getPatientId().equals(masterVo.getPatientId())){ + printStatus = "是"; + break; + } + } + } + masterVo.setPrintStatus(printStatus); } } } @@ -346,11 +378,12 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { } /** - * 出院浏览转换科室中文、查询天数 + * 出院浏览转换科室中文、查询天数,赋值打印状态 * * @param list */ - private void selectByColumnChange(List list) { + private String selectByColumnChange(List list) { + StringBuilder patientIdStr = new StringBuilder(); if(!CollectionUtils.isEmpty(list)){ //查询科室集合 Emr_Dictionary dictionary = new Emr_Dictionary(); @@ -363,7 +396,6 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { }else{ selectDays = archiveMasterMapper.selectDaysByMasterIds(list); } - for (Archive_Master_Vo vo:list) { //科室名称编码转名称 deptNameCode2Name(dictionaries, vo); @@ -376,8 +408,13 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { } } } + if(StringUtils.isNotBlank(patientIdStr)){ + patientIdStr.append(","); + } + patientIdStr.append(vo.getPatientId()); } } + return patientIdStr.toString(); } /** diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index de1e727..2b4ae13 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -607,22 +607,52 @@ where user_name = #{userName} + + + (select distinct jzh from archive_other_ext where sysFlag = -300) + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp b/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp index 8c3dba3..0d87ecd 100644 --- a/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp +++ b/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp @@ -233,6 +233,14 @@ +
+ + +
@@ -839,7 +847,7 @@ - - + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp index 6e5c16d..c39dc8c 100644 --- a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp +++ b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp @@ -193,6 +193,14 @@ +
+ + +
@@ -671,8 +679,8 @@ - - + + \ No newline at end of file diff --git a/src/main/webapp/static/js/beHospList/beHospList.js b/src/main/webapp/static/js/beHospList/beHospList.js index 0dfb749..fcfc359 100644 --- a/src/main/webapp/static/js/beHospList/beHospList.js +++ b/src/main/webapp/static/js/beHospList/beHospList.js @@ -71,7 +71,8 @@ function initTable() { roles:$("#searchOperRole").val(), isSuccess:$("#isSuccessSearch").val(), infoId:$("#infoId").val(), - operRole:$("#checker").val() + operRole:$("#checker").val(), + callBackStatus:$("#callBackStatus").val() }; return temp; }, @@ -148,6 +149,32 @@ function initTable() { } } }, + { + title: 'HIS召回状态', + field: 'callBackStatus', + align: 'center', + valign: 'middle', + formatter:function(value, row){ + if(value == '是'){ + return ''; + }else{ + return ''; + } + } + }, + { + title: '打印状态', + field: 'printStatus', + align: 'center', + valign: 'middle', + formatter:function(value, row){ + if(value == '是'){ + return ''; + }else{ + return ''; + } + } + }, { title: "操作", align: 'left', diff --git a/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js b/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js index b5cd5ae..4eb18d8 100644 --- a/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js +++ b/src/main/webapp/static/js/hospitalCommom/hospitalCommom.js @@ -55,7 +55,7 @@ function loadDoctorInCharge(){ //判断是否需要选中 var flag = $("#flag").val(); var currentRole = $("#roleId").val(); - if(flag == 1 && currentRole == 1){ + if(currentRole == 1){ if($("#currentName").val() == name){ selected = 'selected'; } diff --git a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js index f67af53..cf94ef2 100644 --- a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js +++ b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js @@ -74,7 +74,8 @@ function initTable() { doctorInCharge:$("#doctorInCharge").val(), isSign:$("#isSign").val(), isSearch:$("#isSearch").val(), - checkName:$("#checkName").val() + checkName:$("#checkName").val(), + callBackStatus:$("#callBackStatus").val() }; return temp; }, @@ -186,6 +187,32 @@ function initTable() { return str; } }, + { + title: 'HIS召回状态', + field: 'callBackStatus', + align: 'center', + valign: 'middle', + formatter:function(value, row){ + if(value == '是'){ + return ''; + }else{ + return ''; + } + } + }, + { + title: '打印状态', + field: 'printStatus', + align: 'center', + valign: 'middle', + formatter:function(value, row){ + if(value == '是'){ + return ''; + }else{ + return ''; + } + } + }, { title: "操作", align: 'left', From 393d4b6da5b9d3e783e9255db702b91854b4ac8a Mon Sep 17 00:00:00 2001 From: zengwh <81383286@qq.com> Date: Tue, 3 Aug 2021 11:49:21 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E7=9C=8B=E6=9D=BF=E6=95=B0=E6=8D=AE=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/emr/service/ipml/WorkHomeService.java | 25 ++++++++++--------- .../resources/mapper/Archive_MasterMapper.xml | 11 ++++---- .../views/workHome/medicalRoomManage.jsp | 2 +- .../WEB-INF/views/workHome/workHomeList.jsp | 2 +- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/emr/service/ipml/WorkHomeService.java b/src/main/java/com/emr/service/ipml/WorkHomeService.java index bb9de81..e0383ac 100644 --- a/src/main/java/com/emr/service/ipml/WorkHomeService.java +++ b/src/main/java/com/emr/service/ipml/WorkHomeService.java @@ -76,11 +76,12 @@ public class WorkHomeService { //判断出科 String archivestate = archiveMaster.getArchivestate(); if(StringUtils.isNotBlank(archivestate)) { + String t1 = archiveMaster.getT1(); if ("64".equals(archivestate) || "128".equals(archivestate)) { sumbitCount++; } - //判断归档 - if ("128".equals(archivestate)) { + //判断归档 待终审且已签收+已归档 + if ("128".equals(archivestate) || ("64".equals(archivestate) && StringUtils.isNotBlank(t1) && !"1801-02-03".equals(t1.substring(0,10)))) { recordCount++; } } @@ -232,20 +233,20 @@ public class WorkHomeService { * @param endDateTo */ public Map medicalRoomManageData(String startDateTo, String endDateTo) throws Exception{ - //查询总数据 1.出院人数 2.待终审数量 3.已归档数量 4.已签收数量 5.已扫描数量 6.待终审已扫描 + //查询总数据 1.出院人数 2.待终审数量 3.已终审数量 4.已签收数量 5.已扫描数量 6.待终审已签收 List list = archiveMasterMapper.selectStatisticsCount(startDateTo, endDateTo); //组织返回数据 //定义出院人数 int disCount = 0; //定义待终审数量 int headNurseCount = 0; - //定义归档数量 + //定义归档数量 已终审+待终审已签收 int recordCount = 0; //定义签收数量 int signCount = 0; //已扫描数量 int isScanCount = 0; - //待终审未扫描数量 + //未扫描数量 int notScanCount = 0; //超期病历 int overTimeCount = 0; @@ -255,13 +256,13 @@ public class WorkHomeService { int recordRate = 0; //签收率 已签收/总出院人数 int signRate = 0; - //扫描率 + //扫描率 已扫描/已签收 int scanRate = 0; Map map = new HashMap<>(); if (!CollectionUtils.isEmpty(list)) { disCount = list.get(0); headNurseCount = list.get(1); - recordCount = list.get(2); + recordCount = list.get(2) + list.get(5); signCount = list.get(3); isScanCount = list.get(4); //待终审未扫描数量 = 待终审总数 - 已扫描 @@ -288,12 +289,12 @@ public class WorkHomeService { recordRate = recordCount * 100 / disCount; } map.put("recordRate",recordRate + "%"); - //终审数量 + //归档数量 map.put("recordCount", recordCount + ""); //待终审数量 map.put("headNurseCount", headNurseCount + ""); //出科数量 待终审数量+终审数量 - map.put("submitCount", (recordCount + headNurseCount) + ""); + map.put("submitCount", (list.get(2) + headNurseCount) + ""); //签收数量 map.put("signCount", signCount + ""); //待签收数量 总出院人数-已签收数量 @@ -309,11 +310,11 @@ public class WorkHomeService { map.put("reOverTimeCount",reOverTimeCount + ""); //已扫描数量 map.put("isScanCount",isScanCount + ""); - //待终审未扫描数量 - map.put("notScanCount",notScanCount + ""); + //未扫描数量 已签收-已扫描 + map.put("notScanCount",(signCount - isScanCount) + ""); //扫描率 if(disCount != 0){ - scanRate = (isScanCount * 100 / disCount); + scanRate = (isScanCount * 100 / signCount); } map.put("scanRate",scanRate + "%"); return map; diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index 2b4ae13..40978db 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -1466,9 +1466,9 @@ union all select COUNT(1) count from archive_master where ArchiveState = '64' - --3.已归档数量 + --3.已终审数量 union all - select COUNT(1) count from archive_master where (ArchiveState = '128' or (ArchiveState = '64' and T1 is not null and T1 != '' and T1 >= '1801-02-04')) + select COUNT(1) count from archive_master where ArchiveState = '128' --4.已签收数量 union all @@ -1479,11 +1479,10 @@ select count(MasterID) count from ( select distinct MasterID from archive_detail inner join archive_master on archive_detail.MasterID = archive_master.id where archive_detail.Source = '扫描上传' and flag = 0 ) temp - --6.待终审已扫描 + --6.待终审已签收 union all - select count(MasterID) count from ( select distinct MasterID from archive_detail - inner join archive_master on archive_detail.MasterID = archive_master.id - where ArchiveState = '64' and archive_detail.Source = '扫描上传' and flag = 0 ) temp + select COUNT(1) count from archive_master where ArchiveState = '64' and T1 is not null and T1 != '' and T1 >= '1801-02-04' + diff --git a/src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp b/src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp index 9bdcf36..ca1892a 100644 --- a/src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp +++ b/src/main/webapp/WEB-INF/views/workHome/medicalRoomManage.jsp @@ -69,7 +69,7 @@
0
-
终审数量
+
归档数量
diff --git a/src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp b/src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp index 6adcbff..1d84849 100644 --- a/src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp +++ b/src/main/webapp/WEB-INF/views/workHome/workHomeList.jsp @@ -31,7 +31,7 @@
-
+
Date: Tue, 3 Aug 2021 16:42:01 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=BD=92=E6=A1=A3?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/emr/controller/RecordController.java | 2 +- .../com/emr/service/ipml/RecordService.java | 2 +- .../emr/service/ipml/V_CountServiceImpl.java | 9 ++- .../com/emr/service/ipml/WorkHomeService.java | 79 ++++++++++++++++--- .../resources/mapper/Archive_MasterMapper.xml | 37 ++++++--- src/main/resources/mapper/V_CountMapper.xml | 24 ++---- .../WEB-INF/views/workHome/recordData.jsp | 9 ++- 7 files changed, 118 insertions(+), 44 deletions(-) diff --git a/src/main/java/com/emr/controller/RecordController.java b/src/main/java/com/emr/controller/RecordController.java index 4da5f9f..ab2cfae 100644 --- a/src/main/java/com/emr/controller/RecordController.java +++ b/src/main/java/com/emr/controller/RecordController.java @@ -70,7 +70,7 @@ public class RecordController { } } offsetLimitPage.setRows(list); - request.getSession().removeAttribute("unSubmitRecords"); + //request.getSession().removeAttribute("unSubmitRecords"); return offsetLimitPage; } diff --git a/src/main/java/com/emr/service/ipml/RecordService.java b/src/main/java/com/emr/service/ipml/RecordService.java index 2fcc64b..5015ee9 100644 --- a/src/main/java/com/emr/service/ipml/RecordService.java +++ b/src/main/java/com/emr/service/ipml/RecordService.java @@ -64,7 +64,7 @@ public class RecordService { //填充各个角色数据、主要填充已提交的 selectList(unSubmitRecords); } - request.getSession().setAttribute("unSubmitRecords",unSubmitRecords); + //request.getSession().setAttribute("unSubmitRecords",unSubmitRecords); return unSubmitRecords; } diff --git a/src/main/java/com/emr/service/ipml/V_CountServiceImpl.java b/src/main/java/com/emr/service/ipml/V_CountServiceImpl.java index b9b93db..400091f 100644 --- a/src/main/java/com/emr/service/ipml/V_CountServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/V_CountServiceImpl.java @@ -12,6 +12,7 @@ import com.emr.service.V_CountService; import com.emr.vo.V_CountVo; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; +import org.apache.shiro.util.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -24,7 +25,13 @@ public class V_CountServiceImpl implements V_CountService { @Override public List selectByCol(V_CountVo record) { - return vCountMapper.selectByCol(record); + List counts = vCountMapper.selectByCol(record); + if(!CollectionUtils.isEmpty(counts)){ + for(V_Count count :counts){ + count.setUnfileNum(count.getOutNum() - count.getFileNum()); + } + } + return counts; } @Override diff --git a/src/main/java/com/emr/service/ipml/WorkHomeService.java b/src/main/java/com/emr/service/ipml/WorkHomeService.java index e0383ac..63342c9 100644 --- a/src/main/java/com/emr/service/ipml/WorkHomeService.java +++ b/src/main/java/com/emr/service/ipml/WorkHomeService.java @@ -11,6 +11,7 @@ import org.apache.shiro.util.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.*; @@ -137,6 +138,8 @@ public class WorkHomeService { int admissCount = 0; //定义归档数量 int recordCount = 0; + //定义出科数量 + int sumbitCount = 0; if(!CollectionUtils.isEmpty(list)){ for(Archive_Master archiveMaster : list){ if(StringUtils.isNotBlank(archiveMaster.getDeptName()) && archiveMaster.getDeptName().equals(deptName)){ @@ -147,21 +150,23 @@ public class WorkHomeService { }else{ admissCount++; } - //判断出科 String archivestate = archiveMaster.getArchivestate(); - //判断归档 - if ("128".equals(archivestate)) { + String t1 = archiveMaster.getT1(); + //判断归档 待终审且已签收+已终审 + if ("128".equals(archivestate) || ("64".equals(archivestate) && StringUtils.isNotBlank(t1) && !"1801-02-03".equals(t1.substring(0,10)))) { recordCount++; } + //判断出科 + if ("128".equals(archivestate) || "64".equals(archivestate)) { + sumbitCount++; + } } } } vo.setDisCount(disCount); vo.setRecordCount(recordCount); vo.setAdmissCount(admissCount); - if(disCount != 0) { - vo.setRecordRate((recordCount * 100 / disCount) + "%"); - } + vo.setSumbitCount(sumbitCount); //转换科室 for (Emr_Dictionary dictionaryTemp : dictionaries) { String name = dictionaryTemp.getName(); @@ -246,8 +251,6 @@ public class WorkHomeService { int signCount = 0; //已扫描数量 int isScanCount = 0; - //未扫描数量 - int notScanCount = 0; //超期病历 int overTimeCount = 0; //预超期病历 @@ -265,8 +268,6 @@ public class WorkHomeService { recordCount = list.get(2) + list.get(5); signCount = list.get(3); isScanCount = list.get(4); - //待终审未扫描数量 = 待终审总数 - 已扫描 - notScanCount = headNurseCount - list.get(5); //查询超期参数 EmrOvertimeSet overtimeSet = overtimeSetService.selectByPrimaryKey(1); //获取未超期列表 @@ -281,7 +282,7 @@ public class WorkHomeService { String reDeadDate = unHolidays.get(overtimeSet.getDeadDays() - overtimeSet.getSurplusDays()).getDate(); //查询超期与预超期数量集合 1.超期数量 2.预超期数量 List overTimeAndReOverTimeCountList = archiveMasterMapper.overTimeAndReOverTimeCount(date,deadDate,reDate,reDeadDate,startDateTo, endDateTo); - overTimeCount = overTimeAndReOverTimeCountList.get(0); + overTimeCount = getOverTimeCount(startDateTo,endDateTo); reOverTimeCount = overTimeAndReOverTimeCountList.get(1); } //归档率 归档数量/出院人数 @@ -313,12 +314,66 @@ public class WorkHomeService { //未扫描数量 已签收-已扫描 map.put("notScanCount",(signCount - isScanCount) + ""); //扫描率 - if(disCount != 0){ + if(disCount != 0 && signCount != 0){ scanRate = (isScanCount * 100 / signCount); } map.put("scanRate",scanRate + "%"); return map; } + + private int getOverTimeCount(String startDateTo, String endDateTo) throws Exception{ + RecordSearch recordSearch = new RecordSearch(); + recordSearch.setStartDate(startDateTo); + recordSearch.setEndDate(endDateTo); + int count = 0; + List unSubmitRecords = recordMapper.selectUnCountGroupDept(recordSearch); + if (!CollectionUtils.isEmpty(unSubmitRecords)) { + unSubmitRecords = selectOvertimeRecord(unSubmitRecords); + if(!CollectionUtils.isEmpty(unSubmitRecords)){ + count = unSubmitRecords.size(); + } + } + return count; + } + + /** + * 过滤未过期的 + * @param unSubmitRecords + * @return + */ + private List selectOvertimeRecord(List unSubmitRecords) throws Exception{ + //查询超期参数 + EmrOvertimeSet overtimeSet = overtimeSetService.selectByPrimaryKey(1); + //获取未超期列表 + List unHolidays = holidaySetMapper.selectNotHolidayList(); + Iterator iterator = unSubmitRecords.iterator(); + //获取非死亡工作日 + String date = unHolidays.get(overtimeSet.getDays()).getDate(); + //获取非死亡工作日 + String deadDate = unHolidays.get(overtimeSet.getDeadDays()).getDate(); + //定义格式化日期 + SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); + while (iterator.hasNext()) { + SubmitRecord record = (SubmitRecord) iterator.next(); + //获取是否死亡 + String dischargeDisposition = record.getDischargeDisposition(); + String dischargeDateTime = record.getDischargeDateTime(); + long time = fmt.parse(dischargeDateTime).getTime(); + if(StringUtils.isNotBlank(dischargeDisposition) && "5".equals(dischargeDisposition)){ + //死亡 + if(time >= fmt.parse(deadDate).getTime()){ + iterator.remove(); + } + }else{ + //非死亡 + if(time >= fmt.parse(date).getTime()){ + iterator.remove(); + } + } + } + return unSubmitRecords; + } + /* public Map medicalRoomManageData(String startDateTo, String endDateTo) throws Exception{ //查询总数据 diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index 40978db..d3567fe 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -1424,18 +1424,37 @@ diff --git a/src/main/resources/mapper/V_CountMapper.xml b/src/main/resources/mapper/V_CountMapper.xml index e7240a6..3ab20b4 100644 --- a/src/main/resources/mapper/V_CountMapper.xml +++ b/src/main/resources/mapper/V_CountMapper.xml @@ -18,12 +18,12 @@ - deptCode, deptName, inNum, outNum, fileNum, unfileNum, deathNum, fileRate, + deptCode, deptName, inNum, outNum, fileNum, deathNum, fileRate, day2Rate, day3Rate, day7Rate select * from ( @@ -622,9 +625,16 @@ '是' ELSE '否' - END callBackStatus + END callBackStatus, + CASE + WHEN printInfoTable.patient_id IS NOT NULL THEN + '是' + ELSE + '否' + END printStatus from archive_master LEFT JOIN archive_other_ext ON archive_master.patient_id = archive_other_ext.jzh + LEFT JOIN printInfoTable ON printInfoTable.patient_id = archive_master.patient_id @@ -636,6 +646,16 @@ + + + + AND printInfoTable.patient_id is not null + + + AND printInfoTable.patient_id is null + + + UNION ALL SELECT @@ -687,12 +707,19 @@ '是' ELSE '否' - END callBackStatus + END callBackStatus, + CASE + WHEN printInfoTable.patient_id IS NOT NULL THEN + '是' + ELSE + '否' + END printStatus from archive_master m LEFT JOIN archive_other_ext ON m.patient_id = archive_other_ext.jzh LEFT JOIN ( SELECT MasterID FROM archive_detail WHERE Source = '扫描上传' AND archive_detail.flag = '0' GROUP BY MasterID ) archive_detail ON m.id = archive_detail.MasterID + LEFT JOIN printInfoTable ON printInfoTable.patient_id = m.patient_id where 1=1 and ArchiveState in ('64','1024') @@ -704,6 +731,16 @@ + + + + AND printInfoTable.patient_id is not null + + + AND printInfoTable.patient_id is null + + + AND MasterID IS diff --git a/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp b/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp index 0d87ecd..e21a353 100644 --- a/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp +++ b/src/main/webapp/WEB-INF/views/beHospitaledDir/beHospList.jsp @@ -241,6 +241,14 @@
+
+ + +
@@ -847,7 +855,7 @@
- + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp index c39dc8c..0bd9f57 100644 --- a/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp +++ b/src/main/webapp/WEB-INF/views/lastVerifyDir/lastVerifyList.jsp @@ -201,6 +201,14 @@
+
+ + +
@@ -679,7 +687,7 @@
- + diff --git a/src/main/webapp/static/js/beHospList/beHospList.js b/src/main/webapp/static/js/beHospList/beHospList.js index fcfc359..ead942c 100644 --- a/src/main/webapp/static/js/beHospList/beHospList.js +++ b/src/main/webapp/static/js/beHospList/beHospList.js @@ -72,7 +72,8 @@ function initTable() { isSuccess:$("#isSuccessSearch").val(), infoId:$("#infoId").val(), operRole:$("#checker").val(), - callBackStatus:$("#callBackStatus").val() + callBackStatus:$("#callBackStatus").val(), + printStatus:$("#printStatus").val() }; return temp; }, diff --git a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js index cf94ef2..c609946 100644 --- a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js +++ b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js @@ -75,7 +75,8 @@ function initTable() { isSign:$("#isSign").val(), isSearch:$("#isSearch").val(), checkName:$("#checkName").val(), - callBackStatus:$("#callBackStatus").val() + callBackStatus:$("#callBackStatus").val(), + printStatus:$("#printStatus").val() }; return temp; }, From 8cda09f0c770beed467c0d8bdfd996ec475af1b2 Mon Sep 17 00:00:00 2001 From: zengwh <81383286@qq.com> Date: Thu, 5 Aug 2021 08:35:10 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=87=BA=E9=99=A2?= =?UTF-8?q?=E6=B5=8F=E8=A7=88=E9=9D=9E=E7=AE=A1=E7=90=86=E5=91=98=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E7=BC=BA=E9=99=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mapper/Archive_MasterMapper.xml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index ac513ca..cc36571 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -665,13 +665,20 @@ '是' ELSE '否' - END callBackStatus + END callBackStatus, + CASE + WHEN printInfoTable.patient_id IS NOT NULL THEN + '是' + ELSE + '否' + END printStatus from archive_transfer_dept_user inner join archive_master on archive_master.id = archive_transfer_dept_user.master_id + LEFT JOIN printInfoTable ON printInfoTable.patient_id = archive_master.patient_id LEFT JOIN archive_other_ext ON archive_master.patient_id = archive_other_ext.jzh where user_name = #{userName} From cd8861eaf0d13577d6ed9eb994f56306c33aaf6a Mon Sep 17 00:00:00 2001 From: zengwh <81383286@qq.com> Date: Thu, 5 Aug 2021 09:57:50 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9mybatis=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mapper/Archive_MasterMapper.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index cc36571..8047e8b 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -636,7 +636,7 @@ LEFT JOIN archive_other_ext ON archive_master.patient_id = archive_other_ext.jzh LEFT JOIN printInfoTable ON printInfoTable.patient_id = archive_master.patient_id - + AND jzh is not null @@ -728,7 +728,7 @@ LEFT JOIN ( SELECT MasterID FROM archive_detail WHERE Source = '扫描上传' AND archive_detail.flag = '0' GROUP BY MasterID ) archive_detail ON m.id = archive_detail.MasterID LEFT JOIN printInfoTable ON printInfoTable.patient_id = m.patient_id where 1=1 and ArchiveState in ('64','1024') - + AND jzh is not null