Index: ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js
===================================================================
diff -u -r17400 -r17440
--- ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 17400)
+++ ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 17440)
@@ -86,5 +86,7 @@
//装配时自动设置标识牌条码(前提是一个包实例只能装一个篮筐而且是整包清洗)
autoSetIDCardBarcodeForPacking : true,
//PDA上启用器械包签收功能
- enablePDATousseSign:true
+ enablePDATousseSign:true,
+ //是否启用清洗交接记录视图列表
+ enableWashTransitionRecordView : true
}
\ No newline at end of file
Index: ssts-web/src/main/webapp/homepage/menuconfigure.js
===================================================================
diff -u -r17383 -r17440
--- ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 17383)
+++ ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 17440)
@@ -53,7 +53,8 @@
singleClickExpand:singleClickExpandTree,
hidden:SSTS_WashRecord_Menu,
children:[
- {hidden :SSTS_WashRecord_Menu,text:"清洗消毒记录",href:WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washAndDisinfectView.jsp?editMode=true',hrefTarget:linkTarget,leaf:true}
+ {hidden :SSTS_WashRecord_Menu,text:"清洗消毒记录",href:WWWROOT+'/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/washAndDisinfectView.jsp?editMode=true',hrefTarget:linkTarget,leaf:true},
+ {hidden :SSTS_WashTransitionRecord_Select,text:"清洗交接记录",href:WWWROOT+'/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordView.jsp?',hrefTarget:linkTarget,leaf:true}
]
}];
Index: ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordView.jsp
===================================================================
diff -u
--- ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordView.jsp (revision 0)
+++ ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordView.jsp (revision 17440)
@@ -0,0 +1,19 @@
+<%@page language="java" contentType="text/html; charset=UTF-8"%>
+<%-- 引入JSP标签 --%>
+<%@include file="/common/taglibs.jsp"%>
+<%-- 引入ExtJs4.2.5框架 --%>
+<%@include file="/common/include_ForgonGrid4.2.5_css.jsp"%>
+<%@include file="/common/include_ForgonGrid4.2.5_Js.jsp"%>
+<%@include file="/common/include_UseForgonGrid4_Js.jsp"%>
+
+
+
+ <%-- 引入本身的js --%>
+
+
+ 清洗交接记录
+
+
+
+
+
\ No newline at end of file
Index: ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordView.js
===================================================================
diff -u
--- ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordView.js (revision 0)
+++ ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordView.js (revision 17440)
@@ -0,0 +1,44 @@
+var entityName = '清洗交接';
+var grid;
+
+function rendererFun(value, metaData, record, rowIndex, colIndex, store, view) {
+ var id = record.data.id;
+ return "" + value + "";
+}
+function rendererTransitionTime(value, metaData, record, rowIndex, colIndex, store, view) {
+ if (value) {
+ return Ext4.Date.format(new Date(value.time), 'Y-m-d H:i:s');
+ } else {
+ return '';
+ }
+}
+
+Ext4.onReady(function() {
+ var fields = [
+ {name : 'id', mapping : 'id'},
+ {name : 'handover', mapping : 'handover'},
+ {name : 'takeover', mapping : 'takeover'},
+ {name : 'transitionTime', mapping : 'transitionTime'}
+ ];
+
+ var columns = [{
+ header: "清洗人", dataIndex: 'handover', width: 70, minWidth:70, maxWidth:70, filterable: false, filter: {type: 'string'}, renderer : rendererFun
+ },{
+ header: "配包人", dataIndex: 'takeover', width: 70, minWidth:70, maxWidth:70, filterable: false, filter: {type: 'string'}
+ },{
+ header: "交接时间", dataIndex: 'transitionTime', width: 150, minWidth: 150, filterable: false, filter: {type: 'date'}, renderer : rendererTransitionTime
+ }];
+
+ grid = Ext4.create('ExtJs.forgon4.Grid', {
+ title : entityName,
+ dataUrl : WWWROOT + '/disinfectSystem/washTransitionRecordAction!loadWashTransitionRecordList.do',
+ fields : fields,
+ columns : columns,
+ sorters : { property : 'transitionTime',direction: 'DESC'}
+ });
+
+ var viewport = Ext4.create('Ext4.Viewport', {
+ layout : 'fit',
+ items : grid
+ });
+});
\ No newline at end of file
Index: ssts-web/src/main/webapp/forgon4/forgonGrid4.js
===================================================================
diff -u -r17181 -r17440
--- ssts-web/src/main/webapp/forgon4/forgonGrid4.js (.../forgonGrid4.js) (revision 17181)
+++ ssts-web/src/main/webapp/forgon4/forgonGrid4.js (.../forgonGrid4.js) (revision 17440)
@@ -7,7 +7,7 @@
//toolbar的excel导出按钮,-1表示不显示
showExportBtnIndex: -1,
//分页大小
- pageSize: 8
+ pageSize: 20
}
/**
Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/washTransition/action/WashTransitionRecordAction.java
===================================================================
diff -u
--- ssts-packing/src/main/java/com/forgon/disinfectsystem/washTransition/action/WashTransitionRecordAction.java (revision 0)
+++ ssts-packing/src/main/java/com/forgon/disinfectsystem/washTransition/action/WashTransitionRecordAction.java (revision 17440)
@@ -0,0 +1,132 @@
+package com.forgon.disinfectsystem.washTransition.action;
+
+import java.util.List;
+
+import net.sf.json.JSONArray;
+import net.sf.json.JSONObject;
+
+import org.apache.struts2.convention.annotation.Action;
+import org.apache.struts2.convention.annotation.Namespace;
+import org.apache.struts2.convention.annotation.ParentPackage;
+
+import com.forgon.disinfectsystem.entity.toussetransition.WashTransitionItem;
+import com.forgon.disinfectsystem.entity.toussetransition.WashTransitionMaterial;
+import com.forgon.disinfectsystem.entity.toussetransition.WashTransitionRecord;
+import com.forgon.disinfectsystem.washTransition.service.WashTransitionItemManager;
+import com.forgon.disinfectsystem.washTransition.service.WashTransitionMaterialManager;
+import com.forgon.disinfectsystem.washTransition.service.WashTransitionRecordManager;
+import com.forgon.entity.ExtJsEntity;
+import com.forgon.tools.StrutsParamUtils;
+import com.forgon.tools.StrutsResponseUtils;
+import com.forgon.tools.db.DatabaseUtil;
+import com.forgon.tools.json.JSONUtil;
+import com.forgon.tools.string.StringTools;
+import com.forgon.tools.util.ExtJsUtil;
+import com.forgon.tools.util.ForgonDateUtils;
+import com.forgon.util.ExtGridUtils;
+import com.opensymphony.xwork2.ModelDriven;
+import com.opensymphony.xwork2.Preparable;
+import com.sun.org.apache.bcel.internal.generic.NEWARRAY;
+
+@ParentPackage(value = "default")
+@Namespace(value = "/disinfectSystem")
+@Action(value = "washTransitionRecordAction")
+public class WashTransitionRecordAction implements ModelDriven< WashTransitionRecord>, Preparable{
+
+ private WashTransitionRecord washTransitionRecord;
+ private WashTransitionRecordManager washTransitionRecordManager;
+ private ExtGridUtils extGridUtils;
+
+ public void setExtGridUtils(ExtGridUtils extGridUtils) {
+ this.extGridUtils = extGridUtils;
+ }
+
+ public void setWashTransitionRecordManager(
+ WashTransitionRecordManager washTransitionRecordManager) {
+ this.washTransitionRecordManager = washTransitionRecordManager;
+ }
+
+ @Override
+ public void prepare() throws Exception {
+ try {
+ String id = StrutsParamUtils.getPraramValue("id", "");
+ if (DatabaseUtil.isPoIdValid(id)) {
+ washTransitionRecord = washTransitionRecordManager.get(Long.valueOf(id));
+ } else {
+ washTransitionRecord = new WashTransitionRecord();
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ @Override
+ public WashTransitionRecord getModel() {
+ // TODO Auto-generated method stub
+ return washTransitionRecord;
+ }
+
+ /**
+ * 加载清洗交接记录视图列表
+ * @return
+ */
+ public void loadWashTransitionRecordList() {
+ ExtJsEntity entity =ExtJsUtil.buildSQLEntity("select * ", " from WashTransitionRecord where 1=1 ", "");
+ JSONObject result = extGridUtils.getPagedResult(entity);
+ StrutsResponseUtils.output(result);
+ }
+
+ /**
+ * 根据id,加载清洗交接记录的信息
+ * @return
+ * @param id id
+ */
+ public void loadWashTransitionRecordInfoById() {
+ if(DatabaseUtil.isPoIdValid(washTransitionRecord.getId())){
+ Integer tousseTotal = 0;
+ Integer materialTotal = 0;
+ JSONArray rows = new JSONArray();
+ List tousses = washTransitionRecord.getWashTransitionItems();
+ for (WashTransitionItem tousse : tousses) {
+ JSONObject jTousse = new JSONObject();
+ jTousse.put("goodsName", tousse.getTousseName());
+ Integer tousseAmount = 0;
+ if (StringTools.isNotBlank(tousse.getIdCardBarcode())) {
+ jTousse.put("idCardBarcodeOrAmount", tousse.getIdCardBarcode());
+ ++ tousseTotal;
+ tousseAmount = 1;
+ } else {
+ Integer temp = tousse.getAmount() == null ? 0 : tousse.getAmount();
+ tousseTotal += temp;
+ tousseAmount = temp;
+ jTousse.put("idCardBarcodeOrAmount", temp);
+ }
+ List materials = tousse.getWashTransitionMaterials();
+ JSONArray jMaterials = new JSONArray();
+ for (WashTransitionMaterial material : materials) {
+ JSONObject jMaterial = new JSONObject();
+ jMaterial.put("goodsName", material.getMaterialName());
+ Integer temp = material.getAmount() == null ? 0 : material.getAmount();
+ materialTotal = materialTotal + temp*tousseAmount;
+ jMaterial.put("idCardBarcodeOrAmount", temp);
+ jMaterial.put("leaf", true);
+ jMaterials.add(jMaterial);
+ }
+ jTousse.put("children", jMaterials);
+ rows.add(jTousse);
+ }
+
+ if (rows.size() < 0) {
+ rows.add(new JSONObject());
+ }
+ JSONObject firstRow = (JSONObject) rows.get(0);
+ firstRow.put("handover", washTransitionRecord.getHandover());
+ firstRow.put("takeover", washTransitionRecord.getTakeover());
+ firstRow.put("transitionTime", ForgonDateUtils.safelyFormatDate(washTransitionRecord.getTransitionTime(), ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMMSS, ""));
+ firstRow.put("displayInfo", String.format("共有%s包,%s件器械", tousseTotal, materialTotal));
+ StrutsResponseUtils.output(rows.toString());
+ }
+ }
+
+
+}
Index: ssts-web/src/main/webapp/homepage/menu.jsp
===================================================================
diff -u -r17383 -r17440
--- ssts-web/src/main/webapp/homepage/menu.jsp (.../menu.jsp) (revision 17383)
+++ ssts-web/src/main/webapp/homepage/menu.jsp (.../menu.jsp) (revision 17440)
@@ -517,11 +517,25 @@
SSTS_RecycRecord_Menu = false;
+/**
+ * 《清洗消毒》菜单
+ */
var SSTS_WashRecord_Menu = true;
-
-SSTS_WashRecord_Menu = false;
+
+ SSTS_WashRecord_Menu = false;
+/**
+ * 《清洗交接记录查询》权限
+ */
+var SSTS_WashTransitionRecord_Select = true;
+
+ SSTS_WashTransitionRecord_Select = false;
+
+if (!sstsConfig.enableWashTransitionRecordView) {
+ SSTS_WashTransitionRecord_Select = true;
+}
+
var SSTS_Packing_Manager = true;
SSTS_Packing_Manager = false;
Index: ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordForm.js
===================================================================
diff -u
--- ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordForm.js (revision 0)
+++ ssts-web/src/main/webapp/disinfectsystem/washanddisinfectmanager/washTransitionRecord/washTransitionRecordForm.js (revision 17440)
@@ -0,0 +1,154 @@
+var windowObj; //窗口
+var formObj; //表单
+
+function loadData(id) {
+ if (id) {
+ Ext4.define('Forgon.data.WashTransitionRecordInfoModel', {
+ extend : 'Ext4.data.Model',
+ fields: [{
+ name : 'goodsName'
+ },{
+ name : 'idCardBarcodeOrAmount'
+ },{
+ name : 'handover'
+ },{
+ name : 'takeover'
+ },{
+ name : 'transitionTime'
+ },{
+ name : 'displayInfo'
+ }]
+ });
+
+ var washTransitionRecordInfoTreeStore = Ext4.create('Ext4.data.TreeStore', {
+ model : Forgon.data.WashTransitionRecordInfoModel,
+ folderSort : true,
+ proxy: {
+ type : 'ajax',
+ extraParams: {id : id},
+ url : WWWROOT + '/disinfectSystem/washTransitionRecordAction!loadWashTransitionRecordInfoById.do'
+ },
+ listeners: {
+ load: function(_this, node, records, successful, eOpts) {
+ var firstRow = records[0];
+ if (firstRow) {
+ var firstRowData = firstRow.data;
+ Ext4.getCmp('handover').setValue(firstRowData.handover);
+ Ext4.getCmp('takeover').setValue(firstRowData.takeover);
+ Ext4.getCmp('transitionTime').setValue(firstRowData.transitionTime);
+ Ext4.getCmp('displayInfo').setText(firstRowData.displayInfo);
+ }
+ }
+ }
+ });
+
+ var washTransitionRecordInfoTreeGrid = Ext4.create('Ext4.tree.Panel', {
+ title : '物品信息',
+ rootVisible: false,
+ useArrows: true,
+ multiSelect: false,
+ columnLines: true,
+ rowLines: true,
+ cls: 'no-leaf-icons',
+ store : washTransitionRecordInfoTreeStore,
+ viewConfig : {loadMask : {msg : '正在加载,请稍候...'}},
+ tbar : ['->', {
+ xtype : 'label',
+ height : 16,
+ id : 'displayInfo'
+ }],
+ columns: [{
+ xtype:'treecolumn', header:'物品名称', dataIndex:'goodsName', width: 200, sortable: false, menuDisabled : true
+ },{
+ header:'标识牌条码/数量', dataIndex:'idCardBarcodeOrAmount', width: 150, sortable: false, menuDisabled : true
+ }]
+ });
+
+ formObj = Ext4.create('Ext4.form.Panel', {
+ layout : 'vbox',
+ frame : true,
+ border : 0,
+ labelSeparator : ': ',
+ bodyPadding : '5 5 0',
+ autoScroll : true,
+ buttonAlign : 'center',
+ buttons : [{
+ text : '取消',
+ handler : function() {
+ windowObj.close();
+ }
+ }],
+ fieldDefaults : {
+ labelAlign : 'right',
+ labelWidth : 50
+ },
+ items : [{
+ xtype : 'fieldset',
+ height : 50,
+ width : '100%',
+ layout : 'column',
+ title : '清洗交接基本信息',
+ items : [{
+ layout : 'form',
+ columnWidth : .3,
+ bodyStyle : {background : '#EBF5EC', border : 0},
+ items : [{
+ xtype : 'textfield',
+ border : 0,
+ fieldLabel : '清洗人',
+ name : "handover",
+ id : "handover",
+ readOnly : true,
+ fieldCls : 'fieldReadOnlyNoRemoveAndTop'
+ }]
+ },{
+ layout : 'form',
+ columnWidth : .3,
+ bodyStyle : {background : '#EBF5EC', border : 0},
+ items : [{
+ xtype : 'textfield',
+ columnWidth : .3,
+ fieldLabel : '配包人',
+ name : "takeover",
+ id : "takeover",
+ readOnly : true,
+ fieldCls : 'fieldReadOnlyNoRemoveAndTop'
+ }]
+ },{
+ layout : 'form',
+ columnWidth : .4,
+ bodyStyle : {background : '#EBF5EC', border : 0},
+ items : [{
+ xtype : 'textfield',
+ columnWidth : .3,
+ fieldLabel : "交接时间",
+ labelWidth : 60,
+ name : "transitionTime",
+ id : "transitionTime",
+ readOnly : true,
+ fieldCls : 'fieldReadOnlyNoRemoveAndTop'
+ }]
+ }]
+ },{
+ xtype : 'container',
+ flex : 1,
+ width : '100%',
+ layout : 'fit',
+ items : washTransitionRecordInfoTreeGrid
+ }]
+ });
+
+ windowObj = Ext4.create('Ext4.window.Window', {
+ layout : 'fit',
+ title : '清洗交接信息',
+ width : 600,
+ height : 400,
+ resizable :false,
+ modal : true,
+ border : false,
+ plain : true,
+ items : formObj
+ });
+ windowObj.show();
+ }
+}
\ No newline at end of file