Index: ssts-web/src/main/webapp/disinfectsystem/packing/splitForeignTousseView.js =================================================================== diff -u -r26132 -r26749 --- ssts-web/src/main/webapp/disinfectsystem/packing/splitForeignTousseView.js (.../splitForeignTousseView.js) (revision 26132) +++ ssts-web/src/main/webapp/disinfectsystem/packing/splitForeignTousseView.js (.../splitForeignTousseView.js) (revision 26749) @@ -1,5 +1,6 @@ var tempforeignTousseName=""; var splitForeignTousse_confirmIndicatorCardWin = null; +var rowNum = 0; function validateValidUntil(foreignTousseName,supplierName){ var showResult = ""; var splitedTousseStore = top.Ext4.getCmp("splitedTousseGrid").getStore(); @@ -169,7 +170,8 @@ packingType : type, bigPackage : "否", toolAmount : toolAmount, - implantAmount : implantAmount + implantAmount : implantAmount, + rowNum:rowNum++ }]; splitedTousseStore.add(item); @@ -265,6 +267,49 @@ } barcodeField.setValue(""); } +function backWaitSplitMaterialGrid(dataArrStr){ + var rowNumCurent = dataArrStr.rowNum; + var splitedTousseGridStore = top.Ext4.getCmp("splitedTousseGrid").getStore(); + for( var m = 0; m < splitedTousseGridStore.getCount();m++){ + var splitedTousseGridStoreData= splitedTousseGridStore.getAt(m); + if(splitedTousseGridStoreData.data.rowNum == rowNumCurent){ + + //如果还存在已拆分的材料,就不允许返回 + var splitedMaterialGridCount = top.Ext4.getCmp("splitedMaterialGrid").getStore().getCount(); + if(splitedMaterialGridCount > 0){ + showResult('还存在已拆分的材料!', null); + return; + } + + var materialsJsonArray = splitedTousseGridStoreData.data.materialsJsonArray; + for(var j = 0;j < materialsJsonArray.length;j++){ + //如果待拆分的材料和已拆分的器械包有相同的,就只做数量的累加 + var waitSplitMaterialGridStore = top.Ext4.getCmp("waitSplitMaterialGrid").getStore(); + var existsStasticsData = false; + for(var k = 0;k < waitSplitMaterialGridStore.getCount();k++){ + var waitSplitMaterialGridStoreData= waitSplitMaterialGridStore.getAt(k); + if(waitSplitMaterialGridStoreData.data.materialName == materialsJsonArray[j].name){ + waitSplitMaterialGridStoreData.set("splitAmount", parseInt(waitSplitMaterialGridStoreData.data.materialAmount) + parseInt(materialsJsonArray[j].materialAmount)); + waitSplitMaterialGridStoreData.set("materialAmount", parseInt(waitSplitMaterialGridStoreData.data.materialAmount) + parseInt(materialsJsonArray[j].materialAmount)); + existsStasticsData = true; + break; + } + } + + if(!existsStasticsData){ + var backItem = [{ + materialName : materialsJsonArray[j].name, + splitAmount : materialsJsonArray[j].materialAmount, + materialAmount : materialsJsonArray[j].materialAmount, + includeImplant : materialsJsonArray[j].includeImplant + }]; + top.Ext4.getCmp("waitSplitMaterialGrid").getStore().insert(0,backItem); + } + } + splitedTousseGridStore.remove(splitedTousseGridStore.getAt(m));//删除 + } + } +} var cameraPhotos = []; function splitForeignTousse(packTaskId,foreignTousseName,showName,invoicePlanId,thizAmount,supplierName,basketBarcode,packageType,sterilingType){ @@ -431,7 +476,8 @@ {name : 'materialNames',mapping : 'materialNames'}, {name : 'toolAmount',mapping : 'toolAmount'}, {name : 'materialsJsonArray',mapping : 'materialsJsonArray'}, - {name : 'implantAmount',mapping : 'implantAmount'} + {name : 'implantAmount',mapping : 'implantAmount'}, + {name : 'rowNum',mapping : 'rowNum'} ] }), columns:[{ @@ -489,6 +535,15 @@ width : 90, align : 'center', dataIndex:'implantAmount' + },{ + header : "操作", + dataIndex : 'tousseName', + width : 70, + renderer: function(v,p,record,index){ + var dataArrStr = Ext.util.JSON.encode(record.data); + dataArrStr = dataArrStr.replace(/\"/g, """); // 双引号转义处理 + return ""; + } }] });