From fce96ef468291fb9a0e6a4d34ab371315e9485d4 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期六, 03 十月 2026 00:59:44 +0800
Subject: [PATCH] ai优化

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queuesequence/QueueSequenceService.java |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)

diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queuesequence/QueueSequenceService.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queuesequence/QueueSequenceService.java
index 508784b..366e5d5 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queuesequence/QueueSequenceService.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queuesequence/QueueSequenceService.java
@@ -15,6 +15,8 @@
  */
 public interface QueueSequenceService {
 
+    void initQueueSequenceTable();
+
     /**
      * 鍒涘缓褰撳ぉ搴忓彿
      *
@@ -46,6 +48,12 @@
     QueueSequenceDO getQueueSequence(Integer id);
 
     /**
+     * 鑾峰緱鎸囧畾妫�鏌ョ被鍨嬬殑鏃堕棿娈垫儏鍐�
+     *
+     */
+    List<QueueSequenceDO> selectGivenCheckTypeTimeslot(Integer checkType);
+
+    /**
      * 鑾峰緱褰撳ぉ搴忓彿鍒嗛〉
      *
      * @param pageReqVO 鍒嗛〉鏌ヨ
@@ -54,4 +62,29 @@
     PageResult<QueueSequenceDO> getQueueSequencePage(QueueSequencePageReqVO pageReqVO);
 
     void  resetQueueSequence();
+
+    Integer distributeSeqNo(Integer checkType, Integer timeslot);
+    Integer distributeVipSeqNo(Integer checkType, Integer timeslot);
+
+    /**
+     * 鎸夈�愭鏌ョ被鍨嬮厤缃殑瑙勫垯銆戝垎閰嶆帓闃熷簭鍙凤紙绛惧埌鏃惰皟鐢級銆�
+     *
+     * <p>瑙勫垯鏉ヨ嚜 {@code check_type.seq_rule}锛屽彇鍊艰
+     * {@link cn.lihu.jh.module.ecg.enums.SeqRuleEnum}锛�
+     * <ul>
+     *   <li>{@code 0=棰勭害鍙穧   鈥斺�� 鐩存帴鐢ㄩ绾︾郴缁熷凡涓嬪彂鐨勫彿锛坽@code existingSeqNo}锛夛紝涓嶅啀鍒嗛厤锛�</li>
+     *   <li>{@code 1=绛惧埌搴忓彿} 鈥斺�� 褰撳ぉ鍚屾鏌ョ被鍨嬪唴杩炵画閫掑锛屾瘡 9 涓彿棰勭暀 1 涓粰鍔犳�ワ紱</li>
+     *   <li>{@code 2=鏃舵鍙穧   鈥斺�� 鎸夐绾︽椂娈典粠鍙锋睜鍙栧彿锛堟敼閫犲墠鐨勫師鏈夎涓猴紝涔熸槸鏈厤缃椂鐨勯粯璁わ級銆�</li>
+     * </ul>
+     *
+     * @param checkType     妫�鏌ョ被鍨嬪�硷紙{@code check_type.value}锛�
+     * @param timeslot      HIS 涓嬪彂鐨勯绾︽椂娈碉紙浠呰鍒� 2 浣跨敤锛�
+     * @param existingSeqNo 棰勭害绯荤粺宸蹭笅鍙戠殑鍙凤紙浠呰鍒� 0 浣跨敤锛涗负 null 鏃跺洖閫�鍒扮鍒板簭鍙疯鍒欙級
+     * @param urgent        鏄惁鍔犳�ワ紙{@code jjbz=J}锛夆�斺�� 浠呰鍒� 1 浣跨敤锛氬姞鎬ュ彲鍗犵敤棰勭暀鍙�
+     * @return 鍒嗛厤缁欒鎮h�呯殑鎺掗槦搴忓彿锛堜粠 1 寮�濮嬶級
+     */
+    Integer distributeSeqNoByRule(Integer checkType, Integer timeslot,
+                                 Integer existingSeqNo, boolean urgent);
+
+    void initNumber();
 }
\ No newline at end of file

--
Gitblit v1.9.3