Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r16176 -r16178 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 16176) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 16178) @@ -11969,28 +11969,38 @@ + " and po.formDefinition.formType = '" + monitoringType + "' and po.formDefinition.formName = '" + formName + "'" + " and po.orgUnitCoding = '" + querySupplyRoom + "'"; - + String materialSql = ""; + String tousseSql = ""; if( StringUtils.isNotBlank(materialName)){ // 如果字符串中有"[",进行转译 if(materialName.contains("[")){ int index = materialName.indexOf("["); materialName = materialName.substring(0, index) + "\\" + materialName.substring(index, materialName.length()); - sql += " and po.material like '%" + materialName + "%'" + " escape '\\' "; + materialSql = " po.material like '%" + materialName + "%'" + " escape '\\' "; }else{ - sql += " and po.material like '%" + materialName + "%'"; + materialSql = " po.material like '%" + materialName + "%'"; } } if( StringUtils.isNotBlank(tousseName)){ // 如果字符串中有"[",进行转译 if(tousseName.contains("[")){ int index = tousseName.indexOf("["); tousseName = tousseName.substring(0, index) + "\\" + tousseName.substring(index, materialName.length()); - sql += " and po.tousseName like '%" + tousseName + "%'" + " escape '\\' "; + tousseSql = " po.tousseName like '%" + tousseName + "%'" + " escape '\\' "; }else{ - sql += " and po.tousseName like '%" + tousseName + "%'"; + tousseSql = " po.tousseName like '%" + tousseName + "%'"; } - sql += " and po.tousseName like '%" + tousseName + "%'"; } + // 如果都有材料和器械包的名字,用or条件 + String tsql = ""; + if(StringUtils.isNotBlank(materialSql) && StringUtils.isNotBlank(tousseSql)){ + tsql = " and ( " + materialSql + " or " + tousseSql + " ) "; + }else if(StringUtils.isNotBlank(materialSql)){ + tsql = " and " + materialSql; + }else if(StringUtils.isNotBlank(tousseSql)){ + tsql = " and " + tousseSql; + } + sql += tsql; // 根据材料名称排序 sql += " order by " + dateQueryAdapter.dateConverAdapter("po.dateTime","yyyy-MM-dd")+",po.tousseName,po.material"; return sql;