Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r16905 -r16907 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 16905) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 16907) @@ -3890,34 +3890,36 @@ logger.debug("departmentArray.size()=" + departmentArray.size() + ",departmentArray=" + departmentArray); for(int i = 0;i < tousseInstances.size();i++){ TousseInstance tousse = tousseInstances.get(i); - JSONArray subBarcodeArray = new JSONArray(); + JSONArray subBarcodeArray = new JSONArray(); subBarcodeArray.add(tousse.getBarcode()); - JSONArray subVirtualSeqNumArray = new JSONArray(); + JSONArray subVirtualSeqNumArray = new JSONArray(); + if(!DatabaseUtil.isPoIdValid(comboTousseInstanceId)){ subVirtualSeqNumArray.add(virtualSeqNumArray.get(i)); - - String department = String.valueOf(departmentArray.get(i)); - - JSONObject obj = CssdUtils.getTousseObjForPrint( - td.getName(), tdJson, subBarcodeArray, subVirtualSeqNumArray, tousseType, - packageType,packageTypeAbbreviation, sterilingType, - sterilizerName, sterileFrequency, - isPrintUserName, - operator, operatorCode, reviewer, reviewerCode,sterileUserName,sterileUserCode, - validUntilDateToPrint, - sterileDateToPrint, - markTousse, - packingDate, - isDisinfectionGoods, - isDisinfectionGoodsPrintExpirationDate, - isPrint, isReview, isTraceable, isBigPackage, - fixedBarcode, materialsJsonArray, - foreignTousseApp_id,supplierName, - toolAndImplantAmount.optInt("toolAmount"), - toolAndImplantAmount.optInt("implantAmount"),department, - isPrintOrg,idCardDefinitionUseAmount,objectDao,td.getBarcodePaperType(),tousse.getWashOperator(),tousse.getWashOperatorCode(), - tousse.getWeight(),td.getPrintAmount()); - toussesArray.add(obj); + } + + String department = String.valueOf(departmentArray.get(i)); + + JSONObject obj = CssdUtils.getTousseObjForPrint( + td.getName(), tdJson, subBarcodeArray, subVirtualSeqNumArray, tousseType, + packageType,packageTypeAbbreviation, sterilingType, + sterilizerName, sterileFrequency, + isPrintUserName, + operator, operatorCode, reviewer, reviewerCode,sterileUserName,sterileUserCode, + validUntilDateToPrint, + sterileDateToPrint, + markTousse, + packingDate, + isDisinfectionGoods, + isDisinfectionGoodsPrintExpirationDate, + isPrint, isReview, isTraceable, isBigPackage, + fixedBarcode, materialsJsonArray, + foreignTousseApp_id,supplierName, + toolAndImplantAmount.optInt("toolAmount"), + toolAndImplantAmount.optInt("implantAmount"),department, + isPrintOrg,idCardDefinitionUseAmount,objectDao,td.getBarcodePaperType(),tousse.getWashOperator(),tousse.getWashOperatorCode(), + tousse.getWeight(),td.getPrintAmount()); + toussesArray.add(obj); } } @@ -4244,7 +4246,7 @@ } //需要装入虚拟篮筐,但虚拟篮筐数据不够用时的提示 - if(packingAmountPerVirtualBasket != null + if(!DatabaseUtil.isPoIdValid(comboTousseInstanceId) && packingAmountPerVirtualBasket != null && packingAmountPerVirtualBasket > 0 && !"true".equals(confirmContinue) && CollectionUtils.isEmpty(reviewedBasketList)){ obj.put("success", "false"); @@ -4309,7 +4311,7 @@ && TousseDefinition.STR_NO.equals(tousseDefinition.getIsSterile())){ withoutReviewingAndSterilingTousseInstanceList.add(tousseInstance); } - if(packingAmountPerVirtualBasket != null + if(!DatabaseUtil.isPoIdValid(comboTousseInstanceId) && packingAmountPerVirtualBasket != null && packingAmountPerVirtualBasket > 0 && CollectionUtils.isNotEmpty(reviewedBasketList)){ try{ @@ -4351,7 +4353,10 @@ } barcodes.add(barcodeStr); - virtualBasketSeqNums.add(tousseInstance.getVirtualBasketSeqNum()); + //聚合包内普通器械包不放入虚拟篮筐 + if(!DatabaseUtil.isPoIdValid(comboTousseInstanceId)){ + virtualBasketSeqNums.add(tousseInstance.getVirtualBasketSeqNum()); + } departments.add(prePackingTask.getDepartment()); // 将器械包实例绑定到洗水布实例中并且判断返回值为true则跳过循环,只装配一个器械包