From 3bb8bf000afddb769315d30f5387fe5844883837 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期三, 04 九月 2024 09:48:18 +0800
Subject: [PATCH] 叫号功能 step 1

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java |   29 ++++++++++++++
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomPageReqVO.java |    4 ++
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomSaveReqVO.java |    3 +
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java         |    6 +++
 sql/mysql/jh.sql                                                                                                |   56 ++++++++++++++-------------
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomRespVO.java    |    4 ++
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/room/RoomDO.java             |    5 ++
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueService.java             |    2 +
 8 files changed, 82 insertions(+), 27 deletions(-)

diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java
index 381f824..1a65df1 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java
@@ -3,6 +3,7 @@
 import cn.lihu.jh.framework.common.exception.ErrorCode;
 import cn.lihu.jh.framework.security.core.util.SecurityFrameworkUtils;
 import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomRespVO;
+import cn.lihu.jh.module.ecg.enums.QueueStatusEnum;
 import cn.lihu.jh.module.ecg.service.config.EcgConfigService;
 import cn.lihu.jh.module.ecg.service.config.EcgConfigServiceImpl;
 import org.springframework.scheduling.config.ScheduledTaskRegistrar;
@@ -154,4 +155,32 @@
         ecgConfigService.resetScheduler();
         return success(0);
     }
+
+    @GetMapping("/calling-data")
+    @Operation(summary = "澶у睆鍙彿鏁版嵁")
+    @PreAuthorize("@ss.hasPermission('ecg:queue:setting')")
+    public CommonResult<List<QueueRespVO>> callingData(
+            @RequestParam("waitingNum") Integer waitingNum,
+            @RequestParam("passedNum") Integer passedNum)
+    {
+        List<QueueDO> queueDOList = queueService.callingData(waitingNum, passedNum);
+        return success( BeanUtils.toBean(queueDOList, QueueRespVO.class) );
+    }
+
+    @GetMapping("/room-screen-data")
+    @Operation(summary = "璇婇棿灞忔暟鎹�")
+    @PreAuthorize("@ss.hasPermission('ecg:queue:setting')")
+    public CommonResult<List<QueueRespVO>> callingDataRoom(
+            @RequestParam("roomId") Long roomId,
+            @RequestParam("bedNo") String bedNo)
+    {
+        List<Byte> queueStatusList = new ArrayList<>();
+        queueStatusList.add(QueueStatusEnum.READY.getStatus());
+        queueStatusList.add(QueueStatusEnum.ONSTAGE.getStatus());
+        queueStatusList.add(QueueStatusEnum.PASSED.getStatus());
+
+        List<QueueDO> queueDOList = queueService.getDoctorQueueByStatus(roomId, bedNo, queueStatusList);
+        return success(BeanUtils.toBean(queueDOList, QueueRespVO.class));
+    }
+
 }
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomPageReqVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomPageReqVO.java
index 99d343d..d5b92ca 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomPageReqVO.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomPageReqVO.java
@@ -1,5 +1,6 @@
 package cn.lihu.jh.module.ecg.controller.admin.room.vo;
 
+import com.alibaba.excel.annotation.ExcelProperty;
 import lombok.*;
 import java.util.*;
 import io.swagger.v3.oas.annotations.media.Schema;
@@ -24,6 +25,9 @@
     @Schema(description = "璇婄枟搴婄紪鍙�")
     private String bedNo;
 
+    @Schema(description = "璇婂IP")
+    private String ip;
+
     @Schema(description = "寮�璇婄姸鎬�")
     private Integer status;
 
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomRespVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomRespVO.java
index 17bb027..e7f6ad3 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomRespVO.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomRespVO.java
@@ -28,6 +28,10 @@
     @ExcelProperty("璇婄枟搴婄紪鍙�")
     private String bedNo;
 
