Browse Source

fix: 消息一直加载的bug

master
xsx 2 years ago
parent
commit
c955e50d12
  1. 8
      im-platform/src/main/java/com/bx/implatform/service/impl/GroupMessageServiceImpl.java
  2. 5
      im-platform/src/main/java/com/bx/implatform/service/impl/PrivateMessageServiceImpl.java

8
im-platform/src/main/java/com/bx/implatform/service/impl/GroupMessageServiceImpl.java

@ -206,12 +206,16 @@ public class GroupMessageServiceImpl extends ServiceImpl<GroupMessageMapper, Gro
if(!imClient.isOnline(session.getUserId())){ if(!imClient.isOnline(session.getUserId())){
throw new GlobalException(ResultCode.PROGRAM_ERROR, "网络连接失败,无法拉取离线消息"); throw new GlobalException(ResultCode.PROGRAM_ERROR, "网络连接失败,无法拉取离线消息");
} }
// 开启加载中标志
this.sendLoadingMessage(true);
// 查询用户加入的群组 // 查询用户加入的群组
List<GroupMember> members = groupMemberService.findByUserId(session.getUserId()); List<GroupMember> members = groupMemberService.findByUserId(session.getUserId());
Map<Long, GroupMember> groupMemberMap = CollStreamUtil.toIdentityMap(members, GroupMember::getGroupId); Map<Long, GroupMember> groupMemberMap = CollStreamUtil.toIdentityMap(members, GroupMember::getGroupId);
Set<Long> groupIds = groupMemberMap.keySet(); Set<Long> groupIds = groupMemberMap.keySet();
if(CollectionUtil.isEmpty(groupIds)){
return;
}
// 开启加载中标志
this.sendLoadingMessage(true);
// 只能拉取最近1个月的,最多拉取1000条 // 只能拉取最近1个月的,最多拉取1000条
Date minDate = DateUtils.addMonths(new Date(), -1); Date minDate = DateUtils.addMonths(new Date(), -1);
LambdaQueryWrapper<GroupMessage> wrapper = Wrappers.lambdaQuery(); LambdaQueryWrapper<GroupMessage> wrapper = Wrappers.lambdaQuery();

5
im-platform/src/main/java/com/bx/implatform/service/impl/PrivateMessageServiceImpl.java

@ -182,13 +182,14 @@ public class PrivateMessageServiceImpl extends ServiceImpl<PrivateMessageMapper,
if(!imClient.isOnline(session.getUserId())){ if(!imClient.isOnline(session.getUserId())){
throw new GlobalException(ResultCode.PROGRAM_ERROR, "网络连接失败,无法拉取离线消息"); throw new GlobalException(ResultCode.PROGRAM_ERROR, "网络连接失败,无法拉取离线消息");
} }
// 开启加载中标志
this.sendLoadingMessage(true);
// 查询用户好友列表 // 查询用户好友列表
List<Friend> friends = friendService.findFriendByUserId(session.getUserId()); List<Friend> friends = friendService.findFriendByUserId(session.getUserId());
if (friends.isEmpty()) { if (friends.isEmpty()) {
return; return;
} }
// 开启加载中标志
this.sendLoadingMessage(true);
List<Long> friendIds = friends.stream().map(Friend::getFriendId).collect(Collectors.toList()); List<Long> friendIds = friends.stream().map(Friend::getFriendId).collect(Collectors.toList());
// 获取当前用户的消息 // 获取当前用户的消息
LambdaQueryWrapper<PrivateMessage> queryWrapper = Wrappers.lambdaQuery(); LambdaQueryWrapper<PrivateMessage> queryWrapper = Wrappers.lambdaQuery();

Loading…
Cancel
Save