Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r29344 -r29383 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 29344) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 29383) @@ -1561,11 +1561,13 @@ sourceSortMap.put("自定义器械包", 6); sourceSortMap.put("外部代理灭菌", 7); sourceSortMap.put("自制物品", 8); - sourceSortMap.put("配包总数", 9); - sourceSortMap.put("超大包", 10); - sourceSortMap.put("大包", 11); - sourceSortMap.put("中包", 12); - sourceSortMap.put("小包", 13); + sourceSortMap.put("聚合包", 9); + sourceSortMap.put("配包总数", 10); + sourceSortMap.put("超大包", 11); + sourceSortMap.put("大包", 12); + sourceSortMap.put("中包", 13); + sourceSortMap.put("小包", 14); + boolean showComTousse = false; if (StringUtils.isNotBlank(month)) { List dateOfMonth = DisinfectionFractionDefectiveBean .getDateOfMonth(month); @@ -1608,6 +1610,9 @@ if(isHideDisinfection == true && "消毒物品".equals(tousseType)){ continue; } + if(!showComTousse && TousseDefinition.PACKAGE_TYPE_COMBO.equals(tousseType)){ + showComTousse = true; + } // 将外来器械拆分小包的类型转为外来器械包类型进行统计 if (TousseDefinition.PACKAGE_TYPE_SPLIT.equals(tousseType)){ tousseType = TousseDefinition.PACKAGE_TYPE_FOREIGN; @@ -1622,13 +1627,13 @@ tousseTypeMap.put(tousseType,amount); } String packageSize = rs.getString("packageSize"); + if(StringUtils.isBlank(packageSize)){ + packageSize = "未定义包大小"; + } if(tousseTypeMap.containsKey(packageSize)){ int count = tousseTypeMap.get(packageSize); tousseTypeMap.put(packageSize,count+amount); }else{ - if(StringUtils.isBlank(packageSize)){ - packageSize = "未定义包大小"; - } tousseTypeMap.put(packageSize, amount); } } @@ -1641,6 +1646,7 @@ // 取消毒物品的配包数量,按材料或者按包计算(根据config.js的配置) if (isHideDisinfection == false) { params.tousseTypeAndPackageSizeSql = " and td.tousseType = '消毒物品' "; + params.tousseTypes = TousseDefinition.PACKAGE_TYPE_DISINFECTION; if(showDisinfectionByPackage){ sql = dataIndex.getWorkAmountByPackageSQL("配包数量", params); }else{ @@ -1650,6 +1656,9 @@ try { while (rs.next()) { String tousseType = rs.getString("tousseType"); + if(!TousseDefinition.PACKAGE_TYPE_DISINFECTION.equals(tousseType)){ + continue; + } Integer amount = rs.getInt("amount"); totalAmount += amount; if (tousseTypeMap.containsKey(tousseType)) { @@ -1659,13 +1668,13 @@ tousseTypeMap.put(tousseType, amount); } String packageSize = rs.getString("packageSize"); + if(StringUtils.isBlank(packageSize)){ + packageSize = "未定义包大小"; + } if(tousseTypeMap.containsKey(packageSize)){ int count = tousseTypeMap.get(packageSize); tousseTypeMap.put(packageSize,count+amount); }else{ - if(StringUtils.isBlank(packageSize)){ - packageSize = "未定义包大小"; - } tousseTypeMap.put(packageSize, amount); } } @@ -1780,6 +1789,14 @@ // bean.setTitleSort(11); // returnList.add(bean); } + if(!showComTousse){//聚合包没有就不显示了 + Iterator result = returnList.iterator(); + while(result.hasNext()){ + if(TousseDefinition.PACKAGE_TYPE_COMBO.equals(result.next().getTitle())){ + result.remove(); + } + } + } return returnList; }