diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/regdoctorstation/RequestFormManageAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/regdoctorstation/RequestFormManageAppMapper.xml index d6318fb6b..4ebf576f8 100755 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/regdoctorstation/RequestFormManageAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/regdoctorstation/RequestFormManageAppMapper.xml @@ -13,15 +13,14 @@ drf.requester_id, drf.create_time, ap.NAME AS patient_name, - CASE MIN(wsr.status_enum) - WHEN 1 THEN 0 - WHEN 2 THEN 1 - WHEN 3 THEN 4 - WHEN 4 THEN 4 - WHEN 5 THEN 5 - WHEN 6 THEN 5 - WHEN 7 THEN 5 - WHEN 8 THEN 6 + CASE + WHEN MIN(wsr.status_enum) = 1 THEN 0 + WHEN MIN(wsr.status_enum) = 2 THEN 1 + WHEN MIN(wsr.status_enum) = 3 AND MAX(CASE WHEN wsr.performer_check_id IS NOT NULL THEN 1 ELSE 0 END) = 1 THEN 2 + WHEN MIN(wsr.status_enum) = 3 THEN 4 + WHEN MIN(wsr.status_enum) = 4 THEN 3 + WHEN MIN(wsr.status_enum) = 5 OR MIN(wsr.status_enum) = 6 OR MIN(wsr.status_enum) = 7 THEN 7 + WHEN MIN(wsr.status_enum) = 8 THEN 6 ELSE NULL END AS status FROM doc_request_form AS drf @@ -41,15 +40,14 @@ AND drf.create_time <= (#{endDate}::date + INTERVAL '1 day' - INTERVAL '1 second') - AND CASE MIN(wsr.status_enum) - WHEN 1 THEN 0 - WHEN 2 THEN 1 - WHEN 3 THEN 4 - WHEN 4 THEN 4 - WHEN 5 THEN 5 - WHEN 6 THEN 5 - WHEN 7 THEN 5 - WHEN 8 THEN 6 + AND CASE + WHEN MIN(wsr.status_enum) = 1 THEN 0 + WHEN MIN(wsr.status_enum) = 2 THEN 1 + WHEN MIN(wsr.status_enum) = 3 AND MAX(CASE WHEN wsr.performer_check_id IS NOT NULL THEN 1 ELSE 0 END) = 1 THEN 2 + WHEN MIN(wsr.status_enum) = 3 THEN 4 + WHEN MIN(wsr.status_enum) = 4 THEN 3 + WHEN MIN(wsr.status_enum) = 5 OR MIN(wsr.status_enum) = 6 OR MIN(wsr.status_enum) = 7 THEN 7 + WHEN MIN(wsr.status_enum) = 8 THEN 6 ELSE NULL END = #{status}::integer diff --git a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/RequestStatus.java b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/RequestStatus.java index 20689eaa7..501082d13 100755 --- a/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/RequestStatus.java +++ b/openhis-server-new/openhis-common/src/main/java/com/openhis/common/enums/RequestStatus.java @@ -49,6 +49,11 @@ public enum RequestStatus implements HisEnumInterface { */ ENDED(7, "ended", "不执行"), + /** + * 已出报告 + */ + COMPLETED_REPORT(8, "completed_report", "已出报告"), + /** * 未知 */