Index: ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js =================================================================== diff -u -r36236 -r36247 --- ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 36236) +++ ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 36247) @@ -9,6 +9,7 @@ var lastSelectVedioName; var lastSelectTdId; var lastSelectTaskId; +var sterilizerTypeStore; var packingToussesArray = []; // 装配的器械包数组,用于Selenium自动化测试 var packedToussesArray = [];// 用于一次打印所有装配的包 @@ -194,6 +195,111 @@ getErrorAndDamgeCount(); } +var barcodeTemp = ''; + +//修改灭菌程序 +function updateSterilisation(){ + var newSterilizerTypeStore = new Ext.data.SimpleStore({ + fields: ['id', 'typeName', 'typeNameAndPurpose', 'sterilizationMode'], + url: WWWROOT + '/disinfectSystem/baseData/sterilizerAction!getSterilizerTypeAndSterilizationPurpose.do' + }); + var form = new top.Ext.FormPanel({ + id : 'updateSterilisationForm', + frame : true, + border : 0, + labelSeparator : ':', + bodyStyle : 'padding:5px 5px 0px 5px', + width : 480, + labelAlign:'right', + autoHeight : true, + autoScroll : true, + items : [{ + layout : 'column', + items : [{ + columnWidth : .9, + layout : 'form', + labelWidth : 80, + items : [{ + xtype : 'textfield', + fieldLabel : '管理员', + maxLength : '16', + id : 'newUser', + name : 'newUser', + allowBlank : false, + anchor : '100%', + readOnly : true, + cls:'fieldReadOnlyNoRemove' + }] + },{ + columnWidth : .9, + layout : 'form', + labelWidth : 80, + items : [{ + xtype: 'combo', + fieldLabel: '灭菌程序', + id: 'newSterilingType', + name: 'newSterilingType', + minChars: 0, + labelWidth: 90, + labelAlign: 'right', + valueField: 'typeName', + displayField: 'typeNameAndPurpose', + labelAlign: 'right', + store: newSterilizerTypeStore, + forceSelection: true, + lazyInit: true, + anchor: '90%', + editable: false, + triggerAction: 'all', + typeAhead: false, + allowBlank: false + }] + }] + }], + buttonAlign :'center', + buttons : [{ + text : '确认', + handler : function(){ + var newSterilingType = top.Ext.getCmp('newSterilingType').getValue(); + var newUser = top.Ext.getCmp('newUser').getValue(); + if(newUser == ''){ + showMultipleResult('请扫描管理员条码。'); + return; + } + if(newSterilingType == ''){ + showMultipleResult('请选择灭菌程序'); + return; + } + Ext4.getCmp('sterilingType').setRawValue(newSterilingType); + win.close(); + } + },{ + text : '取消', + handler : function() { + win.close(); + } + }] + }); + + var win = new top.Ext.Window({ + id : 'updateSterilisationWin', + layout : 'fit', + title : '修改灭菌程序', + width : 500, + modal : true, + autoHeight : true, + closeAction:'close', + border : false, + height:480, + plain : true, + items : [ form ] + }); + + win.show(); + + barcodeTemp = ''; +} + function checkedAllNode(checked) { var rootNode = Ext4.getCmp('basketTreeGrid').getRootNode(); var newChecked = checked; @@ -1851,7 +1957,7 @@ ] }); - var sterilizerTypeStore = new Ext4.data.Store({ + sterilizerTypeStore = new Ext4.data.Store({ proxy: { type: 'ajax', url: WWWROOT + '/disinfectSystem/baseData/sterilizerAction!getSterilizerTypeAndSterilizationPurpose.do', @@ -1860,7 +1966,20 @@ } }, fields: ['id', 'typeName', 'typeNameAndPurpose', 'sterilizationMode'], - autoLoad: true + autoLoad: true, + listeners:{ + beforeload: function (thiz) { + if(lastSelectTdId !== ''){ + sterilizerTypeStore.proxy.extraParams.tdId = lastSelectTdId; + } + }, + load:function(store,records) { + if(records.length == 0) { + var rs = [['','无','无']]; + store.insert(0, rs); + } + } + } }); //灭菌炉 var sterilizerJsonStore = new Ext4.data.Store({ @@ -2288,7 +2407,7 @@ value: jobType_wrapper_name }, { - columnWidth: .5, + columnWidth: sstsConfig.enableAvailableSterilizationProgramsOfTousseFunction?.46:.5, xtype: 'combo', fieldLabel: '灭菌程序', id: 'sterilingType', @@ -2314,6 +2433,28 @@ Ext4.getCmp('sterilingMode').setValue(rec[0].data["sterilizationMode"]); } } + },{ + columnWidth: .04, + xtype: 'button', + text:'修改灭菌程序', + iconCls: 'btn_ext_application_todo', + id:'updateSterilingTypeButton', + hidden:!sstsConfig.enableAvailableSterilizationProgramsOfTousseFunction, + listeners: { + click: function (thiz) { + updateSterilisation(); + }, + render : function(field) { + Ext.QuickTips.init(); + field.getEl().on('mouseover', function(p) { + Ext.QuickTips.init(); + Ext.QuickTips.register({ + target: field.el.id, + text: field.text + }); + }); + } + } }, { columnWidth: .5, xtype: 'textfield', @@ -5866,9 +6007,16 @@ } else { Ext4.getCmp('packageType').enable(); } + if(sstsConfig.enableAvailableSterilizationProgramsOfTousseFunction){ + Ext4.getCmp('updateSterilingTypeButton').enable(); + sterilizerTypeStore.reload(); + } } else { Ext4.getCmp('sterilingType').disable(); Ext4.getCmp('packageType').disable(); + if(sstsConfig.enableAvailableSterilizationProgramsOfTousseFunction){ + Ext4.getCmp('updateSterilingTypeButton').disable(); + } } } } @@ -6956,12 +7104,11 @@ if (jobType_review_name != "") { Ext4.getCmp('reviewer').setValue(jobType_review_name); } - - document.onkeydown = showKeyDown; - //监听空格键 - function showKeyDown() { - if (event.keyCode == 17) { - if (sstsConfig.enablePackingMaterialsCheckFunction) { + if (sstsConfig.enablePackingMaterialsCheckFunction) { + document.onkeydown = showKeyDown; + //监听空格键 + function showKeyDown() { + if (event.keyCode == 17) { if (getPackingMaterialsForCheck.size() == 1) { var tousseDefinitionId = getPackingMaterialsForCheck.element(0).key; materialsAddBgColor(tousseDefinitionId); @@ -6973,6 +7120,57 @@ } } + if(sstsConfig.enableAvailableSterilizationProgramsOfTousseFunction){ + top.document.onkeydown = getUserBarcode; + function getUserBarcode(keyCode) { + if (event.keyCode == 48) { + barcodeTemp += '0'; + } else if (event.keyCode == 49) { + barcodeTemp += '1'; + } else if (event.keyCode == 50) { + barcodeTemp += '2'; + } else if (event.keyCode == 51) { + barcodeTemp += '3'; + } else if (event.keyCode == 52) { + barcodeTemp += '4'; + } else if (event.keyCode == 53) { + barcodeTemp += '5'; + } else if (event.keyCode == 54) { + barcodeTemp += '6'; + } else if (event.keyCode == 55) { + barcodeTemp += '7'; + } else if (event.keyCode == 56) { + barcodeTemp += '8'; + } else if (event.keyCode == 57) { + barcodeTemp += '9'; + } else if (event.keyCode == 13) { + if(top.Ext.getCmp('newUser')){ + Ext.Ajax.request({ + url: WWWROOT + '/systemmanage/user/userAction!getUserIsHasOperation.do', + params:{ + barcode:barcodeTemp, + operationId:'SSTS_UpdateSterilisation_Manager' + }, + success: function (response, options) { + var result = Ext.decode(response.responseText); + barcodeTemp = ''; + if(result.data){ + top.Ext.getCmp('newUser').setValue(result.data.fullName); + }else { + showMultipleResult(result.message); + } + }, + failure: function (response, options) { + var result = Ext.decode(response.responseText); + barcodeTemp = ''; + showMultipleResult(result.message); + } + }) + } + } + } + } + /** * 空闲时刷新(每空闲5分钟刷新一次) * 如果有鼠标或者键盘事件,则重新计时