Index: ssts-web/src/main/webapp/disinfectsystem/config/szsdsrmyy/config.js =================================================================== diff -u -r33658 -r33767 --- ssts-web/src/main/webapp/disinfectsystem/config/szsdsrmyy/config.js (.../config.js) (revision 33658) +++ ssts-web/src/main/webapp/disinfectsystem/config/szsdsrmyy/config.js (.../config.js) (revision 33767) @@ -278,6 +278,8 @@ changFontColorOfSterilizationProcedureAndSterilizationPurposeInSterilizationRecordInformation:true, //回收页面扫描物品唯一条码回收时限制只能在对应的申请单进行回收 recyclingOnlyInTheCorrespondingApplicationFormWhenScanningUniqueBarcode:true, + //灭菌装载模块中,将篮筐物品统计信息和篮筐物品明细合并显示 + combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule:true, //加急发货计划背景颜色 colorChangeRuleOfInvoicPlanToSendGoodsList:2, //启用器械包进度条 Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingView.jsp =================================================================== diff -u -r29513 -r33767 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingView.jsp (.../sterilizationLoadingView.jsp) (revision 29513) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingView.jsp (.../sterilizationLoadingView.jsp) (revision 33767) @@ -12,6 +12,9 @@ .x-tree-node a span{ display: inline-block; } + .x-column-tree .x-tree-selected { + background: #CDDDD2 !important; + } Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js =================================================================== diff -u -r33729 -r33767 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js (.../sterilizationLoadingForm.js) (revision 33729) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js (.../sterilizationLoadingForm.js) (revision 33767) @@ -1,6 +1,7 @@ var tousseStore;//篮筐物品明细 var stasticsStore;//篮筐物品统计 var reviewedPanel;//所有整理中的篮筐明细 +var tousseGrid2; var reviewedStatisticsGrid;//所有整理中的篮筐的器械包统计信息 var reviewedStatisticsStore;//所有整理中篮筐的器械包统计信息 var waitSterileLoadingTousseStore;//待灭菌装载的器械包 @@ -45,11 +46,53 @@ } //刷新入筐器械包列表 -function reloadReviewedPanel(reviewedPanel,callback){ +function reloadReviewedPanel(reviewedPanel, callback) { reviewedPanel.loader.baseParams.basketId = ''; reviewedPanel.loader.load(reviewedPanel.root, callback);//重新加载树结构 } +//刷新篮筐物品明细 +function reloadBasketGrid(basketBarcode, objBarcode, callback) { + var tousseGrid2 = Ext.getCmp('tousseGrid2'); + if (basketBarcode) { + tousseGrid2.loader.baseParams.basketBarcode = basketBarcode; + } + tousseGrid2.loader.load(tousseGrid2.root, callback || function () { + var rows = tousseGrid2.root; + var itemCount = rows.childNodes.length; + var barcodeAmount = 0; + for (var i = 0; i < rows.childNodes.length; i++) { + var item1 = rows.childNodes[i].attributes; + barcodeAmount += parseInt(item1.amount); + if (objBarcode) { + if (sstsConfig.showDepartOfTousseInstanceSterile) { + for (var j = 0; j < item1.children.length; j++) { + var item2 = item1.children[j]; + for (var k = 0; k < item2.children.length; k++) { + var item3 = item2.children[k]; + if (item3.objBarcode == objBarcode) { + tousseGrid2.root.childNodes[i].expand(true, true); + tousseGrid2.root.childNodes[i].childNodes[j].childNodes[k].select(); + return true; + } + } + } + } else { + for (var j = 0; j < item1.children.length; j++) { + var item2 = item1.children[j]; + if (item2.objBarcode == objBarcode) { + tousseGrid2.root.childNodes[i].expand(true, true); + tousseGrid2.root.childNodes[i].childNodes[j].select(); + return true; + } + } + } + } + } + tousseGrid2.setTitle('篮筐物品统计信息:' + itemCount + ' 种包,共 ' + barcodeAmount + ' 个'); + }); +} + var barcodeLable = '条码扫描'; var isLoading = false; //灭菌装载是否启用首尾条码机制(只有为true时才启用,未配置或配置其它值时则不启用) @@ -78,7 +121,6 @@ return false; } - /** * 移除篮筐物品统计的数据 */ @@ -133,10 +175,25 @@ showResult(result.message); return; } - tousseStore.load(); - stasticsStore.load() + stasticsStore.load(); + var count; + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid('', '', function () { + var rows = tousseGrid2.root; + count = rows.childNodes.length; + var barcodeAmount = 0; + for (var i = 0; i < rows.childNodes.length; i++) { + var item1 = rows.childNodes[i].attributes; + barcodeAmount += parseInt(item1.amount); + } + tousseGrid2.setTitle('篮筐物品统计信息:' + count + ' 种包,共 ' + barcodeAmount + ' 个'); + }); + } else { + tousseStore.load(); + count = tousseStore.getCount(); + } //如果篮筐内器械包数量为空,删除此篮筐记录(释放篮筐) - if (tousseStore.getCount() == 0) { + if (count == 0) { delEmptyBasket(); } else { reloadReviewedPanel(reviewedPanel); @@ -164,12 +221,27 @@ showResult(result.message); return; } - for (var i = 0; i < rowDataArray.length; i++) { - tousseStore.remove(rowDataArray[i]); + var count; + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid('', '', function () { + var rows = tousseGrid2.root; + count = rows.childNodes.length; + var barcodeAmount = 0; + for (var i = 0; i < rows.childNodes.length; i++) { + var item1 = rows.childNodes[i].attributes; + barcodeAmount += parseInt(item1.amount); + } + tousseGrid2.setTitle('篮筐物品统计信息:' + count + ' 种包,共 ' + barcodeAmount + ' 个'); + }); + } else { + for (var i = 0; i < rowDataArray.length; i++) { + tousseStore.remove(rowDataArray[i]); + } + count = tousseStore.getCount(); } stasticsStore.remove(row); //如果篮筐内器械包数量为空,删除此篮筐记录(释放篮筐) - if (tousseStore.getCount() == 0) { + if (count == 0) { delEmptyBasket(); } else { reloadReviewedPanel(reviewedPanel); @@ -195,69 +267,137 @@ } } +//移除篮筐内物品 +function removeFromBasket(row, barcode) { + Ext.Ajax.request({ + url: WWWROOT + '/disinfectSystem/tousseInstanceAction!removeFromBasket.do', + params: { barcode: barcode, reviewedBasketId: reviewedBasketId }, + success: function (response, options) { + hiddenMask();//进度条结束 + var result = Ext.decode(response.responseText); + if (!result || result.success == false) { + showResult(result.message); + return; + } + var count; + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid(); + stasticsStore.load(); + waitSterileLoadingTousseStore.reload(); + reloadReviewedPanel(reviewedPanel); + return; + } else { + tousseStore.remove(row); + count = tousseStore.getCount(); + } + + //重新刷新效率太低(判断里面有没有符合的行,如果有则直接js修改数量,否则删除) + //stasticsStore.load(); + //按科室名称与器械包名称循环去找 + //不再是刷新后台的方式进行统计,而是由js直接操作统计的数据 + if (stasticsStore.getCount() > 0) { + for (var i = 0; i < stasticsStore.getCount(); i++) { + var stasticsRowData = stasticsStore.getAt(i); + if (stasticsRowData.data.tousseDefinitionName == row.data.tousseDefinitionName) { + if (stasticsRowData.data.depart == row.data.depart || (!stasticsRowData.data.depart && !row.data.depart)) { + if (stasticsRowData.data.count > 1) { + var count = parseInt(stasticsRowData.data.count) - parseInt(row.get("amount")) + if (parseInt(count) > 0) { + stasticsRowData.set("count", count); + } else { + stasticsStore.remove(stasticsRowData); + } + } else { + stasticsStore.remove(stasticsRowData); + } + break; + } + } + } + } + //如果篮筐内器械包数量为空,删除此篮筐记录(释放篮筐) + if (count == 0) { + delEmptyBasket(); + } else { + reloadReviewedPanel(reviewedPanel); + //待灭菌装载列表数据源重新刷新 + waitSterileLoadingTousseStore.reload(); + } + }, + failure: function (response, options) { + var result = Ext.decode(response.responseText); + MsgTip.msg('提示', "后台运行异常,请稍后再试", true, 3); + hiddenMask();//进度条结束 + } + }); +} + /** * 移除篮筐物品明细的数据 */ -function removeGridItem() { - beginMask();//开启进度条 - var rows = Ext.getCmp('tousseGrid').getSelectionModel().getSelections(); - if (rows) { - for (var i = 0; i < rows.length; i++) { - var row = rows[i]; - //从篮筐里移除 - Ext.Ajax.request({ - url: WWWROOT + '/disinfectSystem/tousseInstanceAction!removeFromBasket.do', - params: { barcode: rows[i].data.barcode, reviewedBasketId: reviewedBasketId }, - success: function (response, options) { - hiddenMask();//进度条结束 - var result = Ext.decode(response.responseText); - if (!result || result.success == false) { - showResult(result.message); - return; - } - tousseStore.remove(row); - - //重新刷新效率太低(判断里面有没有符合的行,如果有则直接js修改数量,否则删除) - //stasticsStore.load(); - //按科室名称与器械包名称循环去找 - //不再是刷新后台的方式进行统计,而是由js直接操作统计的数据 - if (stasticsStore.getCount() > 0) { - for (var i = 0; i < stasticsStore.getCount(); i++) { - var stasticsRowData = stasticsStore.getAt(i); - if (stasticsRowData.data.tousseDefinitionName == row.data.tousseDefinitionName) { - if (stasticsRowData.data.depart == row.data.depart || (!stasticsRowData.data.depart && !row.data.depart)) { - if (stasticsRowData.data.count > 1) { - var count = parseInt(stasticsRowData.data.count) - parseInt(row.get("amount")) - if (parseInt(count) > 0) { - stasticsRowData.set("count", count); - } else { - stasticsStore.remove(stasticsRowData); - } - } else { - stasticsStore.remove(stasticsRowData); - } - break; - } +function removeGridItem(objName, depart, objBarcode) { + //beginMask();//开启进度条 + var rows; + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + rows = Ext.getCmp('tousseGrid2').root; + if (objBarcode !== '') { + var barcode = objBarcode; + if (barcode !== '') { + removeFromBasket('', barcode); + } + } else if (depart !== '') { + var arr = []; + for (var i = 0; i < rows.childNodes.length; i++) { + var item1 = rows.childNodes[i].attributes; + if (item1.objName == objName) { + for (var j = 0; j < item1.children.length; j++) { + var item2 = item1.children[j]; + if (item2.objName == depart) { + for (var k = 0; k < item2.children.length; k++) { + var item3 = item2.children[k]; + arr.push(item3.objBarcode); } } } - //如果篮筐内器械包数量为空,删除此篮筐记录(释放篮筐) - if (tousseStore.getCount() == 0) { - delEmptyBasket(); + } + } + if (arr.length > 0) { + removeFromBasket('', arr.join(';')); + } + } else { + var arr = []; + for (var i = 0; i < rows.childNodes.length; i++) { + var item1 = rows.childNodes[i].attributes; + if (item1.objName == objName) { + if (sstsConfig.showDepartOfTousseInstanceSterile) { + for (var j = 0; j < item1.children.length; j++) { + var item2 = item1.children[j]; + for (var k = 0; k < item2.children.length; k++) { + var item3 = item2.children[k]; + arr.push(item3.objBarcode); + } + } } else { - reloadReviewedPanel(reviewedPanel); - //待灭菌装载列表数据源重新刷新 - waitSterileLoadingTousseStore.reload(); + for (var j = 0; j < item1.children.length; j++) { + var item2 = item1.children[j]; + arr.push(item2.objBarcode); + } } - }, - failure: function (response, options) { - var result = Ext.decode(response.responseText); - MsgTip.msg('提示', "后台运行异常,请稍后再试", true, 3); - hiddenMask();//进度条结束 } - }); + } + if (arr.length > 0) { + removeFromBasket('', arr.join(';')); + } } - + } else { + rows = Ext.getCmp('tousseGrid').getSelectionModel().getSelections(); + if (rows) { + for (var i = 0; i < rows.length; i++) { + var row = rows[i]; + //从篮筐里移除 + removeFromBasket(row, rows[i].data.barcode); + } + } } } @@ -307,9 +447,30 @@ } function getTousseStoreBarcodes() { var barcodes = []; - for (var i = 0; i < tousseStore.getCount(); i++) { - var record = tousseStore.getAt(i); - barcodes.push(record.data.barcode); + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + var rows = tousseGrid2.root; + for (var i = 0; i < rows.childNodes.length; i++) { + var item1 = rows.childNodes[i].attributes; + if (sstsConfig.showDepartOfTousseInstanceSterile) { + for (var j = 0; j < item1.children.length; j++) { + var item2 = item1.children[j]; + for (var k = 0; k < item2.children.length; k++) { + var item3 = item2.children[k]; + barcodes.push(item3.objBarcode); + } + } + } else { + for (var j = 0; j < item1.children.length; j++) { + var item2 = item1.children[j]; + barcodes.push(item2.objBarcode); + } + } + } + } else { + for (var i = 0; i < tousseStore.getCount(); i++) { + var record = tousseStore.getAt(i); + barcodes.push(record.data.barcode); + } } var jsonObject = new Object(); jsonObject.scannedBarcodes = barcodes; @@ -352,7 +513,12 @@ hiddenMask(); var result = Ext.decode(response.responseText); if (result.success) { - tousseStore.load(); + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid(); + } else { + tousseStore.load(); + } + stasticsStore.load() //刷新入筐器械包列表的数据 reloadReviewedPanel(reviewedPanel); @@ -413,13 +579,13 @@ * */ function scanBarcodeAndAddToBasket(barcode, mode) { - //beginMask();//开启进度条 + beginMask();//开启进度条 //灭菌篮筐条码 var basketBarcode = Ext.getCmp('basketBarcode').getValue(); SterileLoadingTableManager.scanBarcodeAndAddTousseToBasket(barcode, getTousseStoreBarcodes(), basketBarcode, function (jsonStr) { //篮筐物品明细grid列表的包的灭菌方式 var sterilingModeFromBasketGoodsDetailGrid = getSterilingModeFromBasketGoodsDetailGrid(); - //hiddenMask(); + hiddenMask(); //console.log('barcode2='+barcode+','+new Date().format('y-m-d H:i:s') + '.' + new Date().getMilliseconds()); var obj = Ext.util.JSON.decode(jsonStr); var returnType = obj.returnType; @@ -466,9 +632,12 @@ firstSterilingTypeOfTousseInBasket = null; Ext.getCmp("basketName").setValue(obj.containerName); Ext.getCmp('basketBarcode').setValue(obj.basketBarcode); - - tousseStore.baseParams.basketBarcode = obj.basketBarcode; - tousseStore.load(); + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid(obj.basketBarcode, barcode); + } else { + tousseStore.baseParams.basketBarcode = obj.basketBarcode; + tousseStore.load(); + } stasticsStore.baseParams.basketBarcode = obj.basketBarcode; stasticsStore.load(); Ext.getCmp('barcode').setValue(""); @@ -479,9 +648,12 @@ firstSterilingTypeOfTousseInBasket = null; Ext.getCmp("basketName").setValue(obj.containerName); Ext.getCmp('basketBarcode').setValue(obj.basketBarcode); - - tousseStore.baseParams.basketBarcode = obj.basketBarcode; - tousseStore.load(); + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid(obj.basketBarcode, barcode); + } else { + tousseStore.baseParams.basketBarcode = obj.basketBarcode; + tousseStore.load(); + } stasticsStore.baseParams.basketBarcode = obj.basketBarcode; stasticsStore.load(); } @@ -508,12 +680,13 @@ } } if (obj.msg == "成功放入篮筐") { - - for (var i = 0; i < tousseStore.getCount(); i++) { - var record = tousseStore.getAt(i); - if (record.data.barcode.toUpperCase() == barcode.toUpperCase()) { - showResult('此物品已在此篮筐内'); - return; + if (!sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + for (var i = 0; i < tousseStore.getCount(); i++) { + var record = tousseStore.getAt(i); + if (record.data.barcode.toUpperCase() == barcode.toUpperCase()) { + showResult('此物品已在此篮筐内'); + return; + } } } @@ -561,7 +734,11 @@ sterilingType: obj.sterilingType, sterilingMode: obj.sterilingMode }); - tousseStore.insert(0, currentTousseInstance);//最新扫描的器械包放到第一行 + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid('', barcode); + } else { + tousseStore.insert(0, currentTousseInstance);//最新扫描的器械包放到第一行 + } //console.log('barcode5='+barcode+','+new Date().format('y-m-d H:i:s') + '.' + new Date().getMilliseconds()); //刷新后台速度太慢 @@ -624,11 +801,16 @@ Ext.getCmp("basketName").setValue(obj.containerName); Ext.getCmp('basketBarcode').setValue(barcode); - tousseStore.baseParams.basketBarcode = barcode; - tousseStore.load(); + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + reloadBasketGrid(barcode); + } else { + tousseStore.baseParams.basketBarcode = barcode; + tousseStore.load(); + } + stasticsStore.baseParams.basketBarcode = barcode; stasticsStore.load(); - reloadReviewedPanel(reviewedPanel,function(){ + reloadReviewedPanel(reviewedPanel, function () { reviewedPanel.root.eachChild(function (childNode) { if (childNode.attributes.objBarcode == basketBarcode) { childNode.eachChild(function (node) { @@ -759,19 +941,7 @@ var barcodeArray = []; for (var j = 0; tousseInstances && tousseInstances.length > 0 && j < tousseInstances.length; j++) { - var barcodeToBasket = tousseInstances[j].barcode; barcodeArray.push(tousseInstances[j].barcode); - // var barcodeAddedToBasket = false; - // for(var i=0;i 0) { @@ -925,12 +1095,27 @@ * 篮筐物品明细grid的移除函数 */ function showDelBtn(v, p, record) { - - if (SSTS_Sterilization_remove) { - return ""; + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + var objName = ''; + var depart = '' + var objBarcode = record.objBarcode || ''; + if (record.departNode == 'true' || record.departNode == true) { + objName = record.tousseName; + depart = record.objName; + } else { + objName = record.objName; + depart = record.depart || ''; + } + if (SSTS_Sterilization_remove) { + return ""; + } + } else { + if (SSTS_Sterilization_remove) { + return ""; + } } - } Ext4.tip.QuickTipManager.init(); Ext4.apply(Ext4.tip.QuickTipManager.getQuickTip(), { @@ -1041,10 +1226,9 @@ //篮筐物品明细grid的列头,根据可配置的参数进行动态定义 var tousseGridColumnArray = []; - if (showDepartOfTousseInstanceSterile) { - tousseGridColumnArray.push({ header: "科室", width: 200, sortable: true, dataIndex: 'depart' }); + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { tousseGridColumnArray.push({ - header: "器械包名称", width: 200, sortable: true, dataIndex: 'tousseDefinitionName', + header: "器械包名称", width: 250, sortable: true, dataIndex: 'objName', renderer: function (v, p, record) { if (v == undefined) { v = ""; @@ -1069,35 +1253,66 @@ return result; } }); - tousseGridColumnArray.push({ header: "条码", width: 100, sortable: true, dataIndex: 'barcode' }); + tousseGridColumnArray.push({ header: "条码", width: 200, sortable: true, dataIndex: 'objBarcode' }); } else { - tousseGridColumnArray.push({ - header: "器械包名称", width: 250, sortable: true, dataIndex: 'tousseDefinitionName', - renderer: function (v, p, record) { - if (v == undefined) { - v = ""; + if (showDepartOfTousseInstanceSterile) { + tousseGridColumnArray.push({ header: "科室", width: 200, sortable: true, dataIndex: 'depart' }); + tousseGridColumnArray.push({ + header: "器械包名称", width: 200, sortable: true, dataIndex: 'tousseDefinitionName', + renderer: function (v, p, record) { + if (v == undefined) { + v = ""; + } + var result = ""; + if (sstsConfig.enableUrgentFunction && record.data.urgentLevel && record.data.urgentLevel.colorCode != undefined) {//背景色加急级别 + var colorClassName = getClassNameForColor(record.data.urgentLevel.colorCode); + result += "
"; + result += ""; + } else if (sstsConfig.enableUrgentFunction && record.data.isUrgentTousse && record.data.isUrgentTousse == "是" && record.data.urgentLevel && record.data.urgentLevel.colorCode == undefined) {//灰色加急 + result += "
"; + result += ""; + } else { + result += v; + } + return result; } - var result = ""; - if (sstsConfig.enableUrgentFunction && record.data.urgentLevel && record.data.urgentLevel.colorCode != undefined) {//背景色加急级别 - var colorClassName = getClassNameForColor(record.data.urgentLevel.colorCode); - result += "
"; - result += ""; - } else if (sstsConfig.enableUrgentFunction && record.data.isUrgentTousse && record.data.isUrgentTousse == "是" && record.data.urgentLevel && record.data.urgentLevel.colorCode == undefined) {//灰色加急 - result += "
"; - result += ""; - } else { - result += v; + }); + tousseGridColumnArray.push({ header: "条码", width: 100, sortable: true, dataIndex: 'barcode' }); + } else { + tousseGridColumnArray.push({ + header: "器械包名称", width: 250, sortable: true, dataIndex: 'tousseDefinitionName', + renderer: function (v, p, record) { + if (v == undefined) { + v = ""; + } + var result = ""; + if (sstsConfig.enableUrgentFunction && record.data.urgentLevel && record.data.urgentLevel.colorCode != undefined) {//背景色加急级别 + var colorClassName = getClassNameForColor(record.data.urgentLevel.colorCode); + result += "
"; + result += ""; + } else if (sstsConfig.enableUrgentFunction && record.data.isUrgentTousse && record.data.isUrgentTousse == "是" && record.data.urgentLevel && record.data.urgentLevel.colorCode == undefined) {//灰色加急 + result += "
"; + result += ""; + } else { + result += v; + } + return result; } - return result; - } - }); - tousseGridColumnArray.push({ header: "条码", width: 200, sortable: true, dataIndex: 'barcode' }); + }); + tousseGridColumnArray.push({ header: "条码", width: 200, sortable: true, dataIndex: 'barcode' }); + } } tousseGridColumnArray.push({ header: "灭菌方式", width: 60, sortable: true, dataIndex: 'sterilingMode' }); tousseGridColumnArray.push({ header: "数量", width: 50, sortable: true, dataIndex: 'amount' }); @@ -1183,138 +1398,173 @@ sm: new Ext.grid.RowSelectionModel({ singleSelect: true }) }); - - var basketPanel = new Ext.FormPanel({ - frame: true, - border: 0, - labelSeparator: ':', - bodyStyle: 'padding:5px 5px 0px 5px', - //autoWidth : true, - autoHeight: true, - region: 'west', + var items = [{ + xtype: 'fieldset', width: document.body.clientWidth / 2, - labelAlign: 'right', - autoScroll: false, + height: enableBeginEndBarcodeScan ? 80 : 60, + title: '条码扫描框', layout: 'column', items: [{ - xtype: 'fieldset', - width: document.body.clientWidth / 2, - height: enableBeginEndBarcodeScan ? 80 : 60, - title: '条码扫描框', - layout: 'column', + columnWidth: 0.5, + layout: 'form', + hidden: !enableBeginEndBarcodeScan, + items: [ + { + xtype: 'combo', + id: 'scanMode', + name: 'scanMode', + fieldLabel: '扫描模式', + valueField: 'scanModeCode', + displayField: 'scanModeName', + triggerAction: 'all', + width: 75, + listWidth: 75, + allowBlank: true, + editable: false, + value: currentScanMode, + store: new Ext.data.SimpleStore({ + fields: ['scanModeCode', 'scanModeName'], + data: [['single', '单个条码'], ['area', '首尾条码']] + }), + mode: 'local', + forceSelection: true, + triggerAction: 'all', + listeners: { + select: function (combo, record, index) { + + currentScanMode = record.get("scanModeCode"); + //首尾条码全部清空,且让首条码得到焦点 + Ext.getCmp('barcode').setValue(""); + Ext.getCmp('barcodeEnd').setValue(""); + Ext.getCmp('barcode').focus(); + } + }//,anchor : '90%' + } + ] + }, { + columnWidth: 0.5, + layout: 'form', items: [{ - columnWidth: 0.5, - layout: 'form', - hidden: !enableBeginEndBarcodeScan, - items: [ - { - xtype: 'combo', - id: 'scanMode', - name: 'scanMode', - fieldLabel: '扫描模式', - valueField: 'scanModeCode', - displayField: 'scanModeName', - triggerAction: 'all', + layout: 'column', + items: [{ + columnWidth: 0.75, + layout: 'form', + items: [{ + xtype: 'textfield', + id: 'barcode', + name: 'barcode', + fieldLabel: barcodeLable, width: 75, - listWidth: 75, - allowBlank: true, - editable: false, - value: currentScanMode, - store: new Ext.data.SimpleStore({ - fields: ['scanModeCode', 'scanModeName'], - data: [['single', '单个条码'], ['area', '首尾条码']] - }), - mode: 'local', - forceSelection: true, - triggerAction: 'all', + // lableWidth:10, + enableKeyEvents: true, listeners: { - select: function (combo, record, index) { - - currentScanMode = record.get("scanModeCode"); - //首尾条码全部清空,且让首条码得到焦点 - Ext.getCmp('barcode').setValue(""); - Ext.getCmp('barcodeEnd').setValue(""); - Ext.getCmp('barcode').focus(); + render: function (c) { + c.getEl().on('keypress', keypressBeginBarcodeCallBack); } - }//,anchor : '90%' - } - ] - }, { - columnWidth: 0.5, - layout: 'form', - items: [{ - layout: 'column', + } + }] + }, + { + columnWidth: 0.25, + layout: 'form', items: [{ - columnWidth: 0.75, - layout: 'form', - items: [{ - xtype: 'textfield', - id: 'barcode', - name: 'barcode', - fieldLabel: barcodeLable, - width: 75, - // lableWidth:10, - enableKeyEvents: true, - listeners: { - render: function (c) { - c.getEl().on('keypress', keypressBeginBarcodeCallBack); - } - } - }] - }, - { - columnWidth: 0.25, - layout: 'form', - items: [{ - xtype: 'button', - text: '刷新', - iconCls: 'btn_ext_refresh1', - handler: function () { - window.location.reload(true); - //window.location.href = WWWROOT + '/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingView.jsp'; - } - }] - } - ] + xtype: 'button', + text: '刷新', + iconCls: 'btn_ext_refresh1', + handler: function () { + window.location.reload(true); + //window.location.href = WWWROOT + '/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingView.jsp'; + } + }] } ] + } + ] - }, { - columnWidth: 0.5, - layout: 'form', - hidden: !enableBeginEndBarcodeScan, - items: [{ - xtype: 'textfield', - id: 'barcodeEnd', - name: 'barcodeEnd', - fieldLabel: '条码(尾)', - width: 75, - // lableWidth:10, - enableKeyEvents: true, - listeners: { - render: function (c) { - c.getEl().on('keypress', keypressEndBarcodeCallBack); - } + }, { + columnWidth: 0.5, + layout: 'form', + hidden: !enableBeginEndBarcodeScan, + items: [{ + xtype: 'textfield', + id: 'barcodeEnd', + name: 'barcodeEnd', + fieldLabel: '条码(尾)', + width: 75, + // lableWidth:10, + enableKeyEvents: true, + listeners: { + render: function (c) { + c.getEl().on('keypress', keypressEndBarcodeCallBack); } - }] - }, { - columnWidth: 0.5, - layout: 'form', - items: [{ - xtype: 'textfield', - id: 'basketName', - name: 'basketName', - width: 75, - // lableWidth:10, - fieldLabel: '篮筐名称', - readOnly: true - }] + } }] }, { - xtype: 'hidden', - id: 'basketBarcode', - name: 'basketBarcode' - }, stasticsGrid, tousseGrid] + columnWidth: 0.5, + layout: 'form', + items: [{ + xtype: 'textfield', + id: 'basketName', + name: 'basketName', + width: 75, + // lableWidth:10, + fieldLabel: '篮筐名称', + readOnly: true + }] + }] + }, { + xtype: 'hidden', + id: 'basketBarcode', + name: 'basketBarcode' + }] + + if (sstsConfig.combineBasketItemStatisticsAndBasketItemDetailsInTheSterilizationLoadingModule) { + var root = new Ext.tree.AsyncTreeNode({ + text: 'objName' + }); + + var myLoader = new Ext.tree.TreeLoader({ + url: WWWROOT + '/disinfectSystem/tousseInstanceAction!getFromBasket.do', + baseParams: { returnType: 1, basketBarcode: '' }, + uiProviders: { + 'col': Ext.tree.ColumnNodeUI + } + }); + + tousseGrid2 = new Ext.tree.ColumnTree({ + rootVisible: false, + autoScroll: true, + containerScroll: true, + region: 'center', + layout: 'fit', + id: 'tousseGrid2', + bodyStyle: 'background:#fff', + width: (document.body.clientWidth / 2) - 20, + height: contentHeight - 57, + title: '篮筐物品统计信息', + columns: tousseGridColumnArray, + loader: myLoader, + root: root + }); + items.push(tousseGrid2); + } else { + items.push(stasticsGrid); + items.push(tousseGrid); + } + + var basketPanel = new Ext.FormPanel({ + frame: true, + border: 0, + labelSeparator: ':', + bodyStyle: 'padding:5px 5px 0px 5px', + //autoWidth : true, + autoHeight: true, + region: 'west', + width: document.body.clientWidth / 2, + labelAlign: 'right', + autoScroll: false, + layout: 'column', + items: items }); var statisticsData = [ @@ -1696,20 +1946,20 @@ var root = new Ext.tree.AsyncTreeNode({ text: 'objName' }); - - var myLoader = new Ext.tree.TreeLoader({ + + var myLoader = new Ext.tree.TreeLoader({ url: WWWROOT + '/disinfectSystem/tousseInstanceAction!loadAllBaskets.do', - baseParams: { taskGroup: ''}, + baseParams: { taskGroup: '' }, uiProviders: { 'col': Ext.tree.ColumnNodeUI } }); - - myLoader.on("beforeload", function(treeLoader, node){ - if(!node.isRoot){ + + myLoader.on("beforeload", function (treeLoader, node) { + if (!node.isRoot) { treeLoader.baseParams.basketId = node.id; } - }); + }); reviewedPanel = new Ext.tree.ColumnTree({ rootVisible: false, @@ -1843,7 +2093,7 @@ }); //加载前 reviewedPanel.loader.on('beforeload', function (node) { - if(!node.baseParams.basketId){ + if (!node.baseParams.basketId) { beginMask();//开启进度条 statisticsTousse(); timeMilliSecondBegin = null;//清空计算空闲时间的起始毫秒数 @@ -1853,7 +2103,7 @@ }); //完全加载后 reviewedPanel.loader.on('load', function (loader, node, response) { - if(node.isRoot){ + if (node.isRoot) { statisticsTousse(); hiddenMask();//进度条结束 timeMilliSecondBegin = null;//清空计算空闲时间的起始毫秒数