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/ArdCallSessionUserServiceImpl.java | 42 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 38 insertions(+), 4 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionUserServiceImpl.java b/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionUserServiceImpl.java index 13c2fdf..709b588 100644 --- a/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionUserServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/call/service/impl/ArdCallSessionUserServiceImpl.java @@ -4,14 +4,15 @@ import java.util.List; import com.ruoyi.call.compare.ArdCallSessionUserComparator; -import com.ruoyi.call.domain.ArdCallGroupUser; -import com.ruoyi.call.domain.ArdCallHistory; -import com.ruoyi.call.domain.ArdCallUnreadMessages; +import com.ruoyi.call.domain.*; import com.ruoyi.call.mapper.ArdCallGroupUserMapper; import com.ruoyi.call.mapper.ArdCallHistoryMapper; import com.ruoyi.call.mapper.ArdCallUnreadMessagesMapper; +import com.ruoyi.call.service.IArdCallGroupService; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.uuid.IdUtils; +import com.ruoyi.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -21,7 +22,6 @@ import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.call.mapper.ArdCallSessionUserMapper; -import com.ruoyi.call.domain.ArdCallSessionUser; import com.ruoyi.call.service.IArdCallSessionUserService; import javax.annotation.Resource; @@ -42,6 +42,8 @@ private ArdCallSessionUserComparator ardCallSessionUserComparator; @Resource private ArdCallUnreadMessagesMapper ardCallUnreadMessagesMapper; + @Resource + private IArdCallGroupService ardCallGroupService; /** * 鏌ヨ浼氳瘽鐢ㄦ埛涓棿琛� @@ -52,6 +54,31 @@ @Override public ArdCallSessionUser selectArdCallSessionUserById(String id) { return ardCallSessionUserMapper.selectArdCallSessionUserById(id); + } + + @Override + public ArdCallSessionUser selectArdCallSessionUserBySesionId(String userId, String sessionId) { + ArdCallSessionUser ardCallSessionUser = ardCallSessionUserMapper.selectArdCallSessionUserBySesionId(userId, sessionId); + if (ardCallSessionUser != null) { + //鑾峰彇鏈鏁伴噺 + ArdCallUnreadMessages ardCallUnreadMessages = ardCallUnreadMessagesMapper.getUnreadMessage(ardCallSessionUser.getSessionId(), ardCallSessionUser.getUserId()); + if (ardCallUnreadMessages != null) { + ardCallSessionUser.setUnReadCount(ardCallUnreadMessages.getUnreadCount()); + } else { + ardCallSessionUser.setUnReadCount(0); + } + //鑾峰彇鏈�鍚庝竴鏉℃秷鎭疄浣� + ArdCallHistory ardCallHistory = ardCallHistoryMapper.selectLastArdCallHistory(ardCallSessionUser.getSessionId()); + ardCallSessionUser.setArdCallHistory(ardCallHistory); + //缇よ亰targetNickName鏀逛负缇ゅ悕绉� + if (ardCallSessionUser.getType().equals("1")) { + ArdCallGroup ardCallGroup = ardCallGroupService.selectArdCallGroupById(ardCallSessionUser.getTargetId()); + if (ardCallGroup != null) { + ardCallSessionUser.setTargetNickName(ardCallGroup.getName()); + } + } + } + return ardCallSessionUser; } /** @@ -74,6 +101,13 @@ //鑾峰彇鏈�鍚庝竴鏉℃秷鎭疄浣� ArdCallHistory ardCallHistory = ardCallHistoryMapper.selectLastArdCallHistory(callSessionUser.getSessionId()); callSessionUser.setArdCallHistory(ardCallHistory); + //缇よ亰targetNickName鏀逛负缇ゅ悕绉� + if (callSessionUser.getType().equals("1")) { + ArdCallGroup ardCallGroup = ardCallGroupService.selectArdCallGroupById(callSessionUser.getTargetId()); + if (ardCallGroup != null) { + callSessionUser.setTargetNickName(ardCallGroup.getName()); + } + } }); //杩囨护鎺夋病鏈夊巻鍙茶褰曠殑浼氳瘽 ardCallSessionUsers = ardCallSessionUsers.stream().filter(obj -> obj.getArdCallHistory() != null).collect(Collectors.toList()); -- Gitblit v1.9.3