Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js =================================================================== diff -u -r15975 -r15977 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js (.../sterilizationLoadingForm.js) (revision 15975) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js (.../sterilizationLoadingForm.js) (revision 15977) @@ -31,7 +31,26 @@ params : {barcode : rows[i].data.barcode}, success : function(response, options) { tousseStore.remove(row); - stasticsStore.load(); + + //重新刷新效率太低(判断里面有没有符合的行,如果有则直接js修改数量,否则删除) + //stasticsStore.load(); + //按科室名称与器械包名称循环去找 + //不再是刷新后台的方式进行统计,而是由js直接操作统计的数据 + if(stasticsStore.getCount() > 0){ + for(var i = 0;i < stasticsStore.getCount();i++){ + var stasticsRowData = stasticsStore.getAt(i); + if(stasticsRowData.data.depart == row.data.depart + && stasticsRowData.data.tousseDefinitionName == row.data.tousseDefinitionName){ + if(stasticsRowData.data.count > 1){ + stasticsRowData.set("count",parseInt(stasticsRowData.data.count) - 1); + }else{ + stasticsStore.remove(stasticsRowData); + } + break; + } + } + } + //待灭菌装载列表数据源重新刷新 waitSterileLoadingTousseStore.reload(); //如果篮筐内器械包数量为空,删除此篮筐记录(释放篮筐) @@ -225,6 +244,8 @@ });*/ } +//入筐器械包列表是否正在刷新中 +var reviewedPanelRefreshing = false; /** * 扫描条码及装载至灭菌筐 * (原SterileLoadingTableManager.getResultJsonStrByBarcode的dwr请求与/disinfectSystem/tousseInstanceAction!addToBasket的Ext的ajax请求合并到一起) @@ -268,48 +289,85 @@ if(obj.msg == "成功放入篮筐") { -// Ext.getCmp('tousseGrid').getStore().add(tousseInstance); - stasticsStore.load(); + for(var i=0;i 0){ + var existsStasticsData = false; + for(var i = 0;i < stasticsStore.getCount();i++){ + var stasticsRowData = stasticsStore.getAt(i); + if(stasticsRowData.data.depart == obj.depart + && stasticsRowData.data.tousseDefinitionName == obj.tousseName){ + stasticsRowData.set("count",parseInt(stasticsRowData.data.count) + 1); + existsStasticsData = true; + break; + } + } + + if(!existsStasticsData){ + var newStasticsData = new Ext.data.Record({depart:obj.depart,tousseDefinitionName:obj.tousseName,count:1}); + stasticsStore.add(newStasticsData); + } + }else{ + var newStasticsData = new Ext.data.Record({depart:obj.depart,tousseDefinitionName:obj.tousseName,count:1}); + stasticsStore.add(newStasticsData); + } + //如果未启用首尾篮筐时,文本框清空 if(enableBeginEndBarcodeScan == false || currentScanMode == 'single'){ //Ext.getCmp('barcode').setValue(''); }else{ Ext.getCmp('barcodeEnd').focus(); } - //tousseGridStore.removeAll(); + + var currentTousseInstance = new tousseInstanceRecord({ + depart:obj.depart, + tousseDefinitionName: obj.tousseName, + barcode: barcode + }); + tousseStore.insert(0,currentTousseInstance);//最新扫描的器械包放到第一行 + //console.log('barcode5='+barcode+','+new Date().format('y-m-d H:i:s') + '.' + new Date().getMilliseconds()); + //刷新后台速度太慢 + //waitSterileLoadingTousseStore.reload(); + //改为js直接操作,按条码判断,则相同一致条码的记录行删除 + if(waitSterileLoadingTousseStore.getCount() > 0){ + for(var i = 0;i < waitSterileLoadingTousseStore.getCount();i++){ + var waitSterileLoadingTousseRowData = waitSterileLoadingTousseStore.getAt(i); + if(waitSterileLoadingTousseRowData.data.objBarcode == barcode){ + waitSterileLoadingTousseStore.remove(waitSterileLoadingTousseRowData); + break; + } + } + } + + //刷新后台速度太慢 + if(!reviewedPanelRefreshing){ + reviewedPanelRefreshing = true; reviewedPanel.loader.load(reviewedPanel.root,function(){ reviewedPanel.expandAll(); - reviewedPanel.root.eachChild( function(childNode){ + /*reviewedPanel.root.eachChild( function(childNode){ if(childNode.attributes.objBarcode == basketBarcode){ - childNode.eachChild(function(node){ - + childNode.eachChild(function(node){ var tousseInstance = new tousseInstanceRecord({ tousseDefinitionName: node.attributes.objName, barcode: node.attributes.objBarcode }); - - //Ext.getCmp('tousseGrid').getStore().add(tousseInstance); - //tousseGridStore.reload();//不需要重新刷新,不然会重新查询数据库导致按id大小排序 }); } - }); + });*/ + reviewedPanelRefreshing = false; }); - - for(var i=0;i