From 495253345194da937f134cfb2adb9eaf00c413d5 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期日, 08 十月 2023 14:26:10 +0800
Subject: [PATCH] 修改令牌的IP检查功能

---
 src/main/java/com/moon/server/service/sys/TokenService.java |   35 +++++++++++++++++++----------------
 1 files changed, 19 insertions(+), 16 deletions(-)

diff --git a/src/main/java/com/moon/server/service/sys/TokenService.java b/src/main/java/com/moon/server/service/sys/TokenService.java
index 30d3715..40b0698 100644
--- a/src/main/java/com/moon/server/service/sys/TokenService.java
+++ b/src/main/java/com/moon/server/service/sys/TokenService.java
@@ -23,7 +23,6 @@
  * @author sws
  * @date 2022-09-28
  */
-
 @Service
 public class TokenService implements TokenMapper {
     @Autowired
@@ -121,6 +120,7 @@
     @Override
     public Integer updateTokenExpire(TokenEntity tokenEntity) {
         clearCache(tokenEntity.getToken());
+
         return tokenMapper.updateTokenExpire(tokenEntity);
     }
 
@@ -128,11 +128,18 @@
      * 鑾峰彇鏂扮殑浠ょ墝瀹炰綋绫�
      */
     public TokenEntity getNewToken(UserEntity ue, HttpServletRequest req) {
+        return getNewToken(0, SettingData.TOKEN_EXPIRE, ue, req);
+    }
+
+    /**
+     * 鑾峰彇鏂扮殑浠ょ墝瀹炰綋绫�
+     */
+    public TokenEntity getNewToken(Integer type, Integer min, UserEntity ue, HttpServletRequest req) {
         TokenEntity te = new TokenEntity();
         te.setToken(WebHelper.getGuid());
-        te.setDuration(SettingData.TOKEN_EXPIRE);
-        te.setExpire(WebHelper.getTimestamp(SettingData.TOKEN_EXPIRE));
-        te.setType(0);
+        te.setDuration(min);
+        te.setExpire(WebHelper.getTimestamp(min));
+        te.setType(type);
         te.setIp(WebHelper.getIpAddress(req));
         te.setCreateUser(ue.getId());
         te.setUname(ue.getUname());
@@ -157,7 +164,7 @@
 
         // db
         TokenEntity te = selectOneByToken(token);
-        if (te != null) {
+        if (null != te) {
             redisService.put(tokenKey, te, te.getDuration(), TimeUnit.MINUTES);
             return true;
         }
@@ -186,7 +193,7 @@
         // db锛岃缃护鐗岃繃鏈�
         te.setUpdateUser(ue.getId());
         Integer rows = updateTokenExpire(te);
-        if (rows == 0) {
+        if (0 == rows) {
             return false;
         }
 
@@ -225,7 +232,7 @@
 
         // db
         TokenEntity te = selectOneByToken(token);
-        if (te != null) {
+        if (null != te) {
             redisService.put(tokenKey, te, te.getDuration(), TimeUnit.MINUTES);
         }
 
@@ -265,9 +272,8 @@
             return null;
         }
 
-        String userKey = RedisCacheKey.signUserKey(token);
-
         // redis
+        String userKey = RedisCacheKey.signUserKey(token);
         Object obj = redisService.get(userKey);
         if (obj instanceof UserEntity) {
             return (UserEntity) obj;
@@ -275,12 +281,9 @@
 
         // db
         UserEntity ue = usersService.selectByToken(token);
-        if (ue != null) {
-            TokenEntity te = getEntityByToken(token);
-            if (te != null) {
-                redisService.put(userKey, ue, te.getDuration(), TimeUnit.MINUTES);
-            }
-        }
+//        if (null != ue) {
+//            getEntityByToken(token);
+//        }
 
         return ue;
     }
@@ -315,6 +318,6 @@
         String key = RedisCacheKey.signPwdError(ue.getUid());
         Object objCount = redisService.get(key);
 
-        return objCount != null && (int) objCount >= SettingData.PWD_ERR_COUNT;
+        return null != objCount && (int) objCount >= SettingData.PWD_ERR_COUNT;
     }
 }

--
Gitblit v1.9.3