|
@@ -329,9 +329,8 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
|
|
|
|
//从房间累计用户信息中查询该用户的信息
|
|
//从房间累计用户信息中查询该用户的信息
|
|
RMap<Integer, RoomUserInfoVo> roomTotalUser = redissonClient.getMap(LIVE_ROOM_TOTAL_USER_LIST.replace(ROOM_UID, roomUid));
|
|
RMap<Integer, RoomUserInfoVo> roomTotalUser = redissonClient.getMap(LIVE_ROOM_TOTAL_USER_LIST.replace(ROOM_UID, roomUid));
|
|
-
|
|
|
|
//该房间未查询到用户数据则不处理
|
|
//该房间未查询到用户数据则不处理
|
|
- if (!roomTotalUser.containsKey(userId)) {
|
|
|
|
|
|
+ if (!roomTotalUser.isExists() && !roomTotalUser.containsKey(userId)) {
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
//查询到用户数据
|
|
//查询到用户数据
|
|
@@ -350,7 +349,8 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
//记录退出时间 并写入缓存
|
|
//记录退出时间 并写入缓存
|
|
userInfo.setLastOutTime(now);
|
|
userInfo.setLastOutTime(now);
|
|
userInfo.setState(1);
|
|
userInfo.setState(1);
|
|
- roomTotalUser.put(userId, userInfo);
|
|
|
|
|
|
+ roomTotalUser.fastPut(userId, userInfo);
|
|
|
|
+ log.info("quitRoom>>>> userInfo: {}", JSONObject.toJSONString(userInfo));
|
|
});
|
|
});
|
|
|
|
|
|
}
|
|
}
|
|
@@ -408,7 +408,8 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
}
|
|
}
|
|
userInfo.setState(0);//0 进入/在房间
|
|
userInfo.setState(0);//0 进入/在房间
|
|
userInfo.setDynamicJoinTime(now);
|
|
userInfo.setDynamicJoinTime(now);
|
|
- roomTotalUser.put(userId, userInfo);
|
|
|
|
|
|
+ roomTotalUser.fastPut(userId, userInfo);
|
|
|
|
+ log.info("joinRoom>>>> userInfo: {}", JSONObject.toJSONString(userInfo));
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -428,6 +429,7 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
roomSpeakerInfo.setState(0);
|
|
roomSpeakerInfo.setState(0);
|
|
roomSpeakerInfo.setStartLiveTime(new Date());
|
|
roomSpeakerInfo.setStartLiveTime(new Date());
|
|
speakerCache.set(roomSpeakerInfo);
|
|
speakerCache.set(roomSpeakerInfo);
|
|
|
|
+ log.info("startLive>>>> roomSpeakerInfo: {}", JSONObject.toJSONString(roomSpeakerInfo));
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -458,6 +460,7 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
int i = Objects.isNull(roomSpeakerInfo.getTotalLiveTime()) ? 0 : roomSpeakerInfo.getTotalLiveTime();
|
|
int i = Objects.isNull(roomSpeakerInfo.getTotalLiveTime()) ? 0 : roomSpeakerInfo.getTotalLiveTime();
|
|
roomSpeakerInfo.setTotalLiveTime(i + minutesBetween);
|
|
roomSpeakerInfo.setTotalLiveTime(i + minutesBetween);
|
|
}
|
|
}
|
|
|
|
+ log.info("startLive>>>> roomSpeakerInfo: {}", JSONObject.toJSONString(roomSpeakerInfo));
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -629,9 +632,8 @@ public class ImLiveBroadcastRoomServiceImpl extends ServiceImpl<ImLiveBroadcastR
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
public List<RoomUserInfoVo> queryRoomUserInfo(String roomUid) {
|
|
public List<RoomUserInfoVo> queryRoomUserInfo(String roomUid) {
|
|
- return queryTotalRoomUserInfo(roomUid).stream()
|
|
|
|
- .filter(o -> o.getState() == 0)
|
|
|
|
- .collect(Collectors.toList());
|
|
|
|
|
|
+ List<RoomUserInfoVo> roomUserInfoVos = queryTotalRoomUserInfo(roomUid);
|
|
|
|
+ return queryRoomUserInfo(roomUserInfoVos);
|
|
}
|
|
}
|
|
|
|
|
|
public List<RoomUserInfoVo> queryRoomUserInfo(List<RoomUserInfoVo> totalUserInfo) {
|
|
public List<RoomUserInfoVo> queryRoomUserInfo(List<RoomUserInfoVo> totalUserInfo) {
|