From 1f23e7dfc186c65434eda46fd6756d41fd01e867 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期三, 11 十一月 2026 00:00:37 +0800
Subject: [PATCH] ai优化

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueService.java |   55 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 53 insertions(+), 2 deletions(-)

diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueService.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueService.java
index 3fd8f0c..34c755c 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueService.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueService.java
@@ -57,7 +57,27 @@
      * 涓�涓伐浣� 鍙兘鏀寔澶氫釜妫�鏌ョ被鍨嬶紝
      */
     void startHurryUpOneBed(Long roomId, String bedNo);
+
+    /**
+     * 绔嬪嵆琛ヤ汉锛堢幇鍦鸿嚜鏁� + 鑷姪璇婃柇锛夛細鎵嬪姩瑙﹀彂涓�娆¤宸ヤ綅鐨勮嚜鍔ㄥ垎娴侊紝
+     * 骞惰繑鍥炪�岀郴缁熷紑璇婄姸鎬� / 鏄惁鍋滄鍊欒瘖 / 鍊欒瘖涓婇檺 / 琛ヤ汉鍓嶅悗浜烘暟 / 缁撹銆嶃��
+     *
+     * <p>璋冪敤鏂瑰繀椤讳繚璇�"褰撳墠鐧诲綍浜烘槸璇ュ伐浣嶄富浜�"锛圕ontroller 涓婄敤 {@code @RequireBedOwner}锛夈��
+     */
+    java.util.Map<String, Object> hurryUpNow(Long roomId, String bedNo);
     void startHurryUpOneCheckType(Integer checkType);
+
+    /**
+     * 鍏滃簳锛氬**鎵�鏈�**寮�璇婂伐浣嶈Е鍙戜竴娆¤嚜鍔ㄨˉ浜猴紙绛変环浜庨�愪釜 {@link #startHurryUpOneBed}锛夈��
+     *
+     * <p>鐢� {@code QueueAutoRefillJob} 鍛ㄦ湡鎬ц皟鐢細鍒嗘祦鏈韩鏄�"浜嬩欢椹卞姩"鐨�
+     * 锛堢鍒� / 鍏ュ骇 / 寮�璇� / 鍙彿 / 瀹屾垚鍚勮Е鍙戜竴娆★級锛屼换浣曚竴娆¤Е鍙戞病璺戝埌鎴栬窇鏃╀簡
+     * 锛堜緥濡傜鍒颁簨鍔¤繕娌℃彁浜ゃ�佹墽琛屽櫒寮傚父锛夛紝鎮h�呭氨浼氫竴鐩村仠鍦ㄣ�屾帓闃熶腑銆嶏紝
+     * 鍙兘鐢卞尰鐢熸墜宸ャ�屾媺鍏ャ�嶃�傚懆鏈熷厹搴曚繚璇佽繖绉嶆紡缃戞渶澶� 1 鍒嗛挓灏辫琛ヤ笂銆�
+     *
+     * <p>闂ㄩ椄涓嶅彉锛氭湭寮�璇� / 鍋滄鍊欒瘖 / 鍊欒瘖鍖哄凡婊� 鏃剁収鏍蜂笉浼氳ˉ浜恒��
+     */
+    void startHurryUpAll();
 
     void startBedReload();
     void startResetRoom(Boolean needCloseBed);
@@ -67,8 +87,35 @@
     ErrorCode startBedClose(Long roomId, String bedNo);
     ErrorCode startBedDoctorPause(Long roomId, String bedNo, Long docId, String docName);
     ErrorCode startBedDoctorResume(Long roomId, String bedNo, Long docId, String docName);
