Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r27649 -r27707 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 27649) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 27707) @@ -6993,9 +6993,14 @@ if(config != null){ shiftName = config.getShift();//批量打印发货计划的班次名称 String departCodes = config.getDepartCodes(); - if (departCodes.length() > 0){ - String[] depts = departCodes.split(";"); - allNeedToPrintDept = depts; + String[] depts = departCodes.length() > 0 ? departCodes.split(";") : null; + // 打印发货计划设置中存在已经删除了的科室编码,需要根据科室编码查询科室,再根据科室打印物品 + List orgUnits = depts.length > 0 ? orgUnitManager.getByCodes(Arrays.asList(depts)) : null; + if (CollectionUtils.isNotEmpty(orgUnits)){ + allNeedToPrintDept = new String[orgUnits.size()]; + for (int i=0;i allTousseItems = getTousseItems(tousseTypes,dept); + for (OrgUnit orgUnit : orgUnits) { + Collection allTousseItems = getTousseItems(tousseTypes,orgUnit.getOrgUnitCoding()); populateSummaryList(printScope, allTousseItems, printSummaryList, 8, true, true, shiftName, "",false); setPrintInfo(printUser, printSummaryList); @@ -7046,8 +7051,8 @@ } String printUser = AcegiHelper.getLoginUserFullName(); - for (String dept : depts) { - getPrintObjectOfDept(printScope, dept, printUser, printSummaryList); + for (OrgUnit orgUnit : orgUnits) { + getPrintObjectOfDept(printScope, orgUnit.getOrgUnitCoding(), printUser, printSummaryList); } } if(printSummaryList.size() <= 0){