Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/dwr/table/TousseInstanceTableManager.java =================================================================== diff -u -r35577 -r35594 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/dwr/table/TousseInstanceTableManager.java (.../TousseInstanceTableManager.java) (revision 35577) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/dwr/table/TousseInstanceTableManager.java (.../TousseInstanceTableManager.java) (revision 35594) @@ -1333,14 +1333,14 @@ StringBuilder sqlBuilder = new StringBuilder("WHERE 1=1 "); //状态为已发货或已签收时,包所在位置为当前用户所属科室 - sqlBuilder.append(" and po.id in (select id from TousseInstance where comboTousseInstanceId is null and ((" + SqlBuilder.build_IN_Statement("status", SqlBuilder.IN, + sqlBuilder.append(" and ((" + SqlBuilder.build_IN_Statement("status", SqlBuilder.IN, TousseInstance.STATUS_SHIPPED, TousseInstance.STATUS_SIGNED) + " and case when location_2 is not null then location_2 else location end = '" + queryDepartCode + "')"); //或状态为已灭菌时,当前用户所属科室装配的包 sqlBuilder.append(" or (orgUnitCoding ='"+queryDepartCode+"'"); sqlBuilder.append(" and " + SqlBuilder.build_IN_Statement("status", SqlBuilder.IN, - TousseInstance.STATUS_STERILED) + ")))"); + TousseInstance.STATUS_STERILED) + "))"); //告警类型 String type = sqlWhereParamMap.get("type"); @@ -1364,7 +1364,7 @@ }else{ setQueryTime(sqlBuilder, "po.validUntil", startTime, endTime); } - sqlBuilder.append(" AND po.tousseDefinition.ancestorID not in (select ancestorID from TousseDefinition where ( warningType in ('" + TousseDefinition.WARNING_TYPE_NEVERWARN + "', '" + TousseDefinition.WARNING_TYPE_TOUSSE + "'))) "); + sqlBuilder.append(" AND not exists (select 1 from TousseDefinition td where ( warningType in ('" + TousseDefinition.WARNING_TYPE_NEVERWARN + "', '" + TousseDefinition.WARNING_TYPE_TOUSSE + "')) and td.ancestorID = po.tousseDefinition.ancestorID) "); break; case SystemWarningItemVO.WARNING_TYPE_TOUSSE: if(StringUtils.isBlank(startTime) @@ -1374,7 +1374,7 @@ }else{ setQueryTime(sqlBuilder, "po.warningUntil", startTime, endTime); } - sqlBuilder.append(" AND po.tousseDefinition.ancestorID not in (select ancestorID from TousseDefinition where ( warningType in ('" + TousseDefinition.WARNING_TYPE_NEVERWARN + "', '" + TousseDefinition.WARNING_TYPE_DISABLED_TOUSSE + "'))) "); + sqlBuilder.append(" AND not exists (select 1 from TousseDefinition td where ( warningType in ('" + TousseDefinition.WARNING_TYPE_NEVERWARN + "', '" + TousseDefinition.WARNING_TYPE_DISABLED_TOUSSE + "')) and td.ancestorID = po.tousseDefinition.ancestorID) "); break; default: //默认显示已过期和即将过期的所有器械包 if(StringUtils.isBlank(startTime)