-    ErrorCode startBedDoctorOn(Long roomId, String bedNo, Long docId, String docName);
+    /**
+     * 鍖荤敓鍏ュ骇锛堟妸宸ヤ綅涓讳汉璁句负璇ュ尰鐢燂級銆�
+     *
+     * @param bedId 宸ヤ綅涓婚敭锛堝彲閫夛級锛氫紶鍏ユ椂**浼樺厛鎸夊畠瀹氫綅**锛岄伩鍏� bed_no 涓庤姹傚�煎瓨鍦�
+     *              鑲夌溂闅捐鲸宸紓锛堢粨灏剧┖鏍�/澶у皬鍐�/鍏ㄨ锛夊鑷�"鏄庢槑绌洪棽鍗村叆搴уけ璐�"
+     */
+    ErrorCode startBedDoctorOn(Long roomId, String bedNo, Long docId, String docName, Integer bedId);
+
+    /**
+     * 銆屾湰璇婂鎺掗槦涓紙鏈垎閰嶅伐浣嶏級銆嶇殑鎮h�呭垪琛紙宸ヤ綔鍙�"鏈瘖瀹ゆ帓闃熶腑锛堟湭鍒嗛厤锛�"鍒嗗尯鐢級銆�
+     *
+     * <p>鍊欒瘖鍒楄〃鎸� {@code room_id + bed_no} 鏌ワ紝鍙惈**宸插垎娴佸埌鏈伐浣�**鐨勬偅鑰咃紱
+     * 鎺掗槦涓�(10) 鐨勬偅鑰� {@code bed_no} 涓虹┖锛堝ぇ灞忎細鏄剧ず銆佸伐浣滃彴鐪嬩笉鍒帮級锛岃繖閲屾寜鏈伐浣�
+     * 寮�灞曠殑妫�鏌ラ」鐩崟鐙煡鍑烘潵锛屼緵鍖荤敓鎵嬪伐鎷夊叆銆�
+     */
+    List<cn.lihu.jh.module.ecg.dal.dataobject.queue.QueueDO> getUnassignedWaitingPatient(Long roomId, String bedNo);
+
+    /**
+     * 鎵嬪伐鎶婃煇浣嶃�屾帓闃熶腑銆嶆偅鑰呮媺鍏ユ湰宸ヤ綅锛堚啋 鍑嗗涓級銆�
+     *
+     * <p>璋冪敤鏂瑰繀椤讳繚璇�"褰撳墠鐧诲綍浜烘槸璇ュ伐浣嶄富浜�"锛圕ontroller 涓婄敤 {@code @RequireBedOwner}锛夈��
+     */
+    ErrorCode pullWaitingPatient(Long roomId, String bedNo, Integer queueId);
     ErrorCode startBedDoctorOff(Long roomId, String bedNo, Long docId, String docName);
+
+    /**
+     * 銆愭湰娆¢渶姹傘�戠鐞嗗憳寮哄埗娓呯┖宸ヤ綅锛堜笉瑕佹眰鏄湰浜猴級鈥斺�� 鍖荤敓涓嬬彮蹇樼搴� / 鎹汉浣跨敤鍚屼竴宸ヤ綅鏃剁敤銆�
+     */
+    ErrorCode startBedDoctorOffByAdmin(Long roomId, String bedNo);
     ErrorCode startNextPatient(Long roomId, String bedNo);
     ErrorCode startNextInstallPatient(Long roomId, String bedNo);
 
@@ -96,7 +143,11 @@
      */
     void queue(QueueSaveReqVO queueSaveReqVO);
 
-    List<QueueDO> selectBookSeqNumByAppointIdList(List<Long> appointIdList);
+    /**
+     * 鎸夐绾﹀崟 id 鎵归噺鍙� queue 琛岋紙棰勭害绛惧埌鍓嶅洖濉�屽凡鎺掗槦 + 鎺掗槦鍙� seq_num銆嶇敤锛夈��
+     * <p>鍘熸柟娉曞悕涓� {@code selectBookSeqNumByAppointIdList}锛屽彿缁熶竴鍒� seq_num 鍚庢敼鍚嶃��
+     */
+    List<QueueDO> selectQueueByAppointIdList(List<Long> appointIdList);
 
     /**
      * 甯歌妫�鏌� 鍖荤敓鍙笅涓�浣嶆偅鑰�

--
Gitblit v1.9.3