From c663b36cebeed7b40498a4e676559b62c0d4bee6 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期一, 31 三月 2025 15:37:02 +0800 Subject: [PATCH] 预约确认、加急 都触发 抢排队中 患者 --- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java | 32 +++++++++++++++++++++++++------- 1 files changed, 25 insertions(+), 7 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 a344533..a037c4f 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 @@ -42,8 +42,8 @@ @Select("SELECT * FROM lihu.queue where seq_num = #{seqNum}") QueueDO getQueueItemBySeqNum(@Param("seqNum")Integer seqNum); - @Select("SELECT * FROM lihu.queue where pat_id = #{patId}") - QueueDO getQueueByPatId(@Param("patId")String patId); + @Select("SELECT * FROM lihu.queue where pat_id = #{patId} and book_check_type = #{bookCheckType}") + QueueDO getQueueByPatId(@Param("patId")String patId, @Param("bookCheckType")Integer bookCheckType); @Select("<script>" + "SELECT * FROM lihu.queue " + @@ -210,11 +210,15 @@ @Param("curStatus")Integer curStatus); */ + @Update("update lihu.queue set status = #{newStatus} where pat_id = #{patId} and book_check_type = #{checkType} and status = #{curStatus}; " ) + Integer updatePatientQueueStatus(@Param("patId")String patId, @Param("checkType")Integer checkType, @Param("curStatus")Integer curStatus, @Param("newStatus")Integer newStatus); + @Update("update lihu.queue set status = #{newStatus} where status = #{curStatus} and seq_num = \n" + "(select a.min_seq_num from \n" + " (select min(seq_num) as min_seq_num from lihu.queue where room_id = #{roomId} and bed_no = #{bedNo} and status = #{curStatus}) a )") Integer updateBedQueueStatus(@Param("roomId")Long roomId, @Param("bedNo")String bedNo, @Param("curStatus")Integer curStatus, @Param("newStatus")Integer newStatus); + // 寮冪敤鍘熷洜锛氶渶瑕佸厛鑾峰彇锛屽垽鏂�昏緫澶勭悊鍚庯紝鍐嶆洿鏂� // 鏌愪釜璇婂鑼冨洿鍐� [宸查鐢╙ [宸插彫鍥�-瀹夎] 浜哄憳 鎶㈠崰, 浼氭洿鏂� [宸ヤ綅鍙穄 // 娌℃湁闄愬畾妫�鏌ョ被鍨嬶紝涓嶈浣跨敤鏃堕棿妲� @Update("<script> " + @@ -232,9 +236,6 @@ ) Integer preemptToBeInstalledPatient(@Param("roomId")Long roomId, @Param("bedNo")String bedNo, @Param("curStatusList")List<Integer> curStatusList, @Param("newStatus")Integer newStatus); - @Update("update lihu.queue set status = #{newStatus} where pat_id = #{patId} and status = #{curStatus}") - Integer updatePatientQueueStatus(@Param("patId")String patId, @Param("curStatus")Integer curStatus, @Param("newStatus")Integer newStatus); - // 鏁翠釜绯荤粺鑼冨洿鍐� [鎺掗槦涓璢浜哄憳 [琚伐浣嶅尰鐢焆鎶㈠崰 @Update("update lihu.queue set status = #{newStatus}, room_id = #{roomId}, room_name = #{roomName}, \n" + " bed_no = #{bedNo}, seq_num = #{seqNum} where id = \n" + @@ -243,6 +244,22 @@ Integer preemptWaitingPatient(@Param("roomId")Long roomId, @Param("roomName")String roomName, @Param("bedNo")String bedNo, @Param("seqNum")Integer seqNum, @Param("curStatus")Integer curStatus, @Param("newStatus")Integer newStatus, @Param("checkType")Integer checkType); + + // 鏁翠釜绯荤粺鑼冨洿鍐� [鎺掗槦涓璢浜哄憳 [琚伐浣嶅尰鐢焆鎶㈠崰 鏍规嵁 澶氫釜妫�鏌ラ」鐩� + @Update("<script>" + + "update lihu.queue set status = #{newStatus}, room_id = #{roomId}, room_name = #{roomName}, \n" + + " bed_no = #{bedNo}, seq_num = #{seqNum} where id = \n" + + " (select a.id from \n" + + " (select id from lihu.queue where status = #{curStatus} " + + " and book_check_type in ( " + + " <foreach collection='checkTypeArray' separator=',' item='_checkType'>" + + " #{_checkType} " + + " </foreach> )" + + " order by jump_flag desc, book_timeslot, create_time limit 1) a) " + + "</script>") + Integer preemptWaitingPatientWithBedCheckTypes(@Param("roomId")Long roomId, @Param("roomName")String roomName, @Param("bedNo")String bedNo, + @Param("seqNum")Integer seqNum, @Param("curStatus")Integer curStatus, @Param("newStatus")Integer newStatus, + @Param("checkTypeArray")Integer[] checkTypeArray); @Update("update lihu.queue set status = #{newStatus}, seq_num = #{seqNum} " + " where id = " + @@ -269,8 +286,9 @@ @Param("curStatus")Integer curStatus, @Param("newStatus")Integer newStatus); @Update("update lihu.queue set jump_flag = #{jumped} " + - " where status = #{curStatus} and pat_id = #{patId}") - Integer queueJump(@Param("patId")String patId, @Param("curStatus")Integer curStatus, @Param("jumped")Byte jumped ); + " where status = #{curStatus} and pat_id = #{patId} and book_check_type=#{bookCheckType}") + Integer queueJump(@Param("patId")String patId, @Param("bookCheckType")Integer bookCheckType, + @Param("curStatus")Integer curStatus, @Param("jumped")Byte jumped ); //@Update("TRUNCATE TABLE lihu.queue") @Delete("delete from lihu.queue where TO_DAYS(book_date) != TO_DAYS(NOW())") -- Gitblit v1.9.3