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 | 99 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 97 insertions(+), 2 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 f10ec87..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,5 +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; @@ -14,6 +23,9 @@ import cn.lihu.jh.framework.common.pojo.PageResult; 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; import cn.lihu.jh.framework.excel.core.util.ExcelUtils; @@ -25,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; @@ -33,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 = "鍒涘缓鎺掗槦") @@ -92,4 +109,82 @@ BeanUtils.toBean(list, QueueRespVO.class)); } -} \ No newline at end of file + @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("/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") + @Operation(summary = "鎻掗槦") + @Parameter(name = "patId", description = "鎮h�呯紪鍙�", required = true, example = "B2") + @PreAuthorize("@ss.hasPermission('ecg:queue:jump')") + public CommonResult<String> queueJump( + @RequestParam("patId") String patId, + @RequestParam("jumpFlag") Byte jumpFlag) + { + Integer result = queueService.patientJump(patId, jumpFlag); + if (null == result || 0 == result) + return error( new ErrorCode(201, "鎵句笉鍒版偅鑰�") ); + + 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