Index: ssts-web/src/main/webapp/disinfectsystem/packing/reviewView.js =================================================================== diff -u -r26372 -r27137 --- ssts-web/src/main/webapp/disinfectsystem/packing/reviewView.js (.../reviewView.js) (revision 26372) +++ ssts-web/src/main/webapp/disinfectsystem/packing/reviewView.js (.../reviewView.js) (revision 27137) @@ -235,6 +235,13 @@ params : {basketBarcode : basketBarcode,tousseBarcode : addBarcode,taskGroup : $Id('parm_s_taskGroup').value}, success : function(response, options) { var result = Ext.decode(response.responseText); + if(result.message){ + if(result.noticeMode == 2){ + noticeDiffSterilingMessage(top.Ext , result.message); + }else{ + showResult(result.message , null , sstsConfig.messagePauseTimeOnReviewPage); + } + } showResult(result.message , null , sstsConfig.messagePauseTimeOnReviewPage); if(result.success == true){ basketTousseInstanceStore.load(); @@ -266,13 +273,22 @@ minWidth : 70, iconCls : 'icon_search', handler : function() { + //提交后台判断当前所扫的包与篮筐内的包的灭菌方式是否一致 var addBarcode = top.Ext.getCmp('addBarcode').getValue(); Ext.Ajax.request({ url : WWWROOT + '/disinfectSystem/tousseInstanceAction!addToBasket.do', params : {basketBarcode : basketBarcode,tousseBarcode : addBarcode,taskGroup : $Id('parm_s_taskGroup').value}, success : function(response, options) { var result = Ext.decode(response.responseText); - showResult(result.message , null , sstsConfig.messagePauseTimeOnReviewPage); + if(result.message){ + if(result.noticeMode == 2){ + noticeDiffSterilingMessage(top.Ext , result.message , function(){ + top.Ext.getCmp("addBarcode").focus(); + }); + }else{ + showResult(result.message , null , sstsConfig.messagePauseTimeOnReviewPage); + } + } if(result.success == true){ basketTousseInstanceStore.load(); top.Ext.getCmp('addBarcode').setValue(''); @@ -298,7 +314,8 @@ bodyStyle : 'border:1px solid #afd7af', cm : new Ext.grid.ColumnModel([ {header : "器械包",dataIndex : 'objName',width : 200,sortable : true}, - {header : "条形码",width : 280,dataIndex : 'objBarcode'} + {header : "条形码",width : 100,dataIndex : 'objBarcode'}, + {header : "灭菌方式",width : 180,dataIndex : 'sterilingMode'} ]), width :485, height : 300, @@ -448,17 +465,6 @@ } /** - * 根据当前物品的名称、灭菌方式及原有物品的灭菌方式获取提示消息 - * @param currentTousseName 当前物品的名称 - * @param currentSterilingMode 当前物品的灭菌方式 - * @param orginalSterilingMode 原有物品的灭菌方式 - */ -function getDiffSterilingModeMessage(currentTousseName , currentSterilingMode , orginalSterilingMode){ - return "【"+ currentTousseName +"】"+ (currentSterilingMode ? ("属于【"+ currentSterilingMode +"】物品") : "") - +"与原有"+ (orginalSterilingMode ? ("【"+ orginalSterilingMode +"】物品") : "物品灭菌方式") +"不一致,不能入框审核"; -} - -/** * 进入审核列表对应的函数 */ function batchAddToussesToReviewedGrid(){ @@ -469,8 +475,9 @@ return false; } + var basketName = Ext.getCmp("basketName").getValue(); //如果篮筐名称与条码都不为空时才进行判断 - if(Ext.getCmp("basketName").getValue() != null && Ext.getCmp('basketBarcode').getValue() != null){ + if(basketName && Ext.getCmp('basketBarcode').getValue() != null){ //左边审核列表的包的灭菌方式 var sterilingModeFromLeftReviewGrid = getSterilingModeFromLeftReviewGrid(); var firstSterilingMode = selectedRecords[0].data["sterilingMode"]; @@ -479,15 +486,16 @@ && firstSterilingMode != sterilingModeFromLeftReviewGrid){ var currentSterilingMode = selectedRecords[0].data["sterilingMode"]; //showResult("【"+ selectedRecords[0].data["tousseDefinition.name"] +"】"+ (currentSterilingMode ? ("属于【"+ currentSterilingMode +"】物品") : "") +"与原有"+ (sterilingModeFromLeftReviewGrid ? ("【"+ sterilingModeFromLeftReviewGrid +"】物品") : "物品灭菌方式") +"不一致,不能入框审核"); - showResult(getDiffSterilingModeMessage(selectedRecords[0].data["tousseDefinition.name"] , currentSterilingMode, sterilingModeFromLeftReviewGrid)); + noticeDiffSterilingMessage(top.Ext , getDiffSterilingModeMessage(selectedRecords[0].data["tousseDefinition.name"] , currentSterilingMode, sterilingModeFromLeftReviewGrid , "审核") , afterNoticeMessageBoxClosed); return false; } if(selectedRecords.length > 1){ for(var i = 1;i < selectedRecords.length;i++){ if(firstSterilingMode != selectedRecords[i].data["sterilingMode"]){ var currentSterilingMode = selectedRecords[i].data["sterilingMode"]; //showResult("【"+ selectedRecords[i].data["tousseDefinition.name"] +"】"+ (currentSterilingMode ? ("属于【"+ currentSterilingMode +"】物品") : "") +"与原有"+ (sterilingModeFromLeftReviewGrid ? ("【"+ sterilingModeFromLeftReviewGrid +"】物品") : "物品灭菌方式") +"不一致,不能入框审核"); - showResult(getDiffSterilingModeMessage(selectedRecords[0].data["tousseDefinition.name"] , currentSterilingMode, sterilingModeFromLeftReviewGrid)); + noticeDiffSterilingMessage(top.Ext , getDiffSterilingModeMessage(selectedRecords[0].data["tousseDefinition.name"] , currentSterilingMode, sterilingModeFromLeftReviewGrid , "审核") , afterNoticeMessageBoxClosed); + Ext.getCmp('barcode').focus(false, 100); return false; } } @@ -837,6 +845,11 @@ grid.dwrReload(); } +//灭菌方式对话框关闭后执行的事情 +function afterNoticeMessageBoxClosed(){ + Ext.getCmp('barcode').focus(false, 100); +} + Ext.onReady(function() { if (sstsConfig.enableUrgentFunction){ //加急的隐藏域值设置,后台要用到 @@ -853,20 +866,22 @@ showDelay: 0, mouseOffset:[150,18] //偏移鼠标的位置,可以为负数 }); + + //是否一级供应室用户 + var isFirstRoomPeople = false; + DWREngine.setAsync(false); + //验证当前登录用户属于一级供应室还是二级供应室 + UserTableManager.checkForSupplyType(function(data){ + var result = Ext.decode(data); + if(result.result){//一级供应室 + isFirstRoomPeople = true; + }else{//二级供应室 + isFirstRoomPeople = false; + } + }); + DWREngine.setAsync(true); function reviewTousse(basketName,basketBarcode){ - var isFirstRoomPeople = false; - DWREngine.setAsync(false); - //验证当前登录用户属于一级供应室还是二级供应室 - UserTableManager.checkForSupplyType(function(data){ - var result = Ext.decode(data); - if(result.result){//一级供应室 - isFirstRoomPeople = true; - }else{//二级供应室 - isFirstRoomPeople = false; - } - }); - DWREngine.setAsync(true); // var basketName = Ext.getCmp('basketName').getValue(); // 如果是一级供应室用户,并且需要入筐;或者是二级供应室用户,并且需要入筐 if ((sstsConfig.mustScanBasketForTousseReview && isFirstRoomPeople) || (sstsConfig.mustScanBasketForTousseReviewOf2ndSupplyRoom && !isFirstRoomPeople)){ @@ -1588,7 +1603,7 @@ } }, {id:'barcode',header: "条码",width: 120, menuDisabled: true, dataIndex: 'barcode'}, - {id : 'deleteItem',header : '删除',width : 30,menuDisabled : true, + {id : 'deleteItem',header : '删除',width : 40,menuDisabled : true, renderer : function(v, p, record) { var str = ""; return str; @@ -1604,7 +1619,7 @@ //{header : "炉次",width : 50,dataIndex : 'frequency',hidden:false} ], stripeRows: true, - autoExpandColumn: 'barcode', + autoExpandColumn: 'tousseName', title:'待审核器械包', header : false, listeners: { @@ -1729,8 +1744,11 @@ var sterilingModeFromLeftReviewGrid = getSterilingModeFromLeftReviewGrid(); //判断所选中的包里是否有灭菌方式不同的包,如果有则进行提示不能扫入,没有再判断是否有和左边审核列表中的包的灭菌方式不一致,如果有则进行提示不能扫入 if(sterilingModeFromLeftReviewGrid || sterilingModeFromLeftReviewGrid === "") { - if((obj["sterilingMode"] || sterilingModeFromLeftReviewGrid) && obj["sterilingMode"] != sterilingModeFromLeftReviewGrid){ - showResult(getDiffSterilingModeMessage(obj.tousseName , obj["sterilingMode"], sterilingModeFromLeftReviewGrid)); + var basketName = Ext.getCmp("basketName").getValue(); + //只有在扫完清洗篮筐后,发现有扫描的器械包的灭菌方式不一致时才提示 + if(!isObjEmpty(basketName) && (obj["sterilingMode"] || sterilingModeFromLeftReviewGrid) && obj["sterilingMode"] != sterilingModeFromLeftReviewGrid){ + noticeDiffSterilingMessage(top.Ext , getDiffSterilingModeMessage(obj.tousseName , obj["sterilingMode"], sterilingModeFromLeftReviewGrid , "审核") , afterNoticeMessageBoxClosed); + Ext.getCmp('barcode').focus(false, 100); return false; } } @@ -1875,24 +1893,27 @@ Ext.getCmp('barcodeEnd').setValue(''); return; } - + + var basketName = Ext.getCmp("basketName").getValue(); //如果篮筐名称与条码都不为空时才进行判断 - if(Ext.getCmp("basketName").getValue() != null && Ext.getCmp('basketBarcode').getValue() != null){ + if(basketName != null && Ext.getCmp('basketBarcode').getValue() != null){ //左边审核列表的包的灭菌方式 var sterilingModeFromLeftReviewGrid = getSterilingModeFromLeftReviewGrid(); var firstSterilingMode = tousseInstanceArray[0].data["sterilingMode"]; //判断所选中的包里是否有灭菌方式不同的包,如果有则进行提示不能扫入,没有再判断是否有和左边审核列表中的包的灭菌方式不一致,如果有则进行提示不能扫入 if((sterilingModeFromLeftReviewGrid || sterilingModeFromLeftReviewGrid === "") && firstSterilingMode != sterilingModeFromLeftReviewGrid){ //showResult("【"+ tousseInstanceArray[0]["tousseDefinition.name"] +"】属于【"+ tousseInstanceArray[i]["sterilingMode"] +"】物品与原有"+ (sterilingModeFromLeftReviewGrid ? ("【"+ sterilingModeFromLeftReviewGrid +"】物品") : "物品灭菌方式") +"不一致,不能入框审核"); - showResult(getDiffSterilingModeMessage(tousseInstanceArray[0]["tousseDefinition.name"] , firstSterilingMode, sterilingModeFromLeftReviewGrid)); + noticeDiffSterilingMessage(top.Ext , getDiffSterilingModeMessage(tousseInstanceArray[0]["tousseDefinition.name"] , firstSterilingMode, sterilingModeFromLeftReviewGrid , "审核") , afterNoticeMessageBoxClosed); + Ext.getCmp('barcode').focus(false, 100); return false; } if(tousseInstanceArray.length > 1){ for(var i = 1;i < tousseInstanceArray.length;i++){ if(firstSterilingMode != tousseInstanceArray[i]["sterilingMode"]){ //showResult("【"+ tousseInstanceArray[i]["tousseName"] +"】属于【"+ tousseInstanceArray[i]["sterilingMode"] +"】物品与原有"+ (sterilingModeFromLeftReviewGrid ? ("【"+ sterilingModeFromLeftReviewGrid +"】物品") : "物品灭菌方式") +"不一致,不能入框审核"); - showResult(getDiffSterilingModeMessage(tousseInstanceArray[i]["tousseName"] , tousseInstanceArray[i]["sterilingMode"], sterilingModeFromLeftReviewGrid)); + noticeDiffSterilingMessage(top.Ext , getDiffSterilingModeMessage(tousseInstanceArray[i]["tousseName"] , tousseInstanceArray[i]["sterilingMode"], sterilingModeFromLeftReviewGrid , "审核") , afterNoticeMessageBoxClosed); + Ext.getCmp('barcode').focus(false, 100); return false; } } @@ -2184,13 +2205,18 @@ } },{ header:'条形码', - width:300, + width:120, dataIndex:'objBarcode' },{ + header:'灭菌方式', + width:180, + dataIndex:'sterilingMode' + },{ id:'type', header:'操作', width : 400, dataIndex:'type', + hidden:true,//此功能不完善,暂时屏蔽 renderer:function(v,p,record){ var str = ""; if(v=='BASKET'){ @@ -2324,5 +2350,6 @@ }]*/ } ); + Ext.getCmp('barcode').focus(false, 100); }); \ No newline at end of file