Index: ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js =================================================================== diff -u -r15164 -r15243 --- ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 15164) +++ ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 15243) @@ -2,6 +2,7 @@ Ext4.require(['Ext4.data.*', 'Ext4.grid.*']); var packingToussesArray = []; // 装配的器械包数组,用于Selenium自动化测试 +var packedToussesArray = [];// 用于一次打印所有装配的包 var formPanel; var deletePackingTask; var supplement; @@ -1485,6 +1486,7 @@ handler : function() { packingToussesArray = []; // 清除所装配的器械包数组 + packedToussesArray = []; // 首先处理标识牌的打印 var scanScanIDCardBarcode = Ext4.getCmp('scanIdCardBarcode'); @@ -1598,8 +1600,10 @@ return; } //请求后台装配方法 - packingTousse(basketBarcode,taskIdArray.join(";"),tousseName,tousseType,pNode.get('amount'),packageType,sterilingType,supplierName,departmentArray.join(";"),pNode.get('urgentAmount')); + packingTousse(false,basketBarcode,taskIdArray.join(";"),tousseName,tousseType,pNode.get('amount'),packageType,sterilingType,supplierName,departmentArray.join(";"),pNode.get('urgentAmount')); }); + // 一次打印 + doPrintLabels(packedToussesArray); //删除篮筐内物品 deleteBasketItems(delBasketItems); //打印后去掉选中的钩 @@ -1674,9 +1678,11 @@ } }); - packingTousse('',taskIdArray.join(";"),tousseName,tousseType,pNode.get('amount'),packageType,sterilingType,supplierName,departmentArray.join(";"),urgentAmount); + packingTousse(false,'',taskIdArray.join(";"),tousseName,tousseType,pNode.get('amount'),packageType,sterilingType,supplierName,departmentArray.join(";"),urgentAmount); }); + // 一次打印 + doPrintLabels(packedToussesArray); waitPackingTreeGrid.getStore().reload(); }else{ showResult('请选择要打印的行!'); @@ -2212,7 +2218,7 @@ var department = taskNode.get("department"); var urgentAmount = taskNode.get("urgentAmount"); // 装配 - packed = packingTousse(basketBarcode,taskId,tousseName,tousseType,1,packageType,sterilingType,supplierName,department,urgentAmount); + packed = packingTousse(true,basketBarcode,taskId,tousseName,tousseType,1,packageType,sterilingType,supplierName,department,urgentAmount); if(packed){ addTaskItemsToDelete(tousseItemsToDelete,tousseName,taskId,1); } @@ -2243,53 +2249,6 @@ } } -function printTousseByNode(tousseNode){ - var waitPackingTreeGrid = Ext4.getCmp('waitPackingTreeGrid'); - var packed = false; - var tousseName = tousseNode.get("tousseName"); - var packingAmount = tousseNode.get('amount'); - var tousseItemsToDelete = new Array(); - setTousseItemsToDelete(tousseItemsToDelete,tousseName); - var selLength = 1; - Ext4.each(tousseNode.childNodes,function(cNode){ - if(packingAmount <= 0){ - return; - } - var tousseName = cNode.get("tousseName"); - var status = cNode.get("status"); - var basketBarcode = cNode.get("basketBarcode"); - var taskId = cNode.get("taskId"); - var amount = cNode.get("amount"); - if(amount > packingAmount){ - amount = packingAmount; - } - var packageType = cNode.get("packageType"); - if(packageType == "" || selLength == 1){ - packageType = Ext4.getCmp('packageType').getValue(); - } - var sterilingType = cNode.get("sterilingMethod"); - if(sterilingType == "" || selLength == 1){ - sterilingType = Ext4.getCmp('sterilingType').getValue(); - } - var sType = Ext4.getCmp('sterilingType'); - var tousseType = cNode.get("tousseType"); - var supplierName = cNode.get("supplierName"); - var damages = cNode.get("damages"); - var errors = cNode.get("errors"); - var department = cNode.get("department"); - var urgentAmount = cNode.get("urgentAmount"); - packed = packingTousse(basketBarcode,taskId,tousseName,tousseType,amount,packageType,sterilingType,supplierName,department,urgentAmount); - if(packed){ - packingAmount -= amount; - addTaskItemsToDelete(tousseItemsToDelete,tousseName,taskId,amount); - } - }); - // 删除篮筐物品 - deleteBasketItems(tousseItemsToDelete); - //刷新待装配列表 - waitPackingTreeGrid.getStore().reload(); - return packed; -} // 验证参数 function validateFormParamsForPack(){ if(!Ext4.getCmp('operator').getValue()){ @@ -2323,7 +2282,7 @@ } // 装配器械包 -function packingTousse(basketBarcode,taskIds,tousseName,tousseType,packAmount,packageType,sterilingType,supplierName,department,urgentAmount){ +function packingTousse(printImmediately,basketBarcode,taskIds,tousseName,tousseType,packAmount,packageType,sterilingType,supplierName,department,urgentAmount){ if(!validateFormParamsForPack()){ return false; } @@ -2412,7 +2371,7 @@ var result = Ext4.decode(rs); var showName = tousseName; if (result.success){ - processAfterPacking(result, showName, packAmount); + processAfterPacking(printImmediately,result, showName, packAmount); } else{ //如果返回失败的结果类型为stockNotEnough(即库存不足,则进行提示) @@ -2430,7 +2389,7 @@ var result = Ext4.decode(rs1); if(result.success){ - processAfterPacking(result, showName, packAmount); + processAfterPacking(printImmediately,result, showName, packAmount); } } @@ -2446,11 +2405,12 @@ return true; } -function processAfterPacking(result, showName, packAmount){ +function processAfterPacking(printImmediately,result, showName, packAmount){ var tousses = result.tousses; packingToussesArray = packingToussesArray.concat(tousses); + packedToussesArray = packedToussesArray.concat(tousses); // 取装配物品的是否审核和是否打印的属性(第一个元素的即可) var isReview = tousses[0].isReview; @@ -2471,9 +2431,9 @@ else{ // 该物品的器械包定义是否需要打印标签 if (isPrint){ - - doPrintLabels(tousses); - + if(printImmediately){ + doPrintLabels(tousses); + } } else{ showResult(packAmount + "个" + showName + "装配完成,该物品设置为不打印条码标签!");