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