|
|
@@ -165,24 +165,29 @@ public class OnlineUserService {
|
|
|
List<String> keys = redisUtils.scan(properties.getOnlineKey() + "*");
|
|
|
Collections.reverse(keys);
|
|
|
List<OnlineUserDto> onlineUserList = new ArrayList<>();
|
|
|
- for (String key : keys) {
|
|
|
- OnlineUserDto onlineUserDto = JSON.parseObject((String) redisUtils.get(key), OnlineUserDto.class);
|
|
|
- if (StringUtils.isNotBlank(filterKeyword)) {
|
|
|
- if (OnlineUserConstant.SEARCH_USER_WITH_USERNAME.equals(type)) {
|
|
|
- if (StringUtils.isNotBlank(onlineUserDto.getUsername())
|
|
|
- && onlineUserDto.getUsername().equals(filterKeyword)) {
|
|
|
- onlineUserList.add(onlineUserDto);
|
|
|
+ try {
|
|
|
+ for (String key : keys) {
|
|
|
+ OnlineUserDto onlineUserDto = JSON.parseObject((String) redisUtils.get(key), OnlineUserDto.class);
|
|
|
+ if (StringUtils.isNotBlank(filterKeyword)) {
|
|
|
+ if (OnlineUserConstant.SEARCH_USER_WITH_USERNAME.equals(type)) {
|
|
|
+ if (StringUtils.isNotBlank(onlineUserDto.getUsername())
|
|
|
+ && onlineUserDto.getUsername().equals(filterKeyword)) {
|
|
|
+ onlineUserList.add(onlineUserDto);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (onlineUserDto.toString().contains(filterKeyword)) {
|
|
|
+ onlineUserList.add(onlineUserDto);
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
- if (onlineUserDto.toString().contains(filterKeyword)) {
|
|
|
- onlineUserList.add(onlineUserDto);
|
|
|
- }
|
|
|
+ onlineUserList.add(onlineUserDto);
|
|
|
}
|
|
|
- } else {
|
|
|
- onlineUserList.add(onlineUserDto);
|
|
|
}
|
|
|
+ onlineUserList.sort((o1, o2) -> o2.getLoginTime().compareTo(o1.getLoginTime()));
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ e.printStackTrace();
|
|
|
}
|
|
|
- onlineUserList.sort((o1, o2) -> o2.getLoginTime().compareTo(o1.getLoginTime()));
|
|
|
return onlineUserList;
|
|
|
}
|
|
|
|