Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r29313 -r29317 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 29313) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 29317) @@ -3714,7 +3714,7 @@ if (StringUtils.isNotBlank(idCardInstanceID)){ idCardInstance = idCardInstanceManager.getIDCardInstanceByID(idCardInstanceID); } - String packageTypeAbbreviation = TousseInstanceUtils.getPackageTypeAbbreviation(objectDao, packageType); + String packageTypeAbbreviation = null; String msg = "保存成功"; String washBasket = ""; @@ -3807,6 +3807,8 @@ if(CollectionUtils.isEmpty(packingTasks)){ throw new RuntimeException("装配任务不能为空! "); } + //如果装配多个装配任务,灭菌程序和包装类型取值为包定义的默认类型 + boolean isMultiplePackingTask = packingTasks.size() > 1?true:false; Set recyclingRecordIds = new HashSet(); for (PackingTask packingTask : packingTasks) { logger.debug("装配任务packingTask[id=" + packingTask.getId() + "],tousseName=" + packingTask.getTousseDefinition().getName()+ "], [待装配数量=" + packingTask.getUnPackAmount() + "]"); @@ -4167,6 +4169,10 @@ // 汇总装配记录对应的一次性物品扣减信息 // summaryOutDisposableGoodsStockInfo(packingRecordToDisposableGoodsOutAmount, packingRecord, disposableGoodsIdToAmount); + if(isMultiplePackingTask){ + sterilingType = tdOfPackingTask.getSterilingMethod(); + packageType = tdOfPackingTask.getPackageType(); + } JSONObject result = batchCreateTousseInstance( operator, operatorCode,wrapper,wrapperCode, reviewer,reviewerCode,sterileUserName,sterileUserCode, packageType, @@ -4203,7 +4209,7 @@ // 装配的是外来器械拆分包 if (splits != null) { - + packageTypeAbbreviation = TousseInstanceUtils.getPackageTypeAbbreviation(objectDao, packageType); for (int j = 0 ; j < splits.size() ; j++){ JSONObject tousse = (JSONObject)splits.get(j); TousseInstance tousseInstance = splitsTousseList.get(j); @@ -4280,6 +4286,11 @@ logger.debug("tousseInstances.size()=" + tousseInstances.size()); logger.debug("virtualSeqNumArray.size()=" + virtualSeqNumArray.size() + ",virtualSeqNumArray=" + virtualSeqNumArray); logger.debug("departmentArray.size()=" + departmentArray.size() + ",departmentArray=" + departmentArray); + if(isMultiplePackingTask){ + sterilingType = tdOfPackingTask.getSterilingMethod(); + packageType = tdOfPackingTask.getPackageType(); + packageTypeAbbreviation = TousseInstanceUtils.getPackageTypeAbbreviation(objectDao, packageType); + } for(int i = 0;i < tousseInstances.size();i++){ TousseInstance tousse = tousseInstances.get(i); JSONArray subBarcodeArray = new JSONArray();