From 10c1709404f981f4fb87185078fcee616346f5ce Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期一, 17 十月 2022 14:27:22 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/service/sys/TokenService.java |   42 ++++++++++++++++++++++++++++++++++--------
 1 files changed, 34 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/lf/server/service/sys/TokenService.java b/src/main/java/com/lf/server/service/sys/TokenService.java
index 39c169d..89cbc2a 100644
--- a/src/main/java/com/lf/server/service/sys/TokenService.java
+++ b/src/main/java/com/lf/server/service/sys/TokenService.java
@@ -142,8 +142,8 @@
             return false;
         }
 
-        // 娓呴櫎Cookie WebHelper.saveCookie(StaticData.TOKEN_COOKIE_KEY, "", 60, res)
-        WebHelper.deleteAll(req, res);
+        // 娓呴櫎Cookie
+        WebHelper.deleteCookies(req, res);
 
         // 鑾峰彇褰撳墠鐢ㄦ埛
         UserEntity ue = getCurrentUser(req);
@@ -153,9 +153,13 @@
 
         // 娓呴櫎缂撳瓨
         String tokenKey = RedisCacheKey.signTokenKey(token);
-        redisService.delete(tokenKey);
+        if (redisService.hasKey(tokenKey)) {
+            redisService.delete(tokenKey);
+        }
         String userKey = RedisCacheKey.signUserKey(te.getToken());
-        redisService.delete(userKey);
+        if (redisService.hasKey(userKey)) {
+            redisService.delete(userKey);
+        }
 
         // db锛岃缃护鐗岃繃鏈�
         te.setUpdateUser(ue.getId());
@@ -165,7 +169,7 @@
         }
 
         // 鍐欐棩蹇�
-        LoginEntity le = loginService.getNewLogin(ue.getId(), 3, req);
+        LoginEntity le = loginService.getNewLogin(ue.getId(), 1, 3, 1, req);
         rows = loginService.insertLogin(le);
 
         return rows > 0;
@@ -214,9 +218,6 @@
 
     /**
      * 鑾峰彇褰撳墠鐢ㄦ埛
-     *
-     * @param req
-     * @return
      */
     public UserEntity getCurrentUser(HttpServletRequest req) {
         String token = WebHelper.getToken(req);
@@ -243,4 +244,29 @@
 
         return ue;
     }
+
+    /**
+     * 璁剧疆瀵嗙爜閿欒缂撳瓨
+     */
+    public void setPwdErrCache(UserEntity ue) {
+        String key = RedisCacheKey.signPwdError(ue.getUid());
+        Object objCount = redisService.get(key);
+
+        int count = objCount == null ? 1 : (int) objCount + 1;
+        redisService.put(key, count, SettingData.PWD_ERR_TIME, TimeUnit.MINUTES);
+    }
+
+    /**
+     * 鐢ㄦ埛ID鏄�/鍚︾鐢�
+     */
+    public boolean isUidDisable(UserEntity ue) {
+        String key = RedisCacheKey.signPwdError(ue.getUid());
+        Object objCount = redisService.get(key);
+
+        return objCount != null && (int) objCount >= SettingData.PWD_ERR_COUNT;
+    }
+
+    public void logoffToken(String token) {
+        //
+    }
 }

--
Gitblit v1.9.3