From 6c5098a2ab950684accd6fa74820a95a079a45b5 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期四, 05 九月 2024 09:33:00 +0800 Subject: [PATCH] 调整 Calling Data Type --- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/queue/queueController.java | 129 +++++++++++++++++++++++++++++++++++++----- 1 files changed, 112 insertions(+), 17 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 70dede7..4ae696f 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; @@ -22,9 +34,11 @@ import static cn.lihu.jh.framework.apilog.core.enums.OperateTypeEnum.*; import cn.lihu.jh.module.ecg.controller.admin.queue.vo.*; -import cn.lihu.jh.module.ecg.dal.dataobject.queue.queueDO; -import cn.lihu.jh.module.ecg.service.queue.queueService; +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,22 +47,25 @@ @RestController @RequestMapping("/ecg/queue") @Validated -public class queueController { +public class QueueController { @Resource - private queueService queueService; + private QueueService queueService; + + @Resource + private EcgConfigService ecgConfigService; @PostMapping("/create") @Operation(summary = "鍒涘缓鎺掗槦") @PreAuthorize("@ss.hasPermission('ecg:queue:create')") - public CommonResult<Integer> createqueue(@Valid @RequestBody queueSaveReqVO createReqVO) { + public CommonResult<Integer> createqueue(@Valid @RequestBody QueueSaveReqVO createReqVO) { return success(queueService.createqueue(createReqVO)); } @PutMapping("/update") @Operation(summary = "鏇存柊鎺掗槦") @PreAuthorize("@ss.hasPermission('ecg:queue:update')") - public CommonResult<Boolean> updatequeue(@Valid @RequestBody queueSaveReqVO updateReqVO) { + public CommonResult<Boolean> updatequeue(@Valid @RequestBody QueueSaveReqVO updateReqVO) { queueService.updatequeue(updateReqVO); return success(true); } @@ -66,30 +83,108 @@ @Operation(summary = "鑾峰緱鎺掗槦") @Parameter(name = "id", description = "缂栧彿", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('ecg:queue:query')") - public CommonResult<queueRespVO> getqueue(@RequestParam("id") Integer id) { - queueDO queue = queueService.getqueue(id); - return success(BeanUtils.toBean(queue, queueRespVO.class)); + public CommonResult<QueueRespVO> getqueue(@RequestParam("id") Integer id) { + QueueDO queue = queueService.getqueue(id); + return success(BeanUtils.toBean(queue, QueueRespVO.class)); } @GetMapping("/page") @Operation(summary = "鑾峰緱鎺掗槦鍒嗛〉") @PreAuthorize("@ss.hasPermission('ecg:queue:query')") - public CommonResult<PageResult<queueRespVO>> getqueuePage(@Valid queuePageReqVO pageReqVO) { - PageResult<queueDO> pageResult = queueService.getqueuePage(pageReqVO); - return success(BeanUtils.toBean(pageResult, queueRespVO.class)); + public CommonResult<PageResult<QueueRespVO>> getqueuePage(@Valid QueuePageReqVO pageReqVO) { + PageResult<QueueDO> pageResult = queueService.getqueuePage(pageReqVO); + return success(BeanUtils.toBean(pageResult, QueueRespVO.class)); } @GetMapping("/export-excel") @Operation(summary = "瀵煎嚭鎺掗槦 Excel") @PreAuthorize("@ss.hasPermission('ecg:queue:export')") @ApiAccessLog(operateType = EXPORT) - public void exportqueueExcel(@Valid queuePageReqVO pageReqVO, + public void exportqueueExcel(@Valid QueuePageReqVO pageReqVO, HttpServletResponse response) throws IOException { pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); - List<queueDO> list = queueService.getqueuePage(pageReqVO).getList(); + List<QueueDO> list = queueService.getqueuePage(pageReqVO).getList(); // 瀵煎嚭 Excel - ExcelUtils.write(response, "鎺掗槦.xls", "鏁版嵁", queueRespVO.class, - BeanUtils.toBean(list, queueRespVO.class)); + ExcelUtils.write(response, "鎺掗槦.xls", "鏁版嵁", QueueRespVO.class, + 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<CallingRespVO>> callingData( + @RequestParam("waitingNum") Integer waitingNum, + @RequestParam("passedNum") Integer passedNum) + { + List<QueueDO> queueDOList = queueService.callingData(waitingNum, passedNum); + return success( BeanUtils.toBean(queueDOList, CallingRespVO.class) ); + } + + @GetMapping("/room-screen-data") + @Operation(summary = "璇婇棿灞忔暟鎹�") + @PermitAll + public CommonResult<List<CallingRespVO>> 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, CallingRespVO.class)); + } + +} -- Gitblit v1.9.3