diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/NursingRecordAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/NursingRecordAppMapper.xml index 385f40fe..70002ada 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/NursingRecordAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/NursingRecordAppMapper.xml @@ -31,33 +31,33 @@ ON T2.patient_id = T1.id AND T2.class_enum = #{classEnum} AND T2.delete_flag = '0' - INNER JOIN (SELECT encounter_id, - location_id, - form_enum, - delete_flag - FROM (SELECT encounter_id, - location_id, - form_enum, - delete_flag, - ROW_NUMBER() OVER (PARTITION BY encounter_id - ORDER BY - CASE - WHEN update_time IS NULL THEN create_time - ELSE update_time - END DESC) AS rn - FROM adm_encounter_location - WHERE form_enum = #{ward} - AND delete_flag = '0' - ) ranked - WHERE rn = 1) AS T3 - ON T3.encounter_id = T2.ID - INNER JOIN adm_encounter_location AS T4 + INNER JOIN (SELECT encounter_id, + location_id, + form_enum, + delete_flag + FROM (SELECT encounter_id, + location_id, + form_enum, + delete_flag, + ROW_NUMBER() OVER (PARTITION BY encounter_id + ORDER BY + CASE + WHEN update_time IS NULL THEN create_time + ELSE update_time + END DESC) AS rn + FROM adm_encounter_location + WHERE form_enum = #{ward} + AND delete_flag = '0' + ) ranked + WHERE rn = 1) AS T3 + ON T3.encounter_id = T2.ID + LEFT JOIN adm_encounter_location AS T4 ON T4.encounter_id = T2.ID AND T4.form_enum = #{bed} AND T4.status_enum = #{active} AND T4.delete_flag = '0' - WHERE T1.delete_flag = '0' - ORDER BY T4.location_id ASC) AS T5 + WHERE T1.delete_flag = '0' + ORDER BY T4.location_id ASC) AS T5 ${ew.customSqlSegment} @@ -97,32 +97,32 @@ ON T2.patient_id = T1.id AND T2.class_enum = #{classEnum} AND T2.delete_flag = '0' - INNER JOIN (SELECT encounter_id, - location_id, - form_enum, - delete_flag - FROM (SELECT encounter_id, - location_id, - form_enum, - delete_flag, - ROW_NUMBER() OVER (PARTITION BY encounter_id - ORDER BY - CASE - WHEN update_time IS NULL THEN create_time - ELSE update_time - END DESC) AS rn - FROM adm_encounter_location - WHERE form_enum = #{ward} - AND delete_flag = '0' - ) ranked - WHERE rn = 1) AS T3 - ON T3.encounter_id = T2.ID - INNER JOIN adm_encounter_location AS T4 + INNER JOIN (SELECT encounter_id, + location_id, + form_enum, + delete_flag + FROM (SELECT encounter_id, + location_id, + form_enum, + delete_flag, + ROW_NUMBER() OVER (PARTITION BY encounter_id + ORDER BY + CASE + WHEN update_time IS NULL THEN create_time + ELSE update_time + END DESC) AS rn + FROM adm_encounter_location + WHERE form_enum = #{ward} + AND delete_flag = '0' + ) ranked + WHERE rn = 1) AS T3 + ON T3.encounter_id = T2.ID + LEFT JOIN adm_encounter_location AS T4 ON T4.encounter_id = T2.ID AND T4.form_enum = #{bed} AND T4.status_enum = #{active} AND T4.delete_flag = '0' - LEFT JOIN doc_emr AS T5 + LEFT JOIN doc_emr AS T5 ON T5.patient_id = T1.id AND T5.encounter_id = T2.ID AND T5.class_enum = 1 --护理记录单