Index: ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js =================================================================== diff -u -r15878 -r15924 --- ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js (.../goodsTemplateApplicationView.js) (revision 15878) +++ ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js (.../goodsTemplateApplicationView.js) (revision 15924) @@ -226,11 +226,14 @@ //Ext4 结算科室Store var departJsonStore = new Ext4.data.JsonStore({ + // pageSize : 15, + autoLoad : false, proxy : { type : 'ajax', url : WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!getSettleAccountsDepartJson.do', reader : { type : 'json', + totalProperty : 'totalCount', root : 'data' } }, @@ -275,11 +278,15 @@ //Ext4 申请科室Store var appDepartJsonStore = new Ext4.data.Store({ + //limit参数,每页显示条数,默认为25 + pageSize: 15, + autoLoad:false, proxy : { type : 'ajax', url : WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!getApplicationDepartJson.do', reader : { type : 'json', + totalProperty : 'totalCount', root : 'data' } }, @@ -638,6 +645,7 @@ return validateFlag; } + function getExsistNode(treeStore, nodeName){ var foundNode = null; var rootNode = treeStore.getRootNode(); @@ -729,13 +737,19 @@ //TODO 5 取消科室申请模板 function addItems(tousseDefinitionID,name,count,diposable,isApplyEntireTousse,price,externalCode,storageAmount,tousseType,materials,unit,packageSpec,minApplyAmount,maxApplyAmount,urgentAmount,para){ var foundNode = null; + var needToCheckNode = { + tousseDefinitionID : tousseDefinitionID + } + var goodsAppDomObj = GoodsAppHelper.getGoodsAppDomObj(); if('是' == diposable){ - foundNode = getExsistNode(rightTemplateStore, name); + foundNode = goodsAppDomObj.getExitsNodeByNode(rightTemplateStore, needToCheckNode); + // foundNode = getExsistNode(rightTemplateStore, name); if (foundNode != null){ updateNode('diposableTreeGrid', foundNode, count, price,urgentAmount,para); } }else{ - foundNode = getExsistNodeByTousseDefinitionID(leftTemplateStore, tousseDefinitionID); + foundNode = goodsAppDomObj.getExitsNodeByNode(leftTemplateStore, needToCheckNode); + // foundNode = getExsistNodeByTousseDefinitionID(leftTemplateStore, tousseDefinitionID); if (foundNode != null){ updateNode('tousseTreeGrid', foundNode, count, price,urgentAmount); if(tousseType == tousseType_disinfectGoods){ @@ -902,27 +916,6 @@ top.Ext4.getCmp('count1').focus(); } -/** - * 判断表格是否已经存在该物品 - * @param name 新添加物品的名字 - * @param type 新添加物品的类型 - * @returns {boolean} true就是存在,false就是不存在 - */ -function judgeIfExits(name,type) { - var node = "一次性物品" == type ? rightTemplateStore.getRootNode().childNodes:leftTemplateStore.getRootNode().childNodes; - var isExits = false; - if (!isUndefinedOrNullOrEmpty(node)) { - Ext.each(node,function (record) { - if (record.get('name') == name){ - showResult("已经存在" + name + ",不能重复添加!"); - isExits = true; - //此return false只是用于中断extJs的迭代,不是函数的返回 - return false; - } - }); - } - return isExits; -} function addRecyclingApplicationItem(){ var id = curSelectedGoods.id; @@ -939,6 +932,30 @@ var unit = top.Ext4.getCmp('unit').getValue(); var packageSpec = top.Ext4.getCmp('packageSpec').getValue(); var isApplyEntireTousse = top.Ext4.getCmp('isApplyEntireTousse').getValue(); + + + var needToCheckNode = { + tousseDefinitionID : id, + name : name, + tousseType : tousseType + } + var findNode = null; + var goodsAppDomObj = GoodsAppHelper.getGoodsAppDomObj(); + // 从左边和右边分别寻找,看看是否已经存在相同的物品(用于提交了器械包申请单,但下次打开这张单,申请的器械包会去到右边,这时又申请了同样的物品,这时就需要判断左边和右边的store了 + //如果是器械包则校验TousseDefinitionID,如果是消毒物品则校验checkNameAndType + if (tousseType != tousseType_disinfectGoods){ + findNode = goodsAppDomObj.getExitsNodeByNode(rightTemplateStore, needToCheckNode) || goodsAppDomObj.getExitsNodeByNode(leftTemplateStore, needToCheckNode); + } + else { + findNode = goodsAppDomObj.getExitsNodeByNode(rightTemplateStore, needToCheckNode, goodsAppDomObj.checkNameAndType) || goodsAppDomObj.getExitsNodeByNode(leftTemplateStore, needToCheckNode, goodsAppDomObj.checkNameAndType); + } + if (!Ext4.isEmpty(findNode) && !Ext4.isEmpty(findNode.get('count'))){ + showResult("已经存在:" + name + ",请不要重复添加!"); + return false; + } + + + //para对象,里面可以有多钟属性,方便以后扩展addItems用 var para = { behavior : 'add', @@ -2232,6 +2249,10 @@ triggerAction : 'all', hideTrigger : true, typeAhead : false, + pageSize : 100, + width : 400, + matchFieldWidth: false, + listConfig: {width: 300}, allowBlank : false, flex : 1, listeners:{ @@ -2307,6 +2328,10 @@ triggerAction : 'all', hideTrigger : true, typeAhead : false, + // pageSize : 100, + width : 400, + matchFieldWidth: false, + listConfig: {width: 300}, allowBlank : false, flex : 1, listeners:{ @@ -2640,6 +2665,9 @@ ] }); + if (Ext4.isEmpty(applicationWindow)){ + allGoodsComboStore.reload(); + } applicationWindow = new top.Ext4.window.Window({ @@ -2657,8 +2685,7 @@ applicationWindow.show(); - allGoodsComboStore.reload(); - + // loadMask = new Ext4.LoadMask({msg:'数据处理中,请稍候......',target:applicationWindow}); if (!top.Ext4.isIE6 && !top.Ext4.isIE7){ createExt4Mask.call(objMask,'loadMask','数据处理中,请稍候......',applicationWindow);