From 57c673aa3e83677bcf5d30b4b45d06bae6609db8 Mon Sep 17 00:00:00 2001 From: liusuyi <1951119284@qq.com> Date: 星期四, 08 八月 2024 16:14:40 +0800 Subject: [PATCH] 优化:获取会话 --- ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionServiceImpl.java | 33 ++++++++++++++++++--------------- 1 files changed, 18 insertions(+), 15 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionServiceImpl.java b/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionServiceImpl.java index 7043f4f..31f5512 100644 --- a/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionServiceImpl.java @@ -8,6 +8,7 @@ import com.ruoyi.call.service.IArdCallGroupUserService; import com.ruoyi.call.service.IArdCallSessionService; import com.ruoyi.call.service.IArdCallSessionUserService; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; @@ -33,6 +34,8 @@ private IArdCallSessionUserService ardCallSessionUserService; @Resource private IArdCallGroupService ardCallGroupService; + @Resource + private IArdCallGroupUserService ardCallGroupUserService; /** * 鏌ヨ瑙嗛浼氳瘽 @@ -144,7 +147,7 @@ } else { //缇よ亰 sessionId = ardCallSessionUserService.getGroupSessionId(type, targetId); - if (StringUtils.isEmpty(sessionId)) { + if (StringUtils.isNull(sessionId)) { //鑻ヤ笉瀛樺湪缇よ亰session鐩存帴鍒欏垎鍒垱寤烘墍鏈夌兢鐢ㄦ埛鐨剆ession ArdCallSession ardCallSession = new ArdCallSession(); ardCallSession.setType(type); @@ -152,21 +155,21 @@ //鑾峰彇缇ょ敤鎴峰垪琛� ArdCallGroup ardCallGroup = ardCallGroupService.selectArdCallGroupById(targetId); - if(ardCallGroup!=null) - { - String finalSessionId = sessionId; - ardCallGroup.getArdCallGroupUsers().stream().forEach(groupUser -> { - ArdCallSessionUser ardCallSessionUser = new ArdCallSessionUser(); - ardCallSessionUser.setSessionId(finalSessionId); - ardCallSessionUser.setType(type); - ardCallSessionUser.setUserId(groupUser.getUserId()); - ardCallSessionUser.setTargetId(targetId); - ardCallSessionUserService.insertArdCallSessionUser(ardCallSessionUser); - }); + if (ardCallGroup != null) { + List<SysUser> userList = ardCallGroupUserService.InGroupUsers(ardCallGroup.getId()); + if (userList.size() > 0) { + ardCallGroup.setSysUserList(userList); + String finalSessionId = sessionId; + ardCallGroup.getSysUserList().stream().forEach(groupUser -> { + ArdCallSessionUser ardCallSessionUser = new ArdCallSessionUser(); + ardCallSessionUser.setSessionId(finalSessionId); + ardCallSessionUser.setType(type); + ardCallSessionUser.setUserId(groupUser.getUserId()); + ardCallSessionUser.setTargetId(targetId); + ardCallSessionUserService.insertArdCallSessionUser(ardCallSessionUser); + }); + } } - } else { - //鑾峰彇鑷繁鐨剆ession - sessionId = ardCallSessionUserService.getSessionId(type, userId, targetId); } } return sessionId; -- Gitblit v1.9.3