Index: ssts-web/src/main/webapp/disinfectsystem/packing/directPacking.js =================================================================== diff -u -r17824 -r20264 --- ssts-web/src/main/webapp/disinfectsystem/packing/directPacking.js (.../directPacking.js) (revision 17824) +++ ssts-web/src/main/webapp/disinfectsystem/packing/directPacking.js (.../directPacking.js) (revision 20264) @@ -128,6 +128,90 @@ barcodeField.setValue(); } + function loadIdCardByBarcodeForRepacking(barcodeField){ + var barcode = barcodeField.getValue(); + PackingTableManager.loadIdCardByBarcodeForRepacking(barcode,function(resultJsonStr){ + var tousseInfo = JSON.parse(resultJsonStr); + if(tousseInfo.success){ + var tousseId = tousseInfo.tousseDefinitionId; + var tousseName = tousseInfo.tousseName; + var tousseType = tousseInfo.tousseType; + Ext.getCmp('idCardBarcode').setValue(tousseInfo.idCardId); + Ext.getCmp('idCardDefinitionId').setValue(tousseInfo.idCardDefinitionId); + Ext.getCmp('idCardName').setValue(tousseName); + Ext.getCmp('tousseName').setValue(tousseName); + Ext.getCmp('tousseBarcode').setValue(tousseInfo.barcode); + Ext.getCmp('operator').setValue(tousseInfo.operator); + Ext.getCmp('reviewer').setValue(tousseInfo.reviewer); + Ext.getCmp('packageType').setValue(tousseInfo.packageType); + Ext.getCmp('sterilingType1').setValue(tousseInfo.sterilingType); +// Ext.getCmp('disinfectionDate').setValue(tousseInfo.sterileStartDate); + Ext.getCmp('packAmount').setValue(1); + Ext.getCmp('isThereIdentificationCard').setValue('是'); + + Ext.getCmp('tempTousseType').setValue(tousseType); + loadImage(tousseId,tousseName); + loadMaterials(tousseId); + loadTousseInfo(tousseId); + directPackingTousseDefinitionId = tousseId; + + Ext.getCmp('operatorBarcode').focus(); + } + else + { + showResult(tousseInfo.message); + Ext.getCmp('idCardName').setValue(); + } + }); + barcodeField.setValue(); + } + + function loadTousseByBarcode(barcodeField){ + var barcode = barcodeField.getValue(); + PackingTableManager.loadTousseByBarcodeForRepacking(barcode,function(resultJsonStr){ + var tousseInfo = JSON.parse(resultJsonStr); + if(tousseInfo.success){ + var tousseId = tousseInfo.tousseDefinitionId; + var tousseName = tousseInfo.tousseName; + var tousseType = tousseInfo.tousseType; +// Ext.getCmp('idCardBarcode').setValue(tousseInfo.idCardId); +// Ext.getCmp('idCardDefinitionId').setValue(tousseInfo.idCardDefinitionId); +// Ext.getCmp('idCardName').setValue(tousseName); + Ext.getCmp('tousseName').setValue(tousseName); + Ext.getCmp('tousseBarcode').setValue(barcode); + Ext.getCmp('operator').setValue(tousseInfo.operator); + Ext.getCmp('reviewer').setValue(tousseInfo.reviewer); + Ext.getCmp('packageType').setValue(tousseInfo.packageType); + Ext.getCmp('sterilingType1').setValue(tousseInfo.sterilingType); +// Ext.getCmp('disinfectionDate').setValue(tousseInfo.sterileStartDate); + + Ext.getCmp('packAmount').setValue(1); +// Ext.getCmp('isThereIdentificationCard').setValue('是'); + + Ext.getCmp('tempTousseType').setValue(tousseType); + loadImage(tousseId,tousseName); + loadMaterials(tousseId); + loadTousseInfo(tousseId); + directPackingTousseDefinitionId = tousseId; + + Ext.getCmp('operatorBarcode').focus(); + } + else + { + showResult(tousseInfo.message); + Ext.getCmp('idCardName').setValue(); + } + }); + barcodeField.setValue(); + } + + function isDirectPackingMode(){ + var packingMode = Ext.getCmp('packingMode_id').getValue(); + if(packingMode == 'directPacking'){ + return true; + } + return false; + } function loadUserByBarcode(barcodeField,userNameField,userCodeField,focusField){ if(userNameField == null || userCodeField == null || barcodeField == null){ @@ -641,9 +725,61 @@ name : 'continueOnVirtualBasketInsufficient', value : '' },{ + xtype : 'hidden', + id : 'tousseBarcode', + name : 'tousseBarcode' + },{ columnWidth : .33, layout : 'form', cls:'edit-5char-labelwidth', + items : [{ + xtype:'combo', + id : 'packingMode_id', + name : 'packingMode', + hiddenName:'packingMode', + fieldLabel : '装配模式', + valueField : 'packingModeCode', + displayField : 'packingModeName', + triggerAction : 'all', + width : 80, + allowBlank : true, + editable : false, + value:'directPacking', + store : new Ext.data.SimpleStore({ + fields : ['packingModeCode', 'packingModeName' ], + data : [['directPacking','自定义装配'],['repacking','重新装配']] + }), + mode:'local', + forceSelection : true, + triggerAction : 'all', + listeners : { + select : function(combo, record, index){ + //alert(record.get("scanModeCode")); + var packingMode = record.get("packingModeCode"); + //首尾条码全部清空,且让首条码得到焦点 + Ext.getCmp('idCardName').setValue(""); + Ext.getCmp('sterilingType1').setValue(""); + Ext.getCmp('packageType').setValue(""); + Ext.getCmp('tousseName').setValue(""); + if(packingMode == 'directPacking'){ + Ext.getCmp('tousseName').getEl().dom.readOnly = false; + Ext.getCmp('packAmount').getEl().dom.readOnly = false; + + Ext.getCmp('tousseBarcodeCmp').hide(); + }else{ + Ext.getCmp('tousseName').getEl().dom.readOnly = true; + Ext.getCmp('packAmount').getEl().dom.readOnly = true; + Ext.getCmp('tousseBarcodeCmp').show(); + } +// Ext.getCmp('scanText').focus(); + } + }, + anchor : '100%' + }] + },{ + columnWidth : .33, + layout : 'form', + cls:'edit-5char-labelwidth', hidden : sstsConfig.disableIdCard, items : [{ xtype : 'textfield', @@ -652,7 +788,11 @@ listeners : { specialkey : function(thiz, e){ if(e.getKey() == 13){ - loadIdCardByBarcode(thiz); + if(isDirectPackingMode()){ + loadIdCardByBarcode(thiz); + }else{ + loadIdCardByBarcodeForRepacking(thiz); + } } } }, @@ -675,6 +815,26 @@ }] },{ + columnWidth : .33, + layout : 'form', + cls:'edit-5char-labelwidth', + + items : [{ + xtype : 'textfield', + fieldLabel : "器械包条码", + allowBlank : true, + id:'tousseBarcodeCmp', + hidden: true, + listeners : { + specialkey : function(thiz, e){ + if(e.getKey() == 13){ + loadTousseByBarcode(thiz); + } + } + }, + anchor : '100%' + }] + },{ columnWidth : .33, layout : 'form', cls:'edit-5char-labelwidth', @@ -1038,7 +1198,12 @@ }else{ Ext.getCmp('packageType').enable(); } - } + }, + beforequery : function(e) { + if(!isDirectPackingMode()){ + e.cancel = true; + } + } } }] },{