From be29e4df82e7f6425db15b03f09aaee1cd9cfb1d Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期二, 15 十月 2024 16:32:39 +0800 Subject: [PATCH] 大屏.小屏 叫号逻辑 --- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/call/CallServiceImpl.java | 26 +++++++++++++++++++++++++- 1 files changed, 25 insertions(+), 1 deletions(-) diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/call/CallServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/call/CallServiceImpl.java index 08f348c..d42a4a6 100644 --- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/call/CallServiceImpl.java +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/call/CallServiceImpl.java @@ -1,6 +1,10 @@ package cn.lihu.jh.module.ecg.service.call; +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.mysql.room.RoomMapper; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import org.springframework.validation.annotation.Validated; import cn.lihu.jh.module.ecg.controller.admin.call.vo.*; @@ -11,6 +15,10 @@ import cn.lihu.jh.module.ecg.dal.mysql.call.CallMapper; import javax.annotation.Resource; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; import static cn.lihu.jh.framework.common.exception.util.ServiceExceptionUtil.exception; import static cn.lihu.jh.module.ecg.enums.ErrorCodeConstants.*; @@ -26,6 +34,9 @@ @Resource private CallMapper callMapper; + + @Resource + private RoomMapper roomMapper; @Override public Integer createCall(CallSaveReqVO createReqVO) { @@ -66,7 +77,20 @@ @Override public CallDO getNextCall() { - CallDO callDO = callMapper.getNextCall(); + CallDO callDO = callMapper.getNextCall(); // 澶у睆 + return callDO; + } + + @Override + public CallDO getNextInstallCall(String reqIp) { + List<RoomDO> roomDOList = roomMapper.queueByIp(reqIp); + Optional<RoomDO> optionalQueueDO = roomDOList.stream().filter(item -> StringUtils.hasLength(item.getIp())).findFirst(); + if (!optionalQueueDO.isPresent()) { + return null; + } + + Long roomId = optionalQueueDO.get().getRoomId(); + CallDO callDO = callMapper.getNextInstallCall( roomId ); // 璇婇棿灞� return callDO; } -- Gitblit v1.9.3