Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r37768 -r37806 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 37768) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 37806) @@ -3299,7 +3299,15 @@ } if(StringUtils.isNotBlank(sterilizerNames) && sterilizerNames.indexOf(Constants.STR_ALL) == -1){ - sql += SqlUtils.get_InSql("ti.sterilizerName", sterilizerNames.split(",")); + Set sterilizerNamesset = SqlUtils.splitStringToSet(sterilizerNames, ","); + if(CssdUtils.isProject("gdsy")){//广东省医有聚力康的包 没有灭菌记录 + sql += " and ((exists (select 1 from SterilizationRecord sr join sterilizer s on s.id=sr.sterilizer_id " + + " where sr.id=ti.sterilizationRecord_id "+ SqlUtils.getInStringListSql("s.name", sterilizerNamesset) +") ) or 1=1 " + + SqlUtils.get_InSql("ti.sterilizerName", sterilizerNames.split(",")) + ") "; + }else{ + sql += " and (exists (select 1 from SterilizationRecord sr join sterilizer s on s.id=sr.sterilizer_id " + + "and sr.id=ti.sterilizationRecord_id "+ SqlUtils.getInStringListSql("s.name", sterilizerNamesset) +") ) "; + } } if(StringUtils.isNotBlank(frequency)){ sql += " and ti.sterileFrequency = '" + frequency + "'";