Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r40412 -r40436 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 40412) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 40436) @@ -7088,7 +7088,7 @@ String extraQuery = ""; if(enableUrgentFunction){ extraQuery = ",ul.id ulId,ul.name ulName,ul.colorCode,ul.colorName,ul.grade ulGrade" - + ", case when exists (select 1 from RecyclingItem ri where ri.recyclingRecord_id=r.id and ri.urgentAmount>0) then 1 else 0 end includingUrgent "; + + ", case when b.recyclingRecord_id is not null then 1 else 0 end includingUrgent "; } boolean confirmRecyclingAmount = CssdUtils.getSystemSetConfigByNameBool("confirmRecyclingAmount", false); String backgroundColorOfRecyclingRecordWhichRecyclingAmountNotEqualToAppplyAmount = CssdUtils.getSystemSetConfigByName("backgroundColorOfRecyclingRecordWhichRecyclingAmountNotEqualToAppplyAmount"); Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordListSqlGenerator.java =================================================================== diff -u -r38721 -r40436 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordListSqlGenerator.java (.../RecyclingRecordListSqlGenerator.java) (revision 38721) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordListSqlGenerator.java (.../RecyclingRecordListSqlGenerator.java) (revision 40436) @@ -282,6 +282,7 @@ + " r.*,p.applicationTime, p.type,p.remark,p.submitTime,p.recyclingStatus,p.specialInfection,p.operationRoom,p.patient,p.hospitalNumber,p.serialNumber,p.applicant "+ extraQuery +" " + "FROM " + RecyclingRecord.class.getSimpleName() + " r left join " + InvoicePlan.class.getSimpleName() + " p on r.recyclingApplication_id = p.id " + joinSqlOfUrgent + + (enableUrgentFunction?" left join (select ri.recyclingRecord_id from RecyclingItem ri where ri.urgentAmount>0 group by ri.recyclingRecord_id) b on b.recyclingRecord_id=r.id ":"") + "where r.orgUnitCoding = '" + orgUnitCodingFromSupplyRoomConfig + "' and " @@ -292,6 +293,7 @@ + " r.*,p.applicationTime, p.type,p.remark,p.submitTime,p.recyclingStatus,p.specialInfection,p.operationRoom,p.patient,p.hospitalNumber,p.serialNumber,p.applicant "+ extraQuery +" " + "FROM " + RecyclingRecord.class.getSimpleName() + " r left join " + InvoicePlan.class.getSimpleName() + " p on r.recyclingApplication_id = p.id " + joinSqlOfUrgent + + (enableUrgentFunction?" left join (select ri.recyclingRecord_id from RecyclingItem ri where ri.urgentAmount>0 group by ri.recyclingRecord_id) b on b.recyclingRecord_id=r.id ":"") + "where r.orgUnitCoding = '" + orgUnitCodingFromSupplyRoomConfig + "' and " @@ -304,6 +306,7 @@ + ",ROW_NUMBER() OVER (order by " +tousseMaterialsLostMustConfirmOrder +recyclingAmountNeedConfirmOrder+" r.recyclingTime desc,r.id desc) AS RowNum " + "FROM " + RecyclingRecord.class.getSimpleName() + " r left join " + InvoicePlan.class.getSimpleName() + " p on r.recyclingApplication_id = p.id " + joinSqlOfUrgent + + (enableUrgentFunction?" left join (select ri.recyclingRecord_id from RecyclingItem ri where ri.urgentAmount>0 group by ri.recyclingRecord_id) b on b.recyclingRecord_id=r.id ":"") + "where r.orgUnitCoding = '" + orgUnitCodingFromSupplyRoomConfig + "' and " @@ -316,6 +319,7 @@ sql = " SELECT * FROM (SELECT * from (SELECT ROWNUM RN,t3.* from (" + "SELECT r.*,p.applicationTime,p.type,p.remark,p.submitTime,p.recyclingStatus,p.specialInfection,p.operationRoom,p.patient,p.hospitalNumber,p.serialNumber "+ extraQuery +" FROM " + RecyclingRecord.class.getSimpleName() + " r left join " + InvoicePlan.class.getSimpleName() + " p on r.recyclingApplication_id = p.id " + joinSqlOfUrgent + + (enableUrgentFunction?" left join (select ri.recyclingRecord_id from RecyclingItem ri where ri.urgentAmount>0 group by ri.recyclingRecord_id) b on b.recyclingRecord_id=r.id ":"") + "where r.orgUnitCoding = '" + orgUnitCodingFromSupplyRoomConfig + "' and " @@ -324,6 +328,7 @@ + " union all " + "SELECT r.*,p.applicationTime,p.type,p.remark,p.submitTime,p.recyclingStatus,p.specialInfection,p.operationRoom,p.patient,p.hospitalNumber,p.serialNumber "+ extraQuery +" FROM " + RecyclingRecord.class.getSimpleName() + " r left join " + InvoicePlan.class.getSimpleName() + " p on r.recyclingApplication_id = p.id " + joinSqlOfUrgent + + (enableUrgentFunction?" left join (select ri.recyclingRecord_id from RecyclingItem ri where ri.urgentAmount>0 group by ri.recyclingRecord_id) b on b.recyclingRecord_id=r.id ":"") + "where r.orgUnitCoding = '" + orgUnitCodingFromSupplyRoomConfig + "' and " @@ -339,6 +344,7 @@ }else{ sql = "SELECT * FROM (SELECT A.*, ROWNUM RN FROM (SELECT r.*,p.applicationTime,p.type,p.remark,p.submitTime,p.recyclingStatus,p.specialInfection,p.operationRoom,p.patient,p.hospitalNumber,p.serialNumber "+ extraQuery +" FROM " + RecyclingRecord.class.getSimpleName() + " r left join " + InvoicePlan.class.getSimpleName() + " p on r.recyclingApplication_id = p.id " + joinSqlOfUrgent + + (enableUrgentFunction?" left join (select ri.recyclingRecord_id from RecyclingItem ri where ri.urgentAmount>0 group by ri.recyclingRecord_id) b on b.recyclingRecord_id=r.id ":"") + "where r.orgUnitCoding = '" + orgUnitCodingFromSupplyRoomConfig + "' and "