+    @Schema(description = "璇婂IP")
+    @ExcelProperty("璇婂IP")
+    private String ip;
+
     @Schema(description = "寮�璇婄姸鎬�", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("寮�璇婄姸鎬�")
     private Integer status;
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomSaveReqVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomSaveReqVO.java
index ba2d9f2..b436b76 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomSaveReqVO.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/vo/RoomSaveReqVO.java
@@ -28,6 +28,9 @@
     @NotEmpty(message = "璇婄枟搴婄紪鍙蜂笉鑳戒负绌�")
     private String bedNo;
 
+    @Schema(description = "璇婂IP")
+    private String ip;
+
     @Schema(description = "寮�璇婄姸鎬�", requiredMode = Schema.RequiredMode.REQUIRED)
     private Integer status;
 
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/room/RoomDO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/room/RoomDO.java
index f8f139e..5e7a481 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/room/RoomDO.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/room/RoomDO.java
@@ -42,6 +42,11 @@
     private String bedNo;
 
     /**
+     * 璇婂IP
+     */
+    private String ip;
+
+    /**
      * 璇婄枟搴婄姸鎬�
      * @see BedStatusEnum
      */
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 c671170..39e7114 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
@@ -118,4 +118,6 @@
     Integer patientJump(String patId, Byte jumped );
 
     void monitorInfo();
+
+    List<QueueDO> callingData(Integer waitingNum, Integer passedNum);
 }
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java
index 63ed788..831784f 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java
@@ -679,4 +679,10 @@
                  + " opening " + openingFlag.get());
     }
 
+    @Override
+    public List<QueueDO> callingData(Integer waitingNum, Integer passedNum) {
+        //queueMapper.
+        return null;
+    }
+
 }
