From b765c3a93685c4c97601aff6291a00ec770a537e Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期三, 04 九月 2024 18:19:35 +0800
Subject: [PATCH] 诊间屏

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java |   88 +++++++++++++++++++++++++++++++++++++-------
 1 files changed, 74 insertions(+), 14 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 9cf0b70..05ab0b3 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
@@ -1,6 +1,14 @@
 package cn.lihu.jh.module.ecg.controller.admin.queue;
 
+import cn.hutool.extra.servlet.ServletUtil;
 import cn.lihu.jh.framework.common.exception.ErrorCode;
+import cn.lihu.jh.framework.common.util.servlet.ServletUtils;
+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;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -16,6 +24,7 @@
 import cn.lihu.jh.framework.common.pojo.CommonResult;
 import cn.lihu.jh.framework.common.util.object.BeanUtils;
 
+import static cn.lihu.jh.framework.common.exception.enums.GlobalErrorCodeConstants.SUCCESS;
 import static cn.lihu.jh.framework.common.pojo.CommonResult.error;
 import static cn.lihu.jh.framework.common.pojo.CommonResult.success;
 
@@ -28,6 +37,8 @@
 import cn.lihu.jh.module.ecg.dal.dataobject.queue.QueueDO;
 import cn.lihu.jh.module.ecg.service.queue.QueueService;
 
+import javax.annotation.security.PermitAll;
+import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import javax.annotation.Resource;
@@ -36,10 +47,13 @@
 @RestController
 @RequestMapping("/ecg/queue")
 @Validated
-public class queueController {
+public class QueueController {
 
     @Resource
     private QueueService queueService;
+
+    @Resource
+    private EcgConfigService ecgConfigService;
 
     @PostMapping("/create")
     @Operation(summary = "鍒涘缓鎺掗槦")
@@ -95,21 +109,32 @@
                         BeanUtils.toBean(list, QueueRespVO.class));
     }
 
-    @GetMapping("/opening-setting")
-    @Operation(summary = "寮�璇婅缃�")
-    @PreAuthorize("@ss.hasPermission('ecg:queue:setting')")
-    public CommonResult<Integer> openingSetting() {
-        // 浠嶥B鍚屾宸ヤ綅鐨勬偅鑰呴槦鍒楁暟鎹埌 宸ヤ綅浼樺厛闃熷垪, 鍙兘鏈夋柊寮�宸ヤ綅
-        queueService.initQueue();
-        return success(0);
+    @GetMapping("/bed-open")
+    @Operation(summary = "宸ヤ綅寮�閫�")
+    @PreAuthorize("@ss.hasPermission('ecg:queue:bedcontrol')")
+    public CommonResult<Integer> bedOpen(
+        @RequestParam("roomId") Long roomId,
+        @RequestParam("bedNo") String bedNo)
+    {
+        ErrorCode result = queueService.startBedOpen(roomId, bedNo);
+        if (result.equals(SUCCESS))
+            return success(0);
+
+        return error(result);
     }
 
-    @GetMapping("/startbiz")
-    @Operation(summary = "鎵嬪姩寮�璇�")
-    @PreAuthorize("@ss.hasPermission('ecg:queue:setting')")
-    public CommonResult<Integer> startBiz() {
-        queueService.startBiz();
-        return success(0);
+    @GetMapping("/bed-close")
+    @Operation(summary = "宸ヤ綅鍏抽棴")
+    @PreAuthorize("@ss.hasPermission('ecg:queue:bedcontrol')")
+    public CommonResult<Integer> bedClose(
+        @RequestParam("roomId") Long roomId,
+        @RequestParam("bedNo") String bedNo)
+    {
+        ErrorCode result = queueService.startBedClose(roomId, bedNo);
+        if (result.equals(SUCCESS))
+            return success(0);
+
+        return error(result);
     }
 
     @GetMapping("/patient-jump")
@@ -127,4 +152,39 @@
         return success("success");
     }
 
+    @GetMapping("/reset-scheduler")
+    @Operation(summary = "閲嶇疆璋冨害鍣�")
+    @PreAuthorize("@ss.hasPermission('ecg:queue:setting')")
+    public CommonResult<Integer> resetScheduler() {
+        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 = "璇婇棿灞忔暟鎹�")
+    @PermitAll
+    public CommonResult<List<QueueRespVO>> callingDataRoom(HttpServletRequest request)
+    {
+        String reqIp = ServletUtil.getClientIP(request);
+
+        List<Byte> queueStatusList = new ArrayList<>();
+        queueStatusList.add(QueueStatusEnum.READY.getStatus());
+        queueStatusList.add(QueueStatusEnum.ONSTAGE.getStatus());
+        queueStatusList.add(QueueStatusEnum.PASSED.getStatus());
+
+        List<QueueDO> queueDOList = queueService.getRoomQueue(reqIp, queueStatusList);
+        return success(BeanUtils.toBean(queueDOList, QueueRespVO.class));
+    }
+
 }

--
Gitblit v1.9.3