From a47e5cd452a405463c03d1d8c4f97884123a46b2 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期三, 04 九月 2024 11:41:33 +0800
Subject: [PATCH] update

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java   |   11 +++++++----
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueServiceImpl.java           |   14 ++++++++++++++
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java |    1 -
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/room/RoomMapper.java                |    3 +++
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/queueMapper.java              |   10 ++++++++++
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/config/EcgConfigServiceImpl.java      |    3 ++-
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/queueService.java               |    2 ++
 7 files changed, 38 insertions(+), 6 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 1a65df1..c3ed451 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,8 @@
 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;
@@ -35,6 +37,7 @@
 import cn.lihu.jh.module.ecg.dal.dataobject.queue.QueueDO;
 import cn.lihu.jh.module.ecg.service.queue.QueueService;
 
+import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import javax.annotation.Resource;
@@ -170,16 +173,16 @@
     @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)
+    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.getDoctorQueueByStatus(roomId, bedNo, queueStatusList);
+        List<QueueDO> queueDOList = queueService.getRoomQueue(reqIp, 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/queue/vo/queueSaveReqVO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java
index 33922ba..bd6c39f 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/vo/queueSaveReqVO.java
@@ -6,7 +6,6 @@
 import javax.validation.constraints.NotEmpty;
 import javax.validation.constraints.NotNull;
 import java.time.LocalDate;
-import java.time.LocalDateTime;
 
 
 @Schema(description = "绠$悊鍚庡彴 - 鎺掗槦鏂板/淇敼 Request VO")
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 66e2f65..b79039b 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
@@ -70,6 +70,16 @@
 
     @Select("<script>" +
             "SELECT * FROM lihu.queue " +
+            "where room_id = #{roomId} and status in (" +
+            " <foreach collection='statusList' separator=',' item='status'>" +
+            " #{status} " +
+            " </foreach> )" +
+            " order by seq_num" +
+            "</script>")
+    List<QueueDO> getRoomQueueByStatus(@Param("roomId")Long roomId, @Param("statusList")List<Byte> statusList);
+
+    @Select("<script>" +
+            "SELECT * FROM lihu.queue " +
             "where room_id = #{roomId} and bed_no = #{bedNo} and status in (" +
             " <foreach collection='statusList' separator=',' item='status'>" +
             " #{status} " +
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/room/RoomMapper.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/room/RoomMapper.java
index 65326de..3e6fd43 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/room/RoomMapper.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/room/RoomMapper.java
@@ -31,6 +31,9 @@
                 .orderByDesc(RoomDO::getId));
     }
 
+    @Select("select lihu.clinic_room where ip = #{ip}")
+    List<RoomDO> queueByIp(@Param("ip") String ip);
+
     @Update("<script> " +
             "update lihu.clinic_room set status=#{newStatus}, doc_id=null, doc_name=null " +
             " where 1 = 1 " +
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/config/EcgConfigServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/config/EcgConfigServiceImpl.java
index f9b2738..10d36e5 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/config/EcgConfigServiceImpl.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/config/EcgConfigServiceImpl.java
@@ -36,7 +36,8 @@
     @Override
     public void resetScheduler() {
         ScheduledTaskRegistrar taskRegistrar = DynamicSchedulingConfig.static_scheduledTaskRegistrar;
-        taskRegistrar.getScheduledTasks().forEach(ScheduledTask::cancel);
+        List<CronTask> cronTaskList = taskRegistrar.getCronTaskList();
+        cronTaskList.forEach(cronTaskList::remove);
 
         String strOpenCloseTime = configApi.getConfigValueByKey(ECG_OPENING_TIME_KEY);
         List<LocalTime> list = Utils.parseOpeningTime(strOpenCloseTime);
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 39e7114..576de33 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
@@ -120,4 +120,6 @@
     void monitorInfo();
 
     List<QueueDO> callingData(Integer waitingNum, Integer passedNum);
+
+    List<QueueDO> getRoomQueue(String ip, List<Byte> statusList);
 }
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 831784f..695c8a4 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
@@ -8,6 +8,7 @@
 import cn.lihu.jh.module.ecg.controller.admin.room.vo.MonitorInfoVO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 import org.springframework.validation.annotation.Validated;
 
 import cn.lihu.jh.framework.common.exception.enums.GlobalErrorCodeConstants;
@@ -685,4 +686,17 @@
         return null;
     }
 
+    @Override
+    public List<QueueDO> getRoomQueue(String ip, List<Byte> statusList) {
+        List<RoomDO> roomDOList = roomMapper.queueByIp(ip);
+        Optional<RoomDO> optionalQueueDO = roomDOList.stream().filter(item -> StringUtils.hasLength(item.getIp())).findFirst();
+        if (!optionalQueueDO.isPresent()) {
+            return  new ArrayList<QueueDO>();
+        }
+
+        Long roomId = optionalQueueDO.get().getRoomId();
+        List<QueueDO> queueDOList = queueMapper.getRoomQueueByStatus(roomId, statusList);
+        return queueDOList;
+    }
+
 }

--
Gitblit v1.9.3