Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r33774 -r33778 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 33774) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 33778) @@ -8687,9 +8687,10 @@ orgUnitCoding + "' " + getInstrumentSetTypeSql("临床各类包","in"); - //统计处理科室为【大院供应室】灭菌炉分组为【低温灭菌炉】的灭菌处理【包数】X 1 + //统计处理科室为【大院供应室】灭菌炉分组为【低温灭菌炉】的灭菌处理器械包种类为【EO包】的【包数】X 1 sql += " union all "; - params.extraQuery = " and sr.sterilizer_id in(select id from Sterilizer where ownGroup='低温灭菌炉')"; + params.extraQuery = " and sr.sterilizer_id in(select id from Sterilizer where ownGroup='低温灭菌炉') " + + getInstrumentSetTypeSql("EO包", "in"); //灭菌记录 sql += String.format(" select 3 orderNumber, '临床各类包' firstColumnName ,'⑧EO包' secondColumnName,sum(tl.amount) amount from (" +dataIndex.getWorkAmountByPackageSQL("灭菌数量", params) @@ -8745,21 +8746,21 @@ sql += String.format(" union all select 4 orderNumber,'孔、盘、巾' firstColumnName ,'④布类班' secondColumnName,sum(tl.amount)*2 amount from (" +dataIndex.getWorkAmountByPackageSQL("配包数量", params) + ") tl "); - //统计处理科室为【大院供应室】灭菌炉分组为【高温灭菌炉】的【炉次】总数X 1 + //统计处理科室为【大院供应室】灭菌炉分组为【高温灭菌炉】的【炉次】总数(灭菌程序为【B-D试验】除外)X 1 sql += " union all select 5 orderNumber,'灭菌' firstColumnName ,'大院供应室高温炉炉次总和' secondColumnName,count(*) amount " + " from SterilizationRecord sr join Sterilizer s on s.id=sr.sterilizer_id " - + " where s.ownGroup='高温灭菌炉' and sr.startDate " + + " where s.ownGroup='高温灭菌炉' and (sr.sterilizationType is null or sr.sterilizationType<>'B-D试验') and sr.startDate " + betweenSql + " and sr.orgUnitCoding='" + orgUnitCoding + "' "; - //计算科室分组为【大院门诊】和【大院住院部】【已回收】的【器械包申请单】数量 X2 + //计算科室分组为【大院门诊】和【大院住院部】【已发货】的【器械包申请单】数量 X2 sql += " union all select 6 orderNumber,'下收、下送科室' firstColumnName ,'①器械单回收' secondColumnName, count(distinct ip.id)*2 amount from invoicePlan ip " + "join OrgUnit ou on ou.orgUnitCoding=ip.departCoding " + "join Org_OrgGroup oo on oo.orgunitid=ou.id " + "join OrgUnitGroup oug on oug.id=oo.orgGroupId " + " where ip.type='"+ InvoicePlan.TYPE_TOUSSE_APPLICATION_FORM +"' and oug.name in('大院住院部','大院门诊') " - + "and ip.recyclingStatus='"+ InvoicePlan.RECYCLINGSTATUS_RECYCLED +"' " + + "and ip.deliverStatus='"+ InvoicePlan.DELIVERSTATUS_DELIVERED +"' " + "and ip.handleDepartCoding='"+ orgUnitCoding +"' and ip.applicationTime " + betweenSql;