From 51b53373d150e4107a51fcf502d0598b7d82c455 Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期二, 18 一月 2022 11:08:12 +0800
Subject: [PATCH] 功能完善/回滚数据之后新增的填哥的代码
---
sandu-common/src/main/java/com/sandu/common/redis/online/OnlineUserService.java | 226 ++++++++++++++++++++++++++++----------------------------
1 files changed, 113 insertions(+), 113 deletions(-)
diff --git a/sandu-common/src/main/java/com/sandu/common/redis/online/OnlineUserService.java b/sandu-common/src/main/java/com/sandu/common/redis/online/OnlineUserService.java
index 220c181..3a5f287 100644
--- a/sandu-common/src/main/java/com/sandu/common/redis/online/OnlineUserService.java
+++ b/sandu-common/src/main/java/com/sandu/common/redis/online/OnlineUserService.java
@@ -1,115 +1,115 @@
-package com.sandu.common.redis.online;
-
-import cn.hutool.extra.servlet.ServletUtil;
-import cn.hutool.http.useragent.UserAgent;
-import cn.hutool.http.useragent.UserAgentInfo;
-import cn.hutool.http.useragent.UserAgentUtil;
-import com.baomidou.mybatisplus.core.toolkit.StringUtils;
-import com.sandu.common.redis.RedisService;
-import com.sandu.common.security.config.SecurityProperties;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.security.core.userdetails.UserDetails;
-
-import javax.servlet.http.HttpServletRequest;
-import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Optional;
-import java.util.Set;
-
-/**
- * @author chenjiantian
- * @date 2021/8/6 16:26
- * 鍦ㄧ嚎鐢ㄦ埛鏈嶅姟绫�
- * 鍦� BaseRedisConfig 娉ㄥ叆
- */
-@Slf4j
-public class OnlineUserService {
-
- private final SecurityProperties properties;
- private final RedisService redisService;
-
- public OnlineUserService(SecurityProperties properties, RedisService redisService) {
- this.properties = properties;
- this.redisService = redisService;
- }
-
- /**
- * 淇濆瓨鍦ㄧ嚎鐢ㄦ埛淇℃伅
- */
- public void save(UserDetails userDetails, String token, Long userId,HttpServletRequest request) {
- String ip = ServletUtil.getClientIP(request);
- UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent"));
- String browser = Optional.ofNullable(userAgent).map(UserAgent::getBrowser).map(UserAgentInfo::getName).orElse("");
- OnlineUser onlineUser = new OnlineUser(userId,userDetails.getUsername(), token, ip, browser, LocalDateTime.now());
-// redisService.set(properties.getOnlineKey() + token, onlineUser, properties.getTokenValidityInSeconds() / 1000);
- redisService.set(properties.getOnlineKey() + userDetails.getUsername(), onlineUser);
- }
-
- /**
- * 鏌ヨ鍏ㄩ儴鏁版嵁
- *
- * @param filter
- * @return
- */
- public List<OnlineUser> getAll(String filter) {
- Set<String> keys = redisService.keys(properties.getOnlineKey() + "*");
-
- List<OnlineUser> onlineUsers = new ArrayList<>();
- for (String key : keys) {
- OnlineUser onlineUser = (OnlineUser) redisService.get(key);
- if (StringUtils.isNotBlank(filter)) {
- if (onlineUser.toString().contains(filter)) {
- onlineUsers.add(onlineUser);
- }
- } else {
- onlineUsers.add(onlineUser);
- }
- }
- onlineUsers.sort((o1, o2) -> o2.getLoginTime().compareTo(o1.getLoginTime()));
- return onlineUsers;
- }
-
- private boolean kickOut(String token) throws Exception {
- token = properties.getOnlineKey() + token;
- return redisService.del(token);
- }
-
- public OnlineUser getOne(String key) {
- return (OnlineUser) redisService.get(key);
- }
-
- /**
- * 妫�娴嬬敤鎴锋槸鍚﹀湪涔嬪墠宸茬粡鐧诲綍锛屽凡缁忕櫥褰曡涪涓嬬嚎
- *
- * @param userName 鐢ㄦ埛鍚�
- */
- public void checkLoginOnUser(String userName, String ignoreToken) {
-// List<OnlineUser> onlineUsers = getAll(userName);
-// if (onlineUsers == null || onlineUsers.isEmpty()) {
+//package com.sandu.common.redis.online;
+//
+//import cn.hutool.extra.servlet.ServletUtil;
+//import cn.hutool.http.useragent.UserAgent;
+//import cn.hutool.http.useragent.UserAgentInfo;
+//import cn.hutool.http.useragent.UserAgentUtil;
+//import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+//import com.sandu.common.redis.RedisService;
+//import com.sandu.common.security.config.SecurityProperties;
+//import lombok.extern.slf4j.Slf4j;
+//import org.springframework.security.core.userdetails.UserDetails;
+//
+//import javax.servlet.http.HttpServletRequest;
+//import java.time.LocalDateTime;
+//import java.util.ArrayList;
+//import java.util.List;
+//import java.util.Optional;
+//import java.util.Set;
+//
+///**
+// * @author chenjiantian
+// * @date 2021/8/6 16:26
+// * 鍦ㄧ嚎鐢ㄦ埛鏈嶅姟绫�
+// * 鍦� BaseRedisConfig 娉ㄥ叆
+// */
+//@Slf4j
+//public class OnlineUserService {
+//
+// private final SecurityProperties properties;
+// private final RedisService redisService;
+//
+// public OnlineUserService(SecurityProperties properties, RedisService redisService) {
+// this.properties = properties;
+// this.redisService = redisService;
+// }
+//
+// /**
+// * 淇濆瓨鍦ㄧ嚎鐢ㄦ埛淇℃伅
+// */
+// public void save(UserDetails userDetails, String token, Long userId,HttpServletRequest request) {
+// String ip = ServletUtil.getClientIP(request);
+// UserAgent userAgent = UserAgentUtil.parse(request.getHeader("User-Agent"));
+// String browser = Optional.ofNullable(userAgent).map(UserAgent::getBrowser).map(UserAgentInfo::getName).orElse("");
+// OnlineUser onlineUser = new OnlineUser(userId,userDetails.getUsername(), token, ip, browser, LocalDateTime.now());
+//// redisService.set(properties.getOnlineKey() + token, onlineUser, properties.getTokenValidityInSeconds() / 1000);
+// redisService.set(properties.getOnlineKey() + userDetails.getUsername(), onlineUser);
+// }
+//
+// /**
+// * 鏌ヨ鍏ㄩ儴鏁版嵁
+// *
+// * @param filter
+// * @return
+// */
+// public List<OnlineUser> getAll(String filter) {
+// Set<String> keys = redisService.keys(properties.getOnlineKey() + "*");
+//
+// List<OnlineUser> onlineUsers = new ArrayList<>();
+// for (String key : keys) {
+// OnlineUser onlineUser = (OnlineUser) redisService.get(key);
+// if (StringUtils.isNotBlank(filter)) {
+// if (onlineUser.toString().contains(filter)) {
+// onlineUsers.add(onlineUser);
+// }
+// } else {
+// onlineUsers.add(onlineUser);
+// }
+// }
+// onlineUsers.sort((o1, o2) -> o2.getLoginTime().compareTo(o1.getLoginTime()));
+// return onlineUsers;
+// }
+//
+// private boolean kickOut(String token) throws Exception {
+// token = properties.getOnlineKey() + token;
+// return redisService.del(token);
+// }
+//
+// public OnlineUser getOne(String key) {
+// return (OnlineUser) redisService.get(key);
+// }
+//
+// /**
+// * 妫�娴嬬敤鎴锋槸鍚﹀湪涔嬪墠宸茬粡鐧诲綍锛屽凡缁忕櫥褰曡涪涓嬬嚎
+// *
+// * @param userName 鐢ㄦ埛鍚�
+// */
+// public void checkLoginOnUser(String userName, String ignoreToken) {
+//// List<OnlineUser> onlineUsers = getAll(userName);
+//// if (onlineUsers == null || onlineUsers.isEmpty()) {
+//// return;
+//// }
+// OnlineUser onlineUser = getOne(properties.getOnlineKey() + userName);
+// if(onlineUser == null){
// return;
// }
- OnlineUser onlineUser = getOne(properties.getOnlineKey() + userName);
- if(onlineUser == null){
- return;
- }
-// for (OnlineUser onlineUser : onlineUsers) {
- if (onlineUser.getUserName().equals(userName)) {
- try {
- String token = onlineUser.getToken();
- if (StringUtils.isNotBlank(ignoreToken) && !ignoreToken.equals(token)) {
- this.kickOut(token);
- } else if (StringUtils.isBlank(ignoreToken)) {
- this.kickOut(token);
- }
- } catch (Exception e) {
- log.error("checkUser is error", e);
- }
- }
-// }
- }
-
- public void updateOne(OnlineUser onlineUser) {
- redisService.set(properties.getOnlineKey() + onlineUser.getUserName(), onlineUser);
- }
-}
+//// for (OnlineUser onlineUser : onlineUsers) {
+// if (onlineUser.getUserName().equals(userName)) {
+// try {
+// String token = onlineUser.getToken();
+// if (StringUtils.isNotBlank(ignoreToken) && !ignoreToken.equals(token)) {
+// this.kickOut(token);
+// } else if (StringUtils.isBlank(ignoreToken)) {
+// this.kickOut(token);
+// }
+// } catch (Exception e) {
+// log.error("checkUser is error", e);
+// }
+// }
+//// }
+// }
+//
+// public void updateOne(OnlineUser onlineUser) {
+// redisService.set(properties.getOnlineKey() + onlineUser.getUserName(), onlineUser);
+// }
+//}
--
Gitblit v1.9.3