From 2bc90e242eceb83d9aa80d48ea9f991c0f9b99c6 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期四, 12 十二月 2024 19:47:57 +0800 Subject: [PATCH] 工位选择界面 诊室按照room id排序 --- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/RoomController.java | 141 +++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 124 insertions(+), 17 deletions(-) diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/RoomController.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/RoomController.java index cb0abad..fe94bf3 100644 --- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/RoomController.java +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/room/RoomController.java @@ -1,35 +1,41 @@ package cn.lihu.jh.module.ecg.controller.admin.room; -import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomPageReqVO; -import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomRespVO; -import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomSaveReqVO; -import cn.lihu.jh.module.ecg.dal.dataobject.room.RoomDO; -import cn.lihu.jh.module.ecg.service.room.RoomService; -import org.springframework.web.bind.annotation.*; +import java.util.*; +import java.io.IOException; +import java.util.stream.Collectors; +import javax.annotation.Resource; +import javax.annotation.security.PermitAll; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.validation.Valid; +import cn.hutool.extra.servlet.ServletUtil; +import cn.lihu.jh.module.ecg.controller.admin.room.vo.MonitorInfoVO; +import cn.lihu.jh.module.ecg.dal.dataobject.queue.QueueDO; +import cn.lihu.jh.module.ecg.dal.dataobject.room.RoomDO; +import cn.lihu.jh.module.ecg.service.queue.QueueService; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.*; import org.springframework.validation.annotation.Validated; import org.springframework.security.access.prepost.PreAuthorize; import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Operation; -import java.util.*; -import java.io.IOException; - +import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomPageReqVO; +import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomRespVO; +import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomSaveReqVO; +import cn.lihu.jh.module.ecg.service.room.RoomService; +import cn.lihu.jh.module.system.api.dept.DeptApi; +import cn.lihu.jh.module.system.api.dept.dto.DeptRespDTO; import cn.lihu.jh.framework.common.pojo.PageParam; 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.pojo.CommonResult.success; - import cn.lihu.jh.framework.excel.core.util.ExcelUtils; - import cn.lihu.jh.framework.apilog.core.annotation.ApiAccessLog; -import javax.annotation.Resource; -import javax.servlet.http.HttpServletResponse; -import javax.validation.Valid; - +import static cn.lihu.jh.framework.common.pojo.CommonResult.success; import static cn.lihu.jh.framework.apilog.core.enums.OperateTypeEnum.*; @@ -41,6 +47,12 @@ @Resource private RoomService roomService; + + @Resource + private QueueService queueService; + + @Resource + private DeptApi deptApi; @PostMapping("/create") @Operation(summary = "鍒涘缓璇婂鍜岃瘖鐤楀簥") @@ -75,6 +87,15 @@ return success(BeanUtils.toBean(room, RoomRespVO.class)); } + @GetMapping("/get-room-by-ip") + @Operation(summary = "鑾峰緱璇婂鍜岃瘖鐤楀簥") + @PermitAll + public CommonResult<RoomRespVO> getRoomByIP(HttpServletRequest request) { + String reqIp = ServletUtil.getClientIP(request); + RoomDO room = roomService.getRoomByIP(reqIp); + return success(BeanUtils.toBean(room, RoomRespVO.class)); + } + @GetMapping("/page") @Operation(summary = "鑾峰緱璇婂鍜岃瘖鐤楀簥鍒嗛〉") @PreAuthorize("@ss.hasPermission('clinic:room:query')") @@ -96,4 +117,90 @@ BeanUtils.toBean(list, RoomRespVO.class)); } -} \ No newline at end of file + @GetMapping(value = {"/list-all-simple", "/simple-list"}) + @Operation(summary = "鑾峰彇閮ㄩ棬绮剧畝淇℃伅鍒楄〃", description = "鍙寘鍚寮�鍚殑閮ㄩ棬锛屼富瑕佺敤浜庡墠绔殑涓嬫媺閫夐」") + public CommonResult<List<RoomRespVO>> getSimpleDeptList() { + + List<DeptRespDTO> deptRespDTOList = deptApi.getSimpleDeptList(); + Optional<DeptRespDTO> ecgDept = deptRespDTOList.stream() + .filter(a -> a.getName().equals("ECG")) + .findAny(); + + List<DeptRespDTO> list2 = new ArrayList<DeptRespDTO>(); + if (ecgDept.isPresent()){ + System.out.println(ecgDept.get().getName()); + + list2 = deptRespDTOList.stream() + .filter(a -> Objects.equals(a.getParentId(), ecgDept.get().getId())) + .toList(); + list2.forEach(System.out::println); + list2.size(); + } + + List<RoomRespVO> list3 = list2.stream().map(item -> { + RoomRespVO roomRespVO = new RoomRespVO(); + roomRespVO.setRoomId( item.getId() ); + roomRespVO.setRoomName( item.getName() ); + return roomRespVO; + }).toList(); + + //return success(BeanUtils.toBean(list2, RoomRespVO.class)); + return success(list3); + } + + @GetMapping(value = {"/list-all-bed"}) + @Operation(summary = "鑾峰彇璇婂簥鍒楄〃", description = "涓昏鐢ㄤ簬鍓嶇鐨勫紑璇婄鐞�") + public CommonResult<Map<String, List<RoomRespVO>>> getAllBedMap() { + + RoomPageReqVO pageReqVO = new RoomPageReqVO(); + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List<RoomDO> list = roomService.getRoomPage(pageReqVO).getList(); + + List<RoomRespVO> list2 = BeanUtils.toBean(list, RoomRespVO.class); + + Map<String, List<RoomRespVO>> map = list2.stream().collect(Collectors.groupingBy(RoomRespVO::getRoomName)); + return success(map); + } + + @GetMapping(value = {"/list-simple-room"}) + @Operation(summary = "鑾峰彇闂ㄨ瘖瀹ゅ垪琛�", description = "涓昏鐢ㄤ簬鍓嶇鐨勮瘖瀹ら�夋嫨") + public CommonResult<Map<Long, List<RoomRespVO>>> getSimpleRoomList() { + List<RoomDO> list = roomService.simpleRoomList(); + List<RoomRespVO> list2 = BeanUtils.toBean(list, RoomRespVO.class); + + Map<Long, List<RoomRespVO>> map = list2.stream().collect(Collectors.groupingBy(RoomRespVO::getRoomId)); + return success(map); + } + + @GetMapping(value = {"/reset-room"}) + @Operation(summary = "閲嶇疆闂ㄨ瘖瀹�", description = "涓昏鐢ㄤ簬姣忓ぉ鍏抽棴宸ヤ綅") + public CommonResult<String> resetRoom() { + roomService.resetRoom(true); + return success("reset room ok"); + } + + @GetMapping(value = {"/monitor"}) + @Operation(summary = "鐩戞帶鐘舵�佽幏鍙�", description = "鐩戞帶鐘舵�佽幏鍙� 鐩戞帶鐢�") + public CommonResult<MonitorInfoVO> getMonitorInfo() { + MonitorInfoVO monitorInfoVO = roomService.getMonitorInfo(); + return success( monitorInfoVO ); + } + + @GetMapping("/start-biz") + @Operation(summary = "鎵嬪姩寮�璇�") + @PreAuthorize("@ss.hasPermission('ecg:room:setting')") + public CommonResult<Integer> startBiz() { + queueService.startBiz(); + return success(0); + } + + @GetMapping("/close-biz") + @Operation(summary = "鎵嬪姩闂瘖") + @PreAuthorize("@ss.hasPermission('ecg:room:setting')") + public CommonResult<Integer> stopBiz() { + queueService.closeBiz(); + return success(0); + } + + +} -- Gitblit v1.9.3