Index: ssts-web/src/main/webapp/disinfectsystem/invoice/invoicePlanExtractedForm.js =================================================================== diff -u -r20969 -r21093 --- ssts-web/src/main/webapp/disinfectsystem/invoice/invoicePlanExtractedForm.js (.../invoicePlanExtractedForm.js) (revision 20969) +++ ssts-web/src/main/webapp/disinfectsystem/invoice/invoicePlanExtractedForm.js (.../invoicePlanExtractedForm.js) (revision 21093) @@ -1302,6 +1302,7 @@ recyclingapplicationStore.baseParams['invoicePlanId'] = selectedInvoicePlanId; recyclingapplicationStore.baseParams['applyDate'] = selectedApplyDate; recyclingapplicationStore.baseParams['tousseType'] = encodeURI(selectedTousseType); + recyclingapplicationStore.baseParams['disposableGoodsType'] = encodeURI(selectedDisposableGoodsType); }); recyclingapplicationStore.load(); Index: ssts-web/src/main/webapp/ext/js/multiSelectCombo.js =================================================================== diff -u -r16228 -r21093 --- ssts-web/src/main/webapp/ext/js/multiSelectCombo.js (.../multiSelectCombo.js) (revision 16228) +++ ssts-web/src/main/webapp/ext/js/multiSelectCombo.js (.../multiSelectCombo.js) (revision 21093) @@ -96,7 +96,22 @@ }, this); return c.join(this.separator); - }, + }, + getCheckedCount: function () + { + var count = 0; + var c = []; + var snapshot = this.store.snapshot || this.store.data; + snapshot.each(function (r) + { + if (r.get(this.checkField)) + { + ++count; + } + }, this); + + return count; + }, onBeforeQuery: function (qe) { qe.query = qe.query.replace(new RegExp(RegExp.escape(this.getCheckedDisplay()) + '[ ' + this.separator + ']*'), ''); Index: ssts-web/src/main/webapp/disinfectsystem/invoice/invoicePlanExtractedView.js =================================================================== diff -u -r19989 -r21093 --- ssts-web/src/main/webapp/disinfectsystem/invoice/invoicePlanExtractedView.js (.../invoicePlanExtractedView.js) (revision 19989) +++ ssts-web/src/main/webapp/disinfectsystem/invoice/invoicePlanExtractedView.js (.../invoicePlanExtractedView.js) (revision 21093) @@ -9,9 +9,15 @@ */ var selectedApplyDate; var selectedTousseType; +var selectedDisposableGoodsType; var appFormType = ''; var invoiceDepartGroups = ''; var appDepartCode = ''; + +var diposableGooodsStore = new Ext.data.SimpleStore({ + fields : [ 'typeName' ], + url : WWWROOT + '/disinfectSystem/diposableGoodsAction!getDiposableGoodsType.do' +}); //申请科室Store var appDepartJsonStore = new Ext.data.Store({ proxy : new Ext.data.HttpProxy({ @@ -28,10 +34,24 @@ ) }); +function onDisposableGoodsTousseTypeChange(combo, record){ + if(!sstsConfig.invoicePlanExtractedView_showDisposableGoodsType){ + return ; + } + var c = record.get(combo.checkField); + var disposableGoodsTypeCmp = Ext.getCmp('disposableGoodsType'); + if(c){ + disposableGoodsTypeCmp.selectAll(); + }else{ + disposableGoodsTypeCmp.deselectAll(); + } +} function processListParams(isSetDateValue,isLoad){ selectedApplyDate = Ext.getCmp('applyDate').getValue(); selectedTousseType = Ext.getCmp('tousseType').getValue(); - + if(sstsConfig.invoicePlanExtractedView_showDisposableGoodsType){ + selectedDisposableGoodsType = Ext.getCmp('disposableGoodsType').getValue(); + } appDepartCode = Ext.getCmp('appDepart').getValue(); if(!isUndefinedOrNullOrEmpty(appDepartCode)){ invoiceDepartGroups = appDepartCode; @@ -64,6 +84,7 @@ store.baseParams['departCode'] = invoiceDepartGroups; store.baseParams['applyDate'] = selectedApplyDate; store.baseParams['tousseType'] = selectedTousseType; + store.baseParams['disposableGoodsType'] = selectedDisposableGoodsType; store.baseParams['appFormType'] = appFormType; //刷新列表界面 store.load(); @@ -219,7 +240,10 @@ function renderCallModifyFunction(v, p, record){ return "" + v + ""; } - + diposableGooodsStore.on('load', function(){ + Ext.getCmp('disposableGoodsType').selectAll(); + }); + diposableGooodsStore.load(); var departGroupStore = new Ext.data.SimpleStore({ fields : ['id', 'shift','departCode' ], url : WWWROOT + '/disinfectSystem/invoiceDepartmentAction!loadDepartGroup.do' @@ -378,6 +402,7 @@ triggerAction : 'all', listeners : { select : function(combo, record, index){ + onDisposableGoodsTousseTypeChange(combo, record); refreshList(); } }, @@ -424,6 +449,38 @@ thiz.selectText(); } } + }, { + text : '一次性物品类型:', + hidden : !sstsConfig.invoicePlanExtractedView_showDisposableGoodsType + },{ + xtype : 'multiSelect', + id : 'disposableGoodsType', + name : 'disposableGoodsType', + hidden : !sstsConfig.invoicePlanExtractedView_showDisposableGoodsType, + valueField : 'typeName', + displayField : 'typeName', + allowBlank : true, + editable : false, + fieldLabel:'类型', + width : 150, + emptyText:'请选择物品类型', + mode:'local', + store : diposableGooodsStore, +// forceSelection : true, + triggerAction : 'all', + listeners : { + select : function(combo, record, index){ + refreshList(); + }, + beforeselect:function(combo, record, index){ + var c = record.get(combo.checkField); + if(combo.getCheckedCount() <= 1 && c){ + return false; + } + return true; + } + }, + anchor : '95%' } ] });