From ce9b0cd02c3357834e9921c2f96c55d9816defa9 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期一, 14 四月 2025 13:43:01 +0800
Subject: [PATCH] 获取 诊室 安装队列

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java |   22 ++++++++++++++++------
 1 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java
index 9b42c14..9eb47ac 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java
@@ -51,9 +51,19 @@
             " <foreach collection='statusList' separator=',' item='status'>" +
             " #{status} " +
             " </foreach> )" +
-            " order by status desc, seq_num" +
+            " order by status desc, seq_num, book_timeslot" +
             "</script>")
     List<QueueDO> getRoomQueueByStatus(@Param("roomId")Long roomId, @Param("statusList")List<Integer> statusList);
+
+    @Select("<script>" +
+            "SELECT * FROM lihu.queue " +
+            "where room_id = #{roomId} and status in (" +
+            " <foreach collection='statusList' separator=',' item='status'>" +
+            " #{status} " +
+            " </foreach> )" +
+            " order by status desc, seq_num, create_time" +
+            "</script>")
+    List<QueueDO> getRoomInstallQueueByStatus(@Param("roomId")Long roomId, @Param("statusList")List<Integer> statusList);
 
     @Select("<script>" +
             "SELECT * FROM lihu.queue " +
@@ -173,14 +183,14 @@
             " <foreach collection='statusList' separator=',' item='status'>" +
             "   #{status} " +
             " </foreach> ) " +
-            " order by status desc, seq_num " +
+            " order by status desc, seq_num, book_timeslot " +
             "</script>")
     @Results({
             @Result(property = "patDetails", column = "pat_details", typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler.class)
     })
     List<QueueDO> getBedQueueByStatus(@Param("roomId")Long roomId, @Param("bedNo")String bedNo, @Param("statusList")List<Integer> statusList);
 
-    @Select("SELECT * from lihu.queue where room_id = #{roomId} and bed_no = #{bedNo} and status = #{curStatus} order by seq_num, create_time limit 1")
+    @Select("SELECT * from lihu.queue where room_id = #{roomId} and bed_no = #{bedNo} and status = #{curStatus} order by seq_num, book_timeslot, create_time limit 1")
     QueueDO getFirstItemByBedAndStatus(@Param("roomId")Long roomId, @Param("bedNo")String bedNo, @Param("curStatus")Integer curStatus);
 
     // 鏌愪釜璇婂鑼冨洿鍐� [宸查鐢╙ [宸插彫鍥�-瀹夎] 浜哄憳 鎶㈠崰, 浼氭洿鏂� [宸ヤ綅鍙穄
@@ -192,7 +202,7 @@
             "       </foreach> )" +
             "       order by seq_num, create_time limit 1 " +
             "</script>" )
-    QueueDO getFirstItemByRoomAndStatus(@Param("roomId")Long roomId, @Param("curStatusList")List<Integer> curStatusList);
+    QueueDO getFirstInstallItemByRoomAndStatus(@Param("roomId")Long roomId, @Param("curStatusList")List<Integer> curStatusList);
 
     @Select("<script> " +
             "select * from lihu.queue where appoint_id in ( " +
@@ -229,7 +239,7 @@
             "           <foreach collection='curStatusList' separator=',' item='status'>" +
             "             #{status} " +
             "           </foreach> )" +
-            "       order by seq_num, create_time limit 1 " +
+            "       order by seq_num, book_timeslot, create_time limit 1 " +
             "    ) a " +
             "  )" +
             "</script>"
@@ -265,7 +275,7 @@
             " where id = " +
             "  (select a.id from \n" +
             "    (select id from lihu.queue where room_id = #{roomId} and bed_no = #{bedNo} and status = #{curStatus} " +
-            "      order by seq_num limit 1" +
+            "      order by seq_num, book_timeslot limit 1" +
             "    ) a" +
             "  )" )
     Integer queueRecalledPatient(@Param("roomId")Long roomId, @Param("roomName")String roomName, @Param("bedNo")String bedNo,

--
Gitblit v1.9.3