uid去重

This commit is contained in:
2025-09-30 16:45:14 +08:00
parent 0cf590b704
commit 0aceef273b

View File

@@ -34,7 +34,6 @@ import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
/**
* Created by liuguofu on 2017/10/17.
@@ -139,14 +138,19 @@ public class UserInRoomService {
}
public Map<Long, RoomVo> getUserInRoomMapBatchCache(List<String> uids) {
uids = uids.stream().filter(StringUtils::isNotBlank).distinct().collect(Collectors.toList());
return uids.stream().map(uid -> {
Map<Long, RoomVo> resultMap = new HashMap<>();
for (String uid : uids) {
if (StringUtils.isBlank(uid)) {
continue;
}
String roomVoStr = jedisService.hget(RedisKey.user_in_room.getKey(), uid);
if (StringUtils.isBlank(roomVoStr)){
return null;
}
return GsonUtil.getDefGson().fromJson(roomVoStr, RoomVo.class);
}).filter(Objects::nonNull).collect(Collectors.toMap(RoomVo::getUid, roomVo -> roomVo));
RoomVo roomVo = GsonUtil.getDefGson().fromJson(roomVoStr, RoomVo.class);
resultMap.put(Long.valueOf(uid), roomVo);
}
return resultMap;
}
public void updateUserInRoomRecord(Long uid, Long roomUid, Byte behaveType) {