Index: ssts-web/src/main/webapp/disinfectsystem/adverseEvent/searchForm.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/adverseEvent/searchForm.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/adverseEvent/searchForm.js (revision 32919) @@ -0,0 +1,103 @@ +function getFormView(view) { + var startDate = today + " 00:00:00"; + var endDate = today + " 23:59:59"; + //事件名称 + var adverseEventStore = new Ext4.data.Store({ + fields: [{ name: 'eventCode' }, { name: 'eventName' }], + data: [{ eventCode: 2, eventName: '物品回收超时' }, { eventCode: 1, eventName: '外来器械包送达超时' }] + }); + var form = new Ext4.form.Panel({ + title: '不良事件记录', + region: 'north', + buttonAlign: 'center', + border: 0, + frame: true, + bodyStyle: 'padding:0px auto;margin:0px', + height: 100, + id: 'form', + items: [{ + layout: 'column', + autoHeight: true, + items: [{ + layout: 'form', + columnWidth: 0.25, + items: [{ + xtype: 'datefield', + fieldLabel: '开始日期', + labelAlign: 'right', + id: 'startDate', + name: 'startDate', + format: 'Y-m-d H:i:s', + allowBlank: false, + anchor: '95%', + value: new Date(startDate) + }] + }, { + layout: 'form', + columnWidth: 0.25, + items: [{ + xtype: 'datefield', + fieldLabel: '结束日期', + labelAlign: 'right', + id: 'endDate', + name: 'endDate', + format: 'Y-m-d H:i:s', + allowBlank: false, + anchor: '95%', + value: new Date(endDate) + }] + }, { + layout: 'form', + columnWidth: .3, + items: [{ + xtype: 'combo', + fieldLabel: '事件名称', + id: 'eventCode', + name: 'eventCode', + labelAlign: 'right', + valueField: 'eventCode', + displayField: 'eventName', + store: adverseEventStore, + forceSelection: true, + value: '', + editable: false, + mode: 'local', + triggerAction: 'all', + anchor: '95%' + }] + }] + }], + buttons: [{ + xtype: 'button', + text: '查询', + minWidth: 70, + iconCls: 'icon_search', + handler: function () { + var startDate = Ext4.getCmp('startDate').getRawValue(); + var endDate = Ext4.getCmp('endDate').getRawValue(); + var eventCode = Ext4.getCmp('eventCode').getValue(); + + if (view == 'list') { + listStore.proxy.extraParams.startTime = startDate; + listStore.proxy.extraParams.endTime = endDate; + listStore.proxy.extraParams.eventCode = eventCode; + listStore.loadPage(1); + } else { + reloadReport(); + } + } + }, { + xtype: 'button', + text: '重置', + minWidth: 70, + iconCls: 'icon_set', + handler: function () { + Ext4.getCmp('startDate').setValue(new Date(startDate)); + Ext4.getCmp('endDate').setValue(new Date(endDate)); + Ext4.getCmp('eventCode').setValue(''); + } + }] + }); + + return form; +} \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventView.jsp =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventView.jsp (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventView.jsp (revision 32919) @@ -0,0 +1,31 @@ +<%@page import="java.util.Date"%> +<%@page import="java.text.SimpleDateFormat"%> +<%@ page contentType="text/html; charset=UTF-8"%> +<%@ include file="/common/taglibs.jsp"%> +<% + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + request.setAttribute("today", dateFormat.format(new Date())); +%> + + + +<%@ include file="/common/includeExtJsAndCss.jsp"%> +<%@ include file="/common/includeExtJs4_2.jsp"%> + +不良事件记录 + + + + + + + + + \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/config/gyey/config.js =================================================================== diff -u -r32891 -r32919 --- ssts-web/src/main/webapp/disinfectsystem/config/gyey/config.js (.../config.js) (revision 32891) +++ ssts-web/src/main/webapp/disinfectsystem/config/gyey/config.js (.../config.js) (revision 32919) @@ -111,6 +111,8 @@ enableScanSterilizationMonitoringPackage:true, //是否启用加急功能 enableUrgentFunction:true, + //开启不良事件管理 + enableAdverseEventManagement:true, //回收超时需排除之外的时间 不支持超过24小时 recyclingTimeoutNeedsToExcludeTheTime:["18:00","08:00"] } \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventView.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventView.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventView.js (revision 32919) @@ -0,0 +1,74 @@ +var listStore; +var adverseEventListGrid; + +Ext4.onReady(function () { + Ext4.QuickTips.init(); + var startDate = today + " 00:00:00"; + var endDate = today + " 23:59:59"; + var form = getFormView('list'); + + var columns = [ + { header: "事件名称", dataIndex: 'eventName', width: 150, sortable: false }, + { header: "事件发生事件", dataIndex: 'eventTime', width: 150, sortable: false }, + { header: "申请单号", dataIndex: 'invoicePlanSerialNumber', width: 150, sortable: false }, + { header: "超时处理方式", dataIndex: 'timeoutHandType', width: 150, sortable: false }, + { header: "备注", dataIndex: 'remark', width: document.body.clientWidth - 630, sortable: false } + ]; + + listStore = new Ext4.data.JsonStore({ + proxy: { + type: 'ajax', + url: WWWROOT + '/disinfectSystem/adverseeventrecord/adverseEventRecordAction!loadAdverseEventRecordList.do', + reader: { + root: 'data', + totalProperty: 'totalCount' + }, + actionMethods: { + read: 'POST' + }, + extraParams: { + startTime: startDate, + endTime: endDate, + eventCode: '' + } + }, + fields: [ + { name: 'id' }, + { name: 'eventName' }, + { name: 'invoicePlanSerialNumber' }, + { name: 'eventCode' }, + { name: 'timeoutHandType' }, + { name: 'eventTime' }, + { name: 'remark' } + ] + }); + + listStore.loadPage(1); + + adverseEventListGrid = new Ext4.grid.GridPanel({ + title: '', + columns: columns, + frame: false, + autoScroll: false, + store: listStore, + dockedItems: [{ + xtype: 'pagingtoolbar', + store: listStore, // same store GridPanel is using + dock: 'bottom', + displayInfo: true + }], + viewConfig: { + autoFill: true + } + }); + + new Ext4.container.Viewport({ + layout: 'border', + items: [form, { + region: 'center', + layout: 'fit', + items: [adverseEventListGrid] + }] + }); + +}); \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventReportView.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventReportView.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/adverseEvent/adverseEventReportView.js (revision 32919) @@ -0,0 +1,49 @@ +function reloadReport() { + var startDate = Ext4.getCmp('startDate').getRawValue(); + var endDate = Ext4.getCmp('endDate').getRawValue(); + var eventCode = Ext4.getCmp('eventCode').getValue(); + var jasperreportName = ''; + if (eventCode == null || eventCode == 'null' || eventCode == '') { + showResult('事件名称不能为空'); + return + } + if (eventCode == 2) { + jasperreportName = 'recyclingTimeoutReport.jasper' + } else if (eventCode == 1) { + jasperreportName = 'foreignToussesEndTimeoutReport.jasper' + } + + var url = WWWROOT + '/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do'; + var params = { + startDate: startDate, + endDate: endDate, + eventCode: eventCode, + jasperreportName: jasperreportName, + reportName: 'adverseEventRecordSumReport' + } + searchReport(url, params); +} + +Ext4.onReady(function () { + Ext4.QuickTips.init(); + var form = getFormView('report'); + + var reportForm = new Ext4.Panel({ + frame: false,//渲染面板 + autoScroll: true,//自动显示滚动条 + collapsible: false,//允许展开和收缩 + bodyPadding: 0, + html: '' + }); + + new Ext4.container.Viewport({ + layout: 'border', + items: [form, { + region: 'center', + margins: '0 0 0 0', + layout: 'fit', + items: reportForm + }] + }); + +}); \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/foreigntousseapplication/foreignTousseInfoForm.js =================================================================== diff -u -r32560 -r32919 --- ssts-web/src/main/webapp/disinfectsystem/foreigntousseapplication/foreignTousseInfoForm.js (.../foreignTousseInfoForm.js) (revision 32560) +++ ssts-web/src/main/webapp/disinfectsystem/foreigntousseapplication/foreignTousseInfoForm.js (.../foreignTousseInfoForm.js) (revision 32919) @@ -2630,6 +2630,7 @@ {xtype : 'hidden',fieldLabel : '处理科室编号',name : 'handleDepartCoding',id : 'handleDepartCoding'}, {xtype : 'hidden',name : 'foreignTousseInfo',id : 'foreignTousseInfo'}, {xtype : 'hidden',name : 'barcodeStr',id : 'barcodeStr'}, + {xtype : 'hidden',name : 'timeoutHandType',id : 'timeoutHandType'}, {xtype : 'hidden',name : 'recyclingTime',id : 'recyclingTime'}, { layout : 'form', @@ -3784,28 +3785,47 @@ } } } - function showNoticeWindow(){ //判断当前时间是否位于所设置的超时时间范围,如果是,则打开超时处理确认提示筐(广医二院需求) - var messageVal = "
器械送达时间超时,请选择超时处理方式:


"; - var msgBox = new top.Ext4.window.MessageBox(); - msgBox.autoShow=true; - msgBox.autoScroll=true; - msgBox.overflowY='auto'; - msgBox.confirm({ - title: '超时处理', - padding: '0 10 10 10', - autoScroll: true, + var messageVal = '

器械送达时间超时,请选择超时处理方式:

急诊

延迟送到

异常申请单

'; + var myPanel = top.Ext4.create('Ext4.panel.Panel', { + height: 140, + width : 390, + bodyStyle:'background: #ebf5ed;border-color: #ebf5ed;', + bodyPadding: '10 10 10 10', + html: messageVal + }); + var win = new top.Ext4.Window( { + layout : 'border', + title : '超时处理', height: 200, width : 400, - autoShow: true, - msg: messageVal, - fn: function(btn){ - - }, - buttons: Ext4.MessageBox.OKCANCEL, - icon: Ext4.Msg.WARNING + border : false, + plain : true, + modal :true, + items : [myPanel], + buttonAlign:'center', + buttons:[{ + text : '确定', + handler : function(){ + var nodes = top.document.getElementsByClassName('timeoutHandType'); + var timeoutHandType = ''; + for(var i=0;i +<%@page import="java.text.SimpleDateFormat"%> +<%@ page contentType="text/html; charset=UTF-8"%> +<%@ include file="/common/taglibs.jsp"%> +<% + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + request.setAttribute("today", dateFormat.format(new Date())); +%> + + + +<%@ include file="/common/includeExtJsAndCss.jsp"%> +<%@ include file="/common/includeExtJs4_2.jsp"%> + +不良事件统计报表 + + + + + + + + + \ No newline at end of file Index: ssts-web/src/main/webapp/homepage/menuconfigure.js =================================================================== diff -u -r32720 -r32919 --- ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 32720) +++ ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 32919) @@ -605,6 +605,14 @@ } ] },{ + text:"不良事件管理", + singleClickExpand:singleClickExpandTree, + hidden:!sstsConfig.enableAdverseEventManagement, + children:[ + {hidden : false,text:"不良事件记录",href:WWWROOT+'/disinfectsystem/adverseEvent/adverseEventView.jsp',hrefTarget:linkTarget,leaf:true}, + {hidden : false,text:"不良事件统计报表",href:WWWROOT+'/disinfectsystem/adverseEvent/adverseEventReportView.jsp',hrefTarget:linkTarget,leaf:true} + ] +},{ text:"视频监控", singleClickExpand:singleClickExpandTree, hidden:SSTS_cameraDefinition && SSTS_computerDefinition && SSTS_videoManage,