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/UserService.java |   56 ++++++++++++++++++++++++++++++++------------------------
 1 files changed, 32 insertions(+), 24 deletions(-)

diff --git a/src/main/java/com/lf/server/service/sys/UserService.java b/src/main/java/com/lf/server/service/sys/UserService.java
index 51eba3c..8d49085 100644
--- a/src/main/java/com/lf/server/service/sys/UserService.java
+++ b/src/main/java/com/lf/server/service/sys/UserService.java
@@ -108,17 +108,34 @@
     }
 
     /**
-     * 楠岃瘉鏂扮敤鎴峰瘑鐮�
+     * 楠岃瘉鐢ㄦ埛瀹炰綋绫�
      */
-    public String validateNewPwd(UserEntity entity) {
+    public String validateUserEntity(UserEntity entity) {
         if (entity == null) {
             return "娌℃湁鎵惧埌鐢ㄦ埛";
         }
+        if (StringHelper.isEmpty(entity.getUid())) {
+            return "鐢ㄦ埛ID涓嶈兘涓虹┖";
+        }
         if (StringHelper.isEmpty(entity.getPwd())) {
-            return "瀵嗙爜涓嶈兘涓虹┖";
+            return "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖";
         }
 
+        return null;
+    }
+
+    /**
+     * 楠岃瘉鏂扮敤鎴峰瘑鐮�
+     */
+    public String validateNewPwd(UserEntity entity) {
         try {
+            String str = validateUserEntity(entity);
+            if (str != null) {
+                return str;
+            }
+
+            // 瑙e瘑
+            String uid = RsaHelper.decrypt(entity.getUid());
             String pwd = RsaHelper.decrypt(entity.getPwd());
             if (!StringHelper.checkPwdValid(pwd)) {
                 return "瀵嗙爜涓嶇鍚堣姹�";
@@ -126,6 +143,7 @@
 
             String newPwd = Md5Helper.reverse(Md5Helper.generate(pwd));
             entity.setPwd(newPwd);
+            entity.setUid(uid);
 
             return null;
         } catch (Exception ex) {
@@ -137,18 +155,20 @@
      * 楠岃瘉鑰佺敤鎴峰瘑鐮�
      */
     public String validateOldPwd(UserEntity entity) {
-        if (entity == null) {
-            return "娌℃湁鎵惧埌鐢ㄦ埛";
-        }
-        if (StringHelper.isEmpty(entity.getPwd())) {
-            return "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖";
-        }
-
         try {
+            String str = validateUserEntity(entity);
+            if (str != null) {
+                return str;
+            }
+            if (StringHelper.isEmpty(entity.getSalt())) {
+                return "鏂板瘑鐮佷笉鑳戒负绌�";
+            }
+
+            String uid = RsaHelper.decrypt(entity.getUid());
             String pwd = RsaHelper.decrypt(entity.getPwd());
             String salt = RsaHelper.decrypt(entity.getSalt());
 
-            UserEntity ue = selectUser(entity.getId());
+            UserEntity ue = selectByUid(uid);
             if (ue == null) {
                 return "娌℃湁鎵惧埌鐢ㄦ埛";
             }
@@ -163,6 +183,7 @@
             String newPwd = Md5Helper.reverse(Md5Helper.generate(salt));
             entity.setPwd(newPwd);
             entity.setSalt(null);
+            entity.setUid(uid);
 
             return null;
         } catch (Exception ex) {
@@ -214,18 +235,5 @@
         } catch (Exception ex) {
             return "瀵嗙爜瑙e瘑澶辫触";
         }
-    }
-
-    /**
-     * 璁剧疆瀵嗙爜閿欒缂撳瓨
-     *
-     * @param 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);
     }
 }

--
Gitblit v1.9.3