Index: ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js =================================================================== diff -u -r21472 -r21477 --- ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 21472) +++ ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 21477) @@ -75,6 +75,7 @@ var tabTitle = parent.currentActiveTabTitle; var taskGroup = getURLParameter("taskGroup","") + "装配"; // 只有当装配界面是处于活动的Tab时,才刷新,以避免刷新后的界面为空白的问题 +// alert(tabTitle+','+taskGroup) if (tabTitle == taskGroup){ var waitPackingTreeGrid = Ext4.getCmp('waitPackingTreeGrid'); if (waitPackingTreeGrid != null && waitPackingTreeGrid.isVisible() == true){ @@ -83,6 +84,13 @@ } } +function reflushWaitPackingTreeGridImmediately(){ + var waitPackingTreeGrid = Ext4.getCmp('waitPackingTreeGrid'); + if (waitPackingTreeGrid != null && waitPackingTreeGrid.isVisible() == true){ + waitPackingTreeGrid.getStore().reload(); + } +} + function getErrorAndDamgeCount(){ Ext4.Ajax.request({ url : WWWROOT + '/disinfectSystem/packingAction!getErrorAndDamageCount.do', @@ -267,10 +275,8 @@ } }); } - function loadIdCardByBarcode(tempBarcode,manualScan){ var barcode = tempBarcode; - PackingTableManager.getIDCardInfoForPackingView(barcode,function(resultJsonStr){ var result = JSON.parse(resultJsonStr); if(isUndefinedOrNullOrEmpty(result.errorMsg)){ @@ -282,42 +288,25 @@ if(!existTask){ existTask = findIDCardPackingTask(waitPackingTaskStore,result.idCard); } + if(!existTask){ + if(taskList.length > 0){ + // 后台有装配任务,前台没有,那么先刷新待装配任务列表 + var lastOptions = waitPackingTaskStore.lastOptions; + lastOptions = Ext4.clone(lastOptions); + lastOptions.callback = function(){ + loadIdCardByBarcode_bottomHalf(barcode,result,existTask,manualScan); + }; + waitPackingTaskStore.reload(lastOptions); + waitPackingTaskStore.lastOptions.callback = null; +// waitPackingTaskStore.load(lastParams); + return; + } showResult('不存在该标识牌对应的装配任务!'); return; + }else{ + loadIdCardByBarcode_bottomHalf(barcode,result,existTask,manualScan); } - // 加载器械包信息 - if(manualScan){ - var tousseName = idCardTaskNode.get('tousseName'); - var vedioName = idCardTaskNode.get('uuid_vedioNames'); - var td_id = idCardTaskNode.get('tousseID'); - loadTousseInfo(tousseName,imageType_tousse,vedioName,td_id); - var tousseType = idCardTaskNode.get('tousseType'); - var isPrint = idCardTaskNode.get('isPrint'); - var isReview = idCardTaskNode.get('isReview'); - showPackButton(isPrint,isReview,tousseType); - - } - // 取消选中所有的装配任务,只选中该标识牌的 - uncheckAllExceptCurrentIDCardPackingTask(); - currentIDCardInfo = result.idCard; - Ext4.getCmp('idCardBarcode').setValue(barcode); - Ext4.getCmp('idCardName').setValue(tousseName + "(条码:" + barcode + ")"); - Ext4.getCmp('idCardUseAmount').setValue(result.idCard.idCardDefinition.useAmount); - var packageType = idCardTaskNode.get("packageType"); - var sterilingType = idCardTaskNode.get("sterilingMethod"); - Ext4.getCmp('packageType').setValue(packageType); - Ext4.getCmp('sterilingType').setValue(sterilingType); - - idCardBarcode = barcode; - idCardInstanceID = result.idCard.id; - idCardInfo = result.idCard; -// alert(idCardInstanceID) - Ext4.getCmp('operatorBarcode').focus(); - // 做保养器械包的处理 - maintainTousse(); - refreshErrorAndDamageRemark(idCardTaskNode); - refreshRecyclingItemRemark(idCardTaskNode); } else { @@ -327,7 +316,59 @@ } }); } +// +function loadIdCardByBarcode_bottomHalf(barcode,result,existTask,manualScan){ + var tousseName = result.idCard.tousseDefinition.name; + var taskList = result.idCard.packingTaskInfo; + if(!existTask){ + existTask = findIDCardPackingTask(basketStore,result.idCard); + } + + // 在待装配任务里面选择标识牌的包可以装配 + if(!existTask){ + existTask = findIDCardPackingTask(waitPackingTaskStore,result.idCard); + } + + if(!existTask){ + showResult('不存在该标识牌对应的装配任务!'); + return; + } + // 加载器械包信息 + if(manualScan){ + var tousseName = idCardTaskNode.get('tousseName'); + var vedioName = idCardTaskNode.get('uuid_vedioNames'); + var td_id = idCardTaskNode.get('tousseID'); + loadTousseInfo(tousseName,imageType_tousse,vedioName,td_id); + var tousseType = idCardTaskNode.get('tousseType'); + var isPrint = idCardTaskNode.get('isPrint'); + var isReview = idCardTaskNode.get('isReview'); + showPackButton(isPrint,isReview,tousseType); + + } + // 取消选中所有的装配任务,只选中该标识牌的 + uncheckAllExceptCurrentIDCardPackingTask(); + currentIDCardInfo = result.idCard; + Ext4.getCmp('idCardBarcode').setValue(barcode); + Ext4.getCmp('idCardName').setValue(tousseName + "(条码:" + barcode + ")"); + Ext4.getCmp('idCardUseAmount').setValue(result.idCard.idCardDefinition.useAmount); + var packageType = idCardTaskNode.get("packageType"); + var sterilingType = idCardTaskNode.get("sterilingMethod"); + Ext4.getCmp('packageType').setValue(packageType); + Ext4.getCmp('sterilingType').setValue(sterilingType); + + idCardBarcode = barcode; + idCardInstanceID = result.idCard.id; + idCardInfo = result.idCard; +// alert(idCardInstanceID) + Ext4.getCmp('operatorBarcode').focus(); + // 做保养器械包的处理 + maintainTousse(); + refreshErrorAndDamageRemark(idCardTaskNode); + refreshRecyclingItemRemark(idCardTaskNode); + +} + function reSetParentNodeAmount(delNode){ if(delNode != null){ var amount = delNode.get("amount");