diff --git a/src/main/java/com/emr/controller/FontController.java b/src/main/java/com/emr/controller/FontController.java index 422fd42..de823d9 100644 --- a/src/main/java/com/emr/controller/FontController.java +++ b/src/main/java/com/emr/controller/FontController.java @@ -214,7 +214,7 @@ public class FontController { Object localObject2 = null; URL paramURL = Utilities.toURL(filePath); try { - if (paramURL.getProtocol().equals("file")) { + if ("file".equals(paramURL.getProtocol())) { localObject2 = paramURL.getFile(); localObject2 = Utilities .unEscapeURL((String) localObject2); @@ -233,12 +233,14 @@ public class FontController { image = (Image) localObject2; } } - if (localObject1 != null) + if (localObject1 != null) { ((RandomAccessFileOrArray) localObject1).close(); + } } finally { - if (localObject1 != null) + if (localObject1 != null) { ((RandomAccessFileOrArray) localObject1).close(); + } } } else if (file1.getName().endsWith(".png") || file1.getName().endsWith(".jpg") @@ -343,7 +345,7 @@ public class FontController { Object localObject2 = null; URL paramURL = Utilities.toURL(filePath); try { - if (paramURL.getProtocol().equals("file")) { + if ("file".equals(paramURL.getProtocol())) { localObject2 = paramURL.getFile(); localObject2 = Utilities .unEscapeURL((String) localObject2); @@ -362,12 +364,14 @@ public class FontController { image = (Image) localObject2; } } - if (localObject1 != null) + if (localObject1 != null) { ((RandomAccessFileOrArray) localObject1).close(); + } } finally { - if (localObject1 != null) + if (localObject1 != null) { ((RandomAccessFileOrArray) localObject1).close(); + } } } else if (file1.getName().endsWith(".png") || file1.getName().endsWith(".jpg") @@ -423,9 +427,6 @@ public class FontController { BeanUtils.copyProperties(scanAssortVos.get(j), vo1); scanAssortVos1.add(vo1); } -// if (imgIsexist == 0) { -// return Msg.fail("图片不存在!"); -// } } else { return Msg.fail("查询无该记录!"); } diff --git a/src/main/java/com/emr/controller/emrLock/EmrLockController.java b/src/main/java/com/emr/controller/emrLock/EmrLockController.java index d0f744c..f24aafc 100644 --- a/src/main/java/com/emr/controller/emrLock/EmrLockController.java +++ b/src/main/java/com/emr/controller/emrLock/EmrLockController.java @@ -1,9 +1,15 @@ package com.emr.controller.emrLock; -import com.emr.annotation.OptionalLog; import com.emr.dao.recordLock.Emr_LockMapper; import com.emr.entity.recordLock.Emr_Lock; +import com.emr.service.emrLock.EmrLockServiceImpl; +import com.emr.vo.EmrLockVo; +import com.emr.vo.EmrPrintOrDownLoadInfo.EmrPrintOrDownLoadInfoVo; +import com.emr.vo.FontVo.LockVo; import com.fasterxml.jackson.databind.ObjectMapper; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -27,7 +33,56 @@ import java.util.List; @RequestMapping("emrLock/") public class EmrLockController { @Autowired - Emr_LockMapper lockMapper; + private EmrLockServiceImpl emrLockService; + /** + * @MethodName lockList + * @Description: 跳转到锁定管理页面 + * @Param 无 + * @Returnt + * @Author: 曾文和 + * @CreateDate: 2020-04-14 + * @UpdateUser: 曾文和 + * @UpdateDate: 2020-04-14 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ + @RequestMapping("lockList") + public String lockList(){ + return "otherManage/lockList"; + } + + /** + * @ProjectName:getLockList + * @Description:查询锁定记录 + * @Param + * @Return + * @Author: 曾文和 + * @CreateDate: 2020-04-14 + * @UpdateUser: 曾文和 + * @UpdateDate: 2020-04-14 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ + @RequiresPermissions("/emrLock/select") + @RequestMapping("getLockList") + @ResponseBody + public String getLockList(Integer page, Integer limit, EmrLockVo lockVo){ + try{ + if(null != page && null != limit){ + PageHelper.startPage(page, limit); + } + //查询 + List list = emrLockService.getLockList(lockVo); + PageInfo pageInfo = new PageInfo<>(list); + ObjectMapper mapper = new ObjectMapper(); + String json = mapper.writeValueAsString(pageInfo); + return json; + }catch (Exception e){ + e.printStackTrace(); + return null; + } + } + /** * @MethodName getLoctPatientIds * @Description: 获取被锁定了的patientId集合 @@ -45,7 +100,8 @@ public class EmrLockController { public String getLoctPatientIds(){ //锁定的集合 try { - List emr_locks = lockMapper.selectLockListByStatus(1); + Integer status = 1; + List emr_locks = emrLockService.selectLockListByStatus(status); if(null != emr_locks && !emr_locks.isEmpty()){ String locks = ""; for (int i = 0; i < emr_locks.size(); i++) { diff --git a/src/main/java/com/emr/controller/templateSearch/TemplateSearchController.java b/src/main/java/com/emr/controller/templateSearch/TemplateSearchController.java index ea7c2f5..169b120 100644 --- a/src/main/java/com/emr/controller/templateSearch/TemplateSearchController.java +++ b/src/main/java/com/emr/controller/templateSearch/TemplateSearchController.java @@ -24,7 +24,7 @@ import com.emr.entity.templateSearch.Emr_Modle; import com.emr.entity.templateSearch.Emr_Modle_Check; import com.emr.service.CommomService; import com.emr.service.emrFunGroupDistribution.FunGroupDistributionService; -import com.emr.service.emrLock.EmrLockService; +import com.emr.service.emrLock.EmrLockServiceImpl; import com.emr.service.emrPrintOrDownLoadInfo.PrintOrDownLoadInfoService; import com.emr.service.templateSearch.TemplateSearchService; import com.emr.util.*; @@ -84,7 +84,7 @@ public class TemplateSearchController { @Autowired private ScanPathMapper scanPathMapper; @Autowired - private EmrLockService lockService; + private EmrLockServiceImpl lockService; @Autowired private Emr_LockMapper lockMapper; @Autowired @@ -573,11 +573,11 @@ public class TemplateSearchController { Power_User user = (Power_User)request.getSession().getAttribute("CURRENT_USER"); String creater = user.getUserId().toString(); Emr_Modle emr_modle = emrModleMapper.checkModleFlag(creater, modle.getModleFlag()); - if(null != emr_modle && emr_modle.getId() != modle.getId()){ + if(null != emr_modle && !emr_modle.getId().equals(modle.getId())){ return ResultUtil.error("该模板标志已存在!"); } Emr_Modle emr_modle1 = emrModleMapper.checkModleName(creater, modle.getModleName()); - if(null != emr_modle1 && emr_modle1.getId() != modle.getId()){ + if(null != emr_modle1 && !emr_modle1.getId().equals(modle.getId())){ return ResultUtil.error("该模板名称已存在!"); } templateSearchService.updateTemplateSelect(modle, selectFlagId,request); diff --git a/src/main/java/com/emr/dao/recordLock/Emr_LockMapper.java b/src/main/java/com/emr/dao/recordLock/Emr_LockMapper.java index 40512b4..b18e01a 100644 --- a/src/main/java/com/emr/dao/recordLock/Emr_LockMapper.java +++ b/src/main/java/com/emr/dao/recordLock/Emr_LockMapper.java @@ -1,6 +1,7 @@ package com.emr.dao.recordLock; import com.emr.entity.recordLock.Emr_Lock; +import com.emr.vo.EmrLockVo; import com.emr.vo.FontVo.LockVo; import com.emr.vo.commomSearch.CommomVo; import org.apache.ibatis.annotations.Param; @@ -25,4 +26,6 @@ public interface Emr_LockMapper { int udpateLockByPatientIds(@Param("list") List list,@Param("record") Emr_Lock record); int SimpleInsert(@Param("list") List list); + + List getLockList(EmrLockVo record); } \ No newline at end of file diff --git a/src/main/java/com/emr/service/emrLock/EmrLockService.java b/src/main/java/com/emr/service/emrLock/EmrLockService.java deleted file mode 100644 index 2895b96..0000000 --- a/src/main/java/com/emr/service/emrLock/EmrLockService.java +++ /dev/null @@ -1,20 +0,0 @@ - -package com.emr.service.emrLock; - -import com.emr.entity.recordLock.Emr_Lock; -import com.emr.vo.commomSearch.CommomVo; -import org.apache.ibatis.annotations.Param; - -import javax.servlet.http.HttpServletRequest; -import java.util.List; - -public interface EmrLockService { - void insert(List commomtables, HttpServletRequest request); - - void udpate(Emr_Lock lock,HttpServletRequest request); - - List selectLockListByStatus(Integer lockStatus); - - void udpateUnlockByPatients(String patientIds,HttpServletRequest request); -} - diff --git a/src/main/java/com/emr/service/emrLock/EmrLockServiceImpl.java b/src/main/java/com/emr/service/emrLock/EmrLockServiceImpl.java index d020111..53b5a9d 100644 --- a/src/main/java/com/emr/service/emrLock/EmrLockServiceImpl.java +++ b/src/main/java/com/emr/service/emrLock/EmrLockServiceImpl.java @@ -4,6 +4,8 @@ import com.emr.dao.CommomMapper; import com.emr.dao.recordLock.Emr_LockMapper; import com.emr.entity.Power_User; import com.emr.entity.recordLock.Emr_Lock; +import com.emr.vo.EmrLockVo; +import com.emr.vo.FontVo.LockVo; import com.emr.vo.commomSearch.CommomVo; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -18,12 +20,12 @@ import java.util.List; @Service @Transactional -public class EmrLockServiceImpl implements EmrLockService{ +public class EmrLockServiceImpl{ @Autowired private Emr_LockMapper lockMapper; @Autowired private CommomMapper commomMapper; - @Override + public void insert(List commomtables, HttpServletRequest request) { Power_User user = (Power_User)request.getSession().getAttribute("CURRENT_USER"); Integer userId = user.getUserId(); @@ -77,7 +79,6 @@ public class EmrLockServiceImpl implements EmrLockService{ } } - @Override public void udpate(Emr_Lock lock,HttpServletRequest request) { Power_User user = (Power_User)request.getSession().getAttribute("CURRENT_USER"); SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); @@ -93,12 +94,10 @@ public class EmrLockServiceImpl implements EmrLockService{ lockMapper.updateByPrimaryKeySelective(lock); } - @Override public List selectLockListByStatus(Integer lockStatus) { return lockMapper.selectLockListByStatus(lockStatus); } - @Override public void udpateUnlockByPatients(String patientIds,HttpServletRequest request) { Power_User user = (Power_User)request.getSession().getAttribute("CURRENT_USER"); String userName = user.getUserName(); @@ -106,4 +105,10 @@ public class EmrLockServiceImpl implements EmrLockService{ String unlockeTime = fmt.format(new Date()); lockMapper.udpateUnlockByPatients(patientIds,userName,unlockeTime); } + + + public List getLockList(EmrLockVo lockVo){ + List lockVos = lockMapper.getLockList(lockVo); + return lockVos; + } } diff --git a/src/main/java/com/emr/vo/EmrLockVo.java b/src/main/java/com/emr/vo/EmrLockVo.java new file mode 100644 index 0000000..c0a6556 --- /dev/null +++ b/src/main/java/com/emr/vo/EmrLockVo.java @@ -0,0 +1,29 @@ +package com.emr.vo; + +import com.emr.entity.recordLock.Emr_Lock; +import lombok.Data; + +/** + * @ProjectName: + * @Description: + * @Param 传输参数 + * @Return + * @Author: 曾文和 + * @CreateDate: 2020/4/14 10:34 + * @UpdateUser: 曾文和 + * @UpdateDate: 2020/4/14 10:34 + * @UpdateRemark: 更新说明 + * @Version: 1.0 + */ +@Data +public class EmrLockVo extends Emr_Lock { + private String name; + + private String startTime1; + + private String endTime1; + + private String startTime2; + + private String endTime2; +} diff --git a/src/main/resources/mapper/recordLock/Emr_LockMapper.xml b/src/main/resources/mapper/recordLock/Emr_LockMapper.xml index 75b560f..d5f1639 100644 --- a/src/main/resources/mapper/recordLock/Emr_LockMapper.xml +++ b/src/main/resources/mapper/recordLock/Emr_LockMapper.xml @@ -1,140 +1,81 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into emr_lock (user_id, patient_id, - admiss_times, inpatient_no, lock_state, - locker, locke_time, unlocker, + admiss_times, inpatient_no, lock_state, + locker, locke_time, unlocker, unlocke_time, remarke) values (#{userId,jdbcType=INTEGER}, #{patientId,jdbcType=NVARCHAR}, - #{admissTimes,jdbcType=NCHAR}, #{inpatientNo,jdbcType=NCHAR}, #{lockState,jdbcType=INTEGER}, - #{locker,jdbcType=NVARCHAR}, #{lockeTime,jdbcType=NCHAR}, #{unlocker,jdbcType=NVARCHAR}, + #{admissTimes,jdbcType=NCHAR}, #{inpatientNo,jdbcType=NCHAR}, #{lockState,jdbcType=INTEGER}, + #{locker,jdbcType=NVARCHAR}, #{lockeTime,jdbcType=NCHAR}, #{unlocker,jdbcType=NVARCHAR}, #{unlockeTime,jdbcType=NCHAR}, #{remarke,jdbcType=NVARCHAR}) - - insert into emr_lock - - - id, - - - user_id, - - - patient_id, - - - admiss_times, - - - inpatient_no, - - - lock_state, - - - locker, - - - locke_time, - - - unlocker, - - - unlocke_time, - - - remarke, - - - - - #{id,jdbcType=INTEGER}, - - - #{userId,jdbcType=INTEGER}, - - - #{patientId,jdbcType=NVARCHAR}, - - - #{admissTimes,jdbcType=NCHAR}, - - - #{inpatientNo,jdbcType=NCHAR}, - - - #{lockState,jdbcType=INTEGER}, - - - #{locker,jdbcType=NVARCHAR}, - - - #{lockeTime,jdbcType=NCHAR}, - - - #{unlocker,jdbcType=NVARCHAR}, - - - #{unlockeTime,jdbcType=NCHAR}, - - - #{remarke,jdbcType=NVARCHAR}, - - - - - update emr_lock - - - user_id = #{userId,jdbcType=INTEGER}, - - - patient_id = #{patientId,jdbcType=NVARCHAR}, - - - admiss_times = #{admissTimes,jdbcType=NCHAR}, - - - inpatient_no = #{inpatientNo,jdbcType=NCHAR}, - - - lock_state = #{lockState,jdbcType=INTEGER}, - - - locker = #{locker,jdbcType=NVARCHAR}, - - - locke_time = #{lockeTime,jdbcType=NCHAR}, - - - unlocker = #{unlocker,jdbcType=NVARCHAR}, - - - unlocke_time = #{unlockeTime,jdbcType=NCHAR}, - - - remarke = #{remarke,jdbcType=NVARCHAR}, - - - where id = #{id,jdbcType=INTEGER} - - - SELECT patient_id FROM @@ -142,22 +83,22 @@ WHERE lock_state = ${lockStatus} - - + SELECT * - FROM + FROM emr_lock - - patient_id = #{patientId} - - AND lock_state = #{lockStatus} - - - + + patient_id = #{patientId} + + AND lock_state = #{lockStatus} + + + - - + + UPDATE emr_lock SET @@ -167,24 +108,24 @@ WHERE patient_id IN (${patientIds}) - - - UPDATE + + + UPDATE emr_lock - SET + SET lock_state = 1, user_id = #{record.userId}, locker=#{record.locker}, locke_time=#{record.lockeTime} - WHERE + WHERE patient_id IN - - #{item.patientId} - - - - + SELECT emr_lock.id, emr_lock.user_id, emr_lock.patient_id, @@ -197,51 +138,94 @@ emr_lock.unlocker, emr_lock.unlocke_time, emr_lock.remarke - FROM + FROM emr_lock - LEFT JOIN - commomtable - ON + LEFT JOIN + commomtable + ON emr_lock.patient_id = commomtable.patient_id - AND + AND emr_lock.admiss_times = commomtable.admiss_times - - emr_lock.lock_state = 1 - - AND emr_lock.patient_id = #{patientId} - - - AND commomtable.admiss_id = #{admissId} - - - AND emr_lock.admiss_times = #{admissTimes} - - - - + + emr_lock.lock_state = 1 + + AND emr_lock.patient_id = #{patientId} + + + AND commomtable.admiss_id = #{admissId} + + + AND emr_lock.admiss_times = #{admissTimes} + + + + INSERT INTO emr_lock( user_id, patient_id,admiss_times, inpatient_no, lock_state,locker, locke_time, unlocker, unlocke_time, remarke ) - - select #{item.userId,jdbcType=INTEGER}, #{item.patientId,jdbcType=NVARCHAR}, - #{item.admissTimes,jdbcType=NCHAR}, #{item.inpatientNo,jdbcType=NCHAR}, #{item.lockState,jdbcType=INTEGER}, - #{item.locker,jdbcType=NVARCHAR}, #{item.lockeTime,jdbcType=NCHAR}, #{item.unlocker,jdbcType=NVARCHAR}, - #{item.unlockeTime,jdbcType=NCHAR}, #{item.remarke,jdbcType=NVARCHAR} - + + select #{item.userId,jdbcType=INTEGER}, #{item.patientId,jdbcType=NVARCHAR}, + #{item.admissTimes,jdbcType=NCHAR}, #{item.inpatientNo,jdbcType=NCHAR}, #{item.lockState,jdbcType=INTEGER}, + #{item.locker,jdbcType=NVARCHAR}, #{item.lockeTime,jdbcType=NCHAR}, #{item.unlocker,jdbcType=NVARCHAR}, + #{item.unlockeTime,jdbcType=NCHAR}, #{item.remarke,jdbcType=NVARCHAR} + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/otherManage/lockList.jsp b/src/main/webapp/WEB-INF/views/otherManage/lockList.jsp new file mode 100644 index 0000000..35c3bed --- /dev/null +++ b/src/main/webapp/WEB-INF/views/otherManage/lockList.jsp @@ -0,0 +1,187 @@ +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + +<%@ include file="/WEB-INF/jspf/common.jspf" %> + + + + + 病案锁定管理 + + + + + + + + +
+
+
+ + 病案锁定管理 + +
+
+
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+ +
+
+ +
+
+
+ +
+
+
+ + + +
+ +
+ + +
+
+
+
+ + + + + diff --git a/src/main/webapp/WEB-INF/views/recordManage/commomSearch/commomListqf.jsp b/src/main/webapp/WEB-INF/views/recordManage/commomSearch/commomListqf.jsp index a320d07..45740e7 100644 --- a/src/main/webapp/WEB-INF/views/recordManage/commomSearch/commomListqf.jsp +++ b/src/main/webapp/WEB-INF/views/recordManage/commomSearch/commomListqf.jsp @@ -53,10 +53,9 @@ }*/ /*按钮组*/ .btns { - width: 102%; background-color: #fff; text-align: right; - margin-top: 5px; + margin-top: -15px; margin-bottom: 5px; } @@ -148,12 +147,12 @@ /**固定列样式*/ .fixed-table-body-columns { - top: 336px !important; + top:48%!important; /*height:226px!important;*/ } .fht-cell { - width: 18px !important; + width: 75px !important; } .table-hover > tbody > tr:hover > td, @@ -457,7 +456,7 @@ \ + onblur="clearContent('operate_name')" maxlength="16">
@@ -544,7 +543,7 @@ -
+
diff --git a/src/main/webapp/static/js/otherManage/lockList.js b/src/main/webapp/static/js/otherManage/lockList.js new file mode 100644 index 0000000..928e35e --- /dev/null +++ b/src/main/webapp/static/js/otherManage/lockList.js @@ -0,0 +1,229 @@ +$(function () { + //加载日期控件 + initDateInput(1); + initDateInput(2); +}) +var pageNumber; +$('#mytab').bootstrapTable({ + toolbar: '#toolbar', //工具按钮用哪个容器 + striped: true, //是否显示行间隔色 + cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*) + pagination: true, //是否显示分页(*) + sidePagination: "server", //分页方式:client客户端分页,server服务端分页(*) + paginationPreText : '上一页', + paginationNextText : '下一页', + pageNumber: 1, //初始化加载第一页,默认第一页 + pageSize: 10, //每页的记录行数(*) + pageList: [5,10,15,20,50,1000],//可供选择的每页的行数(*) + height: 1100, //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度 + columns:[ + { + title:'全选', + field:'select', + checkbox:true, + width:25, + align:'center', + valign:'middle' + }, + { + field:'ids', + visible: false + }, + { + field: 'no', + title: '序号', + sortable: true, + formatter: function (value, row, index) { + //获取每页显示的数量 + var pageSize=$('#mytab').bootstrapTable('getOptions').pageSize; + //获取当前是第几页 + var pageNumber=$('#mytab').bootstrapTable('getOptions').pageNumber; + //返回序号,注意index是从0开始的,所以要加上1 + return pageSize * (pageNumber - 1) + index + 1; + } + }, + { + title:'姓名', + field:'name', + }, + { + title:'病案号', + field:'inpatientNo', + }, + { + title:'住院次数', + field:'admissTimes', + }, + { + title:'锁定状态', + field:'lockState', + formatter: function(value,row,index){ + var lockState = row.lockState; + if(lockState == 1){ + return "锁定"; + }else{ + return "已解锁"; + } + } + }, + { + title:'锁定人', + field:'locker', + }, + { + title:'最近锁定时间', + field:'lockeTime', + }, + { + title:'解锁人', + field:'unlocker', + }, + { + title:'最近解锁时间', + field:'unlockeTime', + }, + { + title:'操作', + formatter: function(value,row,index){ + var lockState = row.lockState; + var patientId = "'" + row.patientId + "'"; + if(lockState == 1){ + var editanddrop = ''; + return editanddrop; + } + } + } + ], + locale:'zh-CN',//中文支持, + url:path+'/emrLock/getLockList',//排序方式 + queryParams: function (params) { + return{ + limit : params.limit, // 每页显示数量 + offset : params.offset, // SQL语句起始索引 + page : (params.offset / params.limit) + 1, //当前页码, + startTime1:$("#startTime1").val(), + endTime1:$("#endTime1").val(), + startTime2:$("#startTime2").val(), + endTime2:$("#endTime2").val(), + name:$("#name").val(), + inpatientNo:$("#inpatientNo").val(), + lockState:$("#lockState").val(), + locker:$("#locker").val(), + unlocker:$("#unlocker").val(), + } + }, + //选中单个复选框 + onCheck:function(row){ + var checks = $("#checks").val(); + $("#checks").val(checks+="'" + row.patientId + "',"); + }, + //取消单个复选框 + onUncheck:function(row){ + var checks = $("#checks").val(); + checks = checks.replace("'" + row.patientId + "',",''); + $("#checks").val(checks); + }, + //全选 + onCheckAll:function(rows){ + $("#checks").val(""); + var checks = ''; + for(var i=0;i