From d40cde3bca854c21c869cb35d25ece4aa7dac265 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期四, 10 四月 2025 16:43:34 +0800 Subject: [PATCH] 检查记录 排除 未检查的记录 --- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/room/RoomServiceImpl.java | 87 +++++++++++++++++++++++++++++-------------- 1 files changed, 59 insertions(+), 28 deletions(-) diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/room/RoomServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/room/RoomServiceImpl.java index f2bb5f9..532d6de 100644 --- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/room/RoomServiceImpl.java +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/room/RoomServiceImpl.java @@ -5,17 +5,16 @@ import cn.lihu.jh.framework.common.pojo.PageResult; 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.dal.dataobject.room.RoomProfile; +import cn.lihu.jh.module.ecg.enums.RoomCallingScreenEnum; import cn.lihu.jh.module.ecg.service.queue.QueueService; import cn.lihu.jh.module.system.api.oauth2.OAuth2TokenApi; import org.springframework.stereotype.Service; -import org.springframework.util.StringUtils; import org.springframework.validation.annotation.Validated; import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomPageReqVO; import cn.lihu.jh.module.ecg.controller.admin.room.vo.RoomSaveReqVO; -import cn.lihu.jh.module.ecg.dal.dataobject.room.RoomStatisticsDO; import cn.lihu.jh.module.ecg.dal.mysql.room.RoomMapper; import cn.lihu.jh.module.ecg.enums.BedStatusEnum; import cn.lihu.jh.framework.common.util.object.BeanUtils; @@ -79,14 +78,62 @@ } @Override - public RoomDO getRoomByIP(String ip) { - List<RoomDO> roomDOList = roomMapper.queueByIp(ip); - Optional<RoomDO> optionalQueueDO = roomDOList.stream().filter(item -> StringUtils.hasLength(item.getIp())).findFirst(); - if (!optionalQueueDO.isPresent()) { - return null; + public RoomProfile getRoomByIP(String ip, Long roomId) { + List<RoomDO> roomDOList = null; + if (null != roomId) { + roomDOList = roomMapper.selectList(RoomDO::getRoomId, roomId); + } else { + roomDOList = roomMapper.queueByIp(ip); } - return optionalQueueDO.get(); + RoomProfile roomProfile = new RoomProfile(); + roomProfile.setBedNum( 0 ); + roomProfile.setCallingScreenType( RoomCallingScreenEnum.NONE.getCallingScreenType() ); + + for (RoomDO roomDO : roomDOList) { + roomProfile.setRoomId(roomDO.getRoomId()); + roomProfile.setRoomName(roomDO.getRoomName()); + roomProfile.setBedNum( roomProfile.getBedNum() + 1); + + // 0 妫�鏌� 1 棰嗙敤 2 瑁呮満 + + // 璁$畻 璇婇棿灞忕被鍨� + if (roomProfile.getCallingScreenType() == RoomCallingScreenEnum.NONE.getCallingScreenType()) { + if ( roomDO.getOpType() == 0 ) { + roomProfile.setCallingScreenType(RoomCallingScreenEnum.CHECK_ONLY.getCallingScreenType()); + } else if ( roomDO.getOpType() == 1 ) { + roomProfile.setCallingScreenType( RoomCallingScreenEnum.RECEIVE_ONLY.getCallingScreenType()); + } else if ( roomDO.getOpType() == 2 ) { + roomProfile.setCallingScreenType( RoomCallingScreenEnum.INSTALL_ONLY.getCallingScreenType()); + } + } else if (roomProfile.getCallingScreenType() == RoomCallingScreenEnum.CHECK_ONLY.getCallingScreenType()) { + if ( roomDO.getOpType() == 0 || roomDO.getOpType() == 1 ) { + // do nothing + } else if ( roomDO.getOpType() == 2 ) { + roomProfile.setCallingScreenType( RoomCallingScreenEnum.CHECK_INSTALL.getCallingScreenType()); + } + } else if (roomProfile.getCallingScreenType() == RoomCallingScreenEnum.RECEIVE_ONLY.getCallingScreenType()) { + if ( roomDO.getOpType() == 0 || roomDO.getOpType() == 1 ) { + // do nothing + } else if ( roomDO.getOpType() == 2 ) { + roomProfile.setCallingScreenType( RoomCallingScreenEnum.RECEIVE_INSTALL.getCallingScreenType()); + } + } else if (roomProfile.getCallingScreenType() == RoomCallingScreenEnum.INSTALL_ONLY.getCallingScreenType()) { + if ( roomDO.getOpType() == 0 ) { + roomProfile.setCallingScreenType( RoomCallingScreenEnum.CHECK_INSTALL.getCallingScreenType()); + } else if ( roomDO.getOpType() == 1 ) { + roomProfile.setCallingScreenType( RoomCallingScreenEnum.RECEIVE_INSTALL.getCallingScreenType()); + } else if ( roomDO.getOpType() == 2 ) { + // do nothing + } + } else if (roomProfile.getCallingScreenType() == RoomCallingScreenEnum.RECEIVE_INSTALL.getCallingScreenType()) { + // do nothing + } else if (roomProfile.getCallingScreenType() == RoomCallingScreenEnum.CHECK_INSTALL.getCallingScreenType()) { + // do nothing + } + } + + return roomProfile; } @Override @@ -95,33 +142,17 @@ } @Override - public List<RoomStatisticsDO> roomStatistics() { - return roomMapper.roomStatistic(); - } - - @Override public List<RoomDO> simpleRoomList() { List<BedStatusEnum> bedStatusEnumList = new ArrayList<BedStatusEnum>(); bedStatusEnumList.add(BedStatusEnum.OPENING); bedStatusEnumList.add(BedStatusEnum.DOCTOR_ON); - bedStatusEnumList.add(BedStatusEnum.PAUSE); + bedStatusEnumList.add(BedStatusEnum.DOCTOR_PAUSE); return roomMapper.simpleRoomList(bedStatusEnumList); } @Override - public void resetRoom() { - List<BedStatusEnum> bedStatusEnumList = new ArrayList<BedStatusEnum>(); - bedStatusEnumList.add(BedStatusEnum.DOCTOR_ON); - bedStatusEnumList.add(BedStatusEnum.PAUSE); - List<RoomDO> roomDOList = roomMapper.simpleRoomList(bedStatusEnumList); - - Integer ret = roomMapper.resetRoom(BedStatusEnum.CLOSED.getStatus()); - - // - List<Long> userIdList = roomDOList.stream().map(roomDO -> roomDO.getDocId()).toList(); - oAuth2TokenApi.tick(userIdList); - - queueService.startBedReload(); + public void resetRoom(Boolean needCloseBed) { + queueService.startResetRoom(needCloseBed); } @Override -- Gitblit v1.9.3