diff --git a/sql/mysql/jh.sql b/sql/mysql/jh.sql
index 97f3bc7..491a578 100644
--- a/sql/mysql/jh.sql
+++ b/sql/mysql/jh.sql
@@ -43,33 +43,34 @@
 -- ----------------------------
 DROP TABLE IF EXISTS `queue`;
 CREATE TABLE `queue` (
-                         `id` int NOT NULL AUTO_INCREMENT COMMENT 'id',
-                         `pat_id` varchar(30) NOT NULL COMMENT '鎮h�呯紪鍙�',
-                         `pat_name` varchar(10) NOT NULL COMMENT '鎮h�呭鍚�',
-                         `pat_gender` tinyint DEFAULT NULL COMMENT '鎮h�呮�у埆',
-                         `book_date` date NOT NULL COMMENT '棰勭害鏃ユ湡',
-                         `book_timeslot` int NOT NULL COMMENT '棰勭害鏃堕棿娈�',
-                         `book_check_type` tinyint DEFAULT NULL COMMENT '棰勭害妫�鏌ョ被鍨�',
-                         `seq_num` int DEFAULT NULL COMMENT '鎺掗槦搴忓彿',
-                         `status` tinyint NOT NULL COMMENT '10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡',
-                         `passed` tinyint DEFAULT '0' COMMENT '杩囧彿鏍囪',
-                         `expired` tinyint DEFAULT '0' COMMENT '棰勭害杩囨湡鏍囪',
-                         `jump_flag` tinyint DEFAULT '0' COMMENT '鎻掗槦鏍囪',
-                         `room_id` bigint DEFAULT '0' COMMENT '璇婂缂栧彿',
-                         `room_name` varchar(10) DEFAULT '' COMMENT '璇婂鍚嶇О',
-                         `bed_no` varchar(10) DEFAULT '' COMMENT '璇婄枟搴婄紪鍙�',
-                         `tenant_id` int DEFAULT '1' COMMENT '绉熸埛缂栧彿',
-                         `creator` varchar(10) DEFAULT '' COMMENT '鍒涘缓鑰�',
-                         `create_time` datetime NOT NULL COMMENT '鍒涘缓鏃堕棿',
-                         `updater` varchar(10) DEFAULT '' COMMENT '鏇存柊鑰�',
-                         `update_time` datetime NOT NULL COMMENT '鏇存柊鏃堕棿',
-                         `deleted` bit(1) DEFAULT b'0' COMMENT '鍒犻櫎鏍囪',
-                         PRIMARY KEY (`id`),
-                         UNIQUE KEY `unique_pat_id` (`pat_id`) USING BTREE,
-                         KEY `idx_status` (`status`) USING BTREE,
-                         KEY `idx_seq_num` (`seq_num`) USING BTREE,
-                         KEY `idx_room_bed_status` (`room_id`,`bed_no`,`status`) USING BTREE
-) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='鎺掗槦琛�';
+     `id` int NOT NULL AUTO_INCREMENT COMMENT 'id',
+     `pat_id` varchar(30) NOT NULL COMMENT '鎮h�呯紪鍙�',
+     `pat_name` varchar(10) NOT NULL COMMENT '鎮h�呭鍚�',
+     `pat_gender` tinyint DEFAULT NULL COMMENT '鎮h�呮�у埆',
+     `book_date` date NOT NULL COMMENT '棰勭害鏃ユ湡',
+     `book_timeslot` int NOT NULL COMMENT '棰勭害鏃堕棿娈�',
+     `book_check_type` tinyint DEFAULT NULL COMMENT '棰勭害妫�鏌ョ被鍨�',
+     `seq_num` int DEFAULT NULL COMMENT '鎺掗槦搴忓彿',
+     `status` tinyint NOT NULL COMMENT '10:鎺掗槦涓� 20:鍊欒瘖鍑嗗 30:灏辫瘖涓� 40:灏辫瘖瀹屾垚 50:杩囧彿 60:杩囨湡',
+     `passed` tinyint DEFAULT '0' COMMENT '杩囧彿鏍囪',
+     `expired` tinyint DEFAULT '0' COMMENT '棰勭害杩囨湡鏍囪',
+     `called` int DEFAULT '0' COMMENT '鍙彿鐘舵�� 0 鏈挱 1 宸叉挱 ',
+     `jump_flag` tinyint DEFAULT '0' COMMENT '鎻掗槦鏍囪',
+     `room_id` bigint DEFAULT '0' COMMENT '璇婂缂栧彿',
+     `room_name` varchar(10) DEFAULT '' COMMENT '璇婂鍚嶇О',
+     `bed_no` varchar(10) DEFAULT '' COMMENT '璇婄枟搴婄紪鍙�',
+     `tenant_id` int DEFAULT '1' COMMENT '绉熸埛缂栧彿',
+     `creator` varchar(10) DEFAULT '' COMMENT '鍒涘缓鑰�',
+     `create_time` datetime NOT NULL COMMENT '鍒涘缓鏃堕棿',
+     `updater` varchar(10) DEFAULT '' COMMENT '鏇存柊鑰�',
+     `update_time` datetime NOT NULL COMMENT '鏇存柊鏃堕棿',
+     `deleted` bit(1) DEFAULT b'0' COMMENT '鍒犻櫎鏍囪',
+     PRIMARY KEY (`id`),
+     UNIQUE KEY `unique_pat_id` (`pat_id`) USING BTREE,
+     KEY `idx_status` (`status`) USING BTREE,
+     KEY `idx_seq_num` (`seq_num`) USING BTREE,
+     KEY `idx_room_bed_status` (`room_id`,`bed_no`,`status`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='鎺掗槦琛�';
 
 -- ----------------------------
 -- Table structure for clinic_room
@@ -83,6 +84,7 @@
        `status` int NOT NULL DEFAULT '0',
        `doc_id` bigint DEFAULT NULL,
        `doc_name` varchar(10) DEFAULT '',
+       `ip` char(15) DEFAULT '',
        `creator` varchar(10) DEFAULT '' COMMENT '鍒涘缓鑰�',
        `create_time` datetime NOT NULL COMMENT '鍒涘缓鏃堕棿',
        `updater` varchar(10) DEFAULT '' COMMENT '鏇存柊鑰�',

--
Gitblit v1.9.3