Index: ssts-web/src/main/webapp/disinfectsystem/config/zjyy/config.js =================================================================== diff -u -r36773 -r37313 --- ssts-web/src/main/webapp/disinfectsystem/config/zjyy/config.js (.../config.js) (revision 36773) +++ ssts-web/src/main/webapp/disinfectsystem/config/zjyy/config.js (.../config.js) (revision 37313) @@ -314,6 +314,8 @@ materialEntryAddCheckMode:1, //是否启用外来器械包的归还交接功能 enableReturnHandoverOfForeignTousseFunction:true, +//允许一次装配多个有备注信息的物品 +enablePackingMultipleGoodsWithRemarks:true, //开启质量监测记录审核功能 enableQualityMonitoringReview:true } \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js =================================================================== diff -u -r37307 -r37313 --- ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 37307) +++ ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 37313) @@ -1463,6 +1463,7 @@ { name: 'sterilizationPackageType' }, { name: 'sterilizationPaperType' }, { name: 'patient' }, + { name: 'remark' }, { name: 'useAmount' }, { name: 'needInspectMaterials' }, { name: 'washRecordId' } @@ -4322,7 +4323,27 @@ }] // 装配 var arr = []; - packed = packingTousse(false, basketBarcode, basketBarcode, taskId, tousseName, tousseType, 1, packageType, sterilingType, supplierName, department, urgentAmount, JSON.stringify(taskIdToAmountMapInfo), tousseID); + var paramsObj = { + printImmediately:false, + basketBarcode:basketBarcode, + scannedBasketBarcodes:basketBarcode, + taskIds:taskId, + tousseName:tousseName, + tousseType:tousseType, + packAmount:1, + packageType:packageType, + sterilingType:sterilingType, + supplierName:supplierName, + department:department, + urgentAmount:urgentAmount, + taskIdToAmountMapInfo:JSON.stringify(taskIdToAmountMapInfo), + noUserFormSterilizationInfo:false, + remarkOfApplyGoods:taskNode.data.remarkOfApplyGoods || '', + errorDamageRemarkInfo:errorDamageRemarkInfo, + packageCount:1, + tousseID:tousseID + } + packed = packingTousse(paramsObj); if (packed !== false) { arr.push(packed) requestPackingTousse(arr, 0); @@ -4863,6 +4884,8 @@ var parentAmout = 0; var isChackAll = false; var taskIdsArray = []; + var remarkOfApplyGoods = ''; + var errorDamageRemarkInfo = ''; var noUserFormSterilizationInfo = true; //遍历器械包下的每条装配任务数据 Ext4.each(selNodes, function (cNode) { @@ -4892,7 +4915,8 @@ basketBarcode = cNode.get("basketBarcode"); var taskId = cNode.get("taskId"); var amount = cNode.get("amount"); - var errorDamageRemarkInfo = cNode.raw.errorDamageRemarkInfo; + remarkOfApplyGoods = cNode.get("remarkOfApplyGoods"); + errorDamageRemarkInfo = cNode.raw.errorDamageRemarkInfo; packageType = cNode.get("packageType"); sterilingType = cNode.get("sterilingMethod"); if (dest.length == 1) { @@ -5012,6 +5036,8 @@ urgentAmount: pNode.get('urgentAmount'), taskIdToAmountMapInfo: JSON.stringify(taskIdDest), noUserFormSterilizationInfo: noUserFormSterilizationInfo, + remarkOfApplyGoods:remarkOfApplyGoods, + errorDamageRemarkInfo:errorDamageRemarkInfo, tousseID: tousseID }); } @@ -5042,9 +5068,30 @@ var taskIdToAmountMapInfo = packageArray[i].taskIdToAmountMapInfo; var noUserFormSterilizationInfo = packageArray[i].noUserFormSterilizationInfo; var tousseID = packageArray[i].tousseID; + var remarkOfApplyGoods = packageArray[i].remarkOfApplyGoods; + var errorDamageRemarkInfo = packageArray[i].errorDamageRemarkInfo; //请求后台装配方法 - var par = packingTousse(printImmediately, basketBarcode, scannedBasketBarcodes, taskIds, tousseName, tousseType, packAmount, packageType, - sterilingType, supplierName, department, urgentAmount, taskIdToAmountMapInfo, noUserFormSterilizationInfo, tousseID); + var paramsObj = { + printImmediately:printImmediately, + basketBarcode:basketBarcode, + scannedBasketBarcodes:scannedBasketBarcodes, + taskIds:taskIds, + tousseName:tousseName, + tousseType:tousseType, + packAmount:packAmount, + packageType:packageType, + sterilingType:sterilingType, + supplierName:supplierName, + department:department, + urgentAmount:urgentAmount, + taskIdToAmountMapInfo:taskIdToAmountMapInfo, + noUserFormSterilizationInfo:noUserFormSterilizationInfo, + remarkOfApplyGoods:remarkOfApplyGoods, + errorDamageRemarkInfo:errorDamageRemarkInfo, + packageCount:packageArray.length, + tousseID:tousseID + } + var par = packingTousse(paramsObj); if (par !== false) { params.push(par); } @@ -5169,6 +5216,7 @@ var departmentArray = []; var taskIdToAmountMapInfo = []; var status; + var remarkOfApplyGoods; var parentAmout = 0; var isChackAll = false; Ext4.each(selNodes, function (cNode) { @@ -5215,6 +5263,7 @@ department = cNode.get("department"); departmentArray.push(department); errorDamageRemarkInfo = cNode.raw.errorDamageRemarkInfo; + remarkOfApplyGoods = cNode.raw.remarkOfApplyGoods; if (packingAmount > 0) { taskIdArray.push(taskId); @@ -5237,7 +5286,27 @@ lastAmount = parentAmout; } if(taskIdArray.length > 0){ - var par = packingTousse(false, '', '', taskIdArray.join(";"), tousseName, tousseType, lastAmount, packageType, sterilingType, supplierName, departmentArray.join(";"), urgentAmount, JSON.stringify(taskIdToAmountMapInfo), noUserFormSterilizationInfo, tousseID); + var paramsObj = { + printImmediately:false, + basketBarcode:'', + scannedBasketBarcodes:'', + taskIds:taskIdArray.join(";"), + tousseName:tousseName, + tousseType:tousseType, + packAmount:lastAmount, + packageType:packageType, + sterilingType:sterilingType, + supplierName:supplierName, + department:departmentArray.join(";"), + urgentAmount:urgentAmount, + taskIdToAmountMapInfo:JSON.stringify(taskIdToAmountMapInfo), + noUserFormSterilizationInfo:noUserFormSterilizationInfo, + remarkOfApplyGoods:remarkOfApplyGoods, + errorDamageRemarkInfo:errorDamageRemarkInfo, + packageCount:taskIdArray.length, + tousseID:tousseID + } + var par = packingTousse(paramsObj); if (par !== false) { params.push(par); } @@ -5274,17 +5343,18 @@ onPackingTousseBtnClickComplete(); } // 装配器械包 - function packingTousse(printImmediately, basketBarcode, scannedBasketBarcodes, taskIds, tousseName, tousseType, packAmount, packageType, sterilingType, supplierName, department, urgentAmount, taskIdToAmountMapInfo, noUserFormSterilizationInfo, tousseID) { + function packingTousse(paramsObj) { if (!validateFormParamsForPack()) { return false; } + var params = paramsObj; var tousseWeight = Ext4.getCmp('tousseWeight').getValue(); var sterilizedThisTime = Ext4.getCmp('sterilizedThisTime').getValue(); var secondaryDisinfection = Ext4.getCmp('secondaryDisinfection').getValue(); //是否消毒物品 var validatepass = true; DWREngine.setAsync(false); - PackingTableManager.validatePackingTask(taskIds, new Date(), packageType, tousseName, supplierName, idCardInstanceID, function (response) { + PackingTableManager.validatePackingTask(params.taskIds, new Date(), params.packageType, params.tousseName, params.supplierName, idCardInstanceID, function (response) { var result = Ext4.decode(response); var ableToPack = result.ableToPackAmount; var errorMsg = result.errorMsg; @@ -5330,65 +5400,65 @@ sterileDate = ''; } DWREngine.setAsync(false); - ExpirationDateInfoTableManager.getExpirationDate(sterileDate, packageType, function (result) { + ExpirationDateInfoTableManager.getExpirationDate(sterileDate, params.packageType, function (result) { var json = JSON.parse(result); isExpirationInfoDefined = json.isDefined; }); DWREngine.setAsync(true); // 如果不是消毒,有效期未定义则不允许装配 - if (tousseType != "消毒物品") { + if (params.tousseType != "消毒物品") { if (!isExpirationInfoDefined) { - alert("包装类型【" + packageType + "】的有效期未定义,请检查系统参数设置!"); + alert("包装类型【" + params.packageType + "】的有效期未定义,请检查系统参数设置!"); return false; } } var remark = Ext4.getCmp('remark').getValue(); var errorDamageRemarkId = Ext4.getCmp('errorDamageRemarkId').getValue() || ''; var errorDamageRemarkInfo = Ext4.getCmp('errorDamageRemarkInfo').getValue() || ''; - var params = { - taskIds: taskIds, - inspector: inspector, - inspectorCode: inspectorCode, - operator: operator, - operatorCode: operatorCode, - reviewer: reviewer, - reviewerCode: reviewerCode, - sterileUserName: sterileUserName, - sterileUserCode: sterileUserCode, - wrapper: wrapper, - wrapperCode: wrapperCode, - packageType: packageType, - sterilingType: sterilingType, - sterileDate: (sterileDate == '') ? '' : sterileDate.getTime(), - packAmount: packAmount, - taskGroup: taskGroup, - splitPackage: null, - basketBarcode: basketBarcode, - scannedBasketBarcodes: scannedBasketBarcodes, - idCardInstanceID: idCardInstanceID, - idCardDefinitionId: idCardDefinitionId, - sterilizer: sterilizer, - frequency: frequency, - confirmContinue: '', - urgentAmount: urgentAmount, - tousseWeight: tousseWeight, - remark: remark, - sterilizedThisTime:sterilizedThisTime, - secondaryDisinfection:secondaryDisinfection, - errorDamageRemarkInfo: errorDamageRemarkInfo, - taskIdToAmountMapInfo: taskIdToAmountMapInfo, - noUserFormSterilizationInfo: noUserFormSterilizationInfo, - websocketSessionId: getWebsocketSessionId(), - tousseName: tousseName, - tousseType: tousseType, - department:department, - printImmediately: printImmediately, - tousseID: tousseID - } + + params.inspector = inspector; + params.inspectorCode = inspectorCode; + params.operator = operator; + params.operatorCode = operatorCode; + params.reviewer = reviewer; + params.reviewerCode = reviewerCode; + params.sterileUserName = sterileUserName; + params.sterileUserCode = sterileUserCode; + params.wrapper = wrapper; + params.wrapperCode = wrapperCode; + params.sterileDate = (sterileDate == '') ? '' : sterileDate.getTime(); + params.taskGroup = taskGroup; + params.splitPackage = null; + params.idCardInstanceID = idCardInstanceID; + params.idCardDefinitionId = idCardDefinitionId; + params.sterilizer = sterilizer; + params.frequency = frequency; + params.confirmContinue = ''; + params.tousseWeight = tousseWeight; + params.sterilizedThisTime = sterilizedThisTime; + params.secondaryDisinfection = secondaryDisinfection; + params.websocketSessionId = getWebsocketSessionId(); + if (errorDamageRemarkId !== '' && errorDamageRemarkId !== 0) { params.errorDamageRemarkId = errorDamageRemarkId; } + if(sstsConfig.enablePackingMultipleGoodsWithRemarks && params.packageCount > 1){ + var remarkOfApplyGoods = params.remarkOfApplyGoods; + var errorDamageRemarkInfo = params.errorDamageRemarkInfo; + var remark = ''; + if(errorDamageRemarkInfo !== ''){ + remark += errorDamageRemarkInfo; + } + if(remarkOfApplyGoods !== ''){ + remark += remarkOfApplyGoods; + } + params.remark = remark; + }else { + params.errorDamageRemarkInfo = errorDamageRemarkInfo; + params.remark = remark; + } + return params }