From 098dd2ed33b90a8a14ff0b04bace845ec119244c Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期一, 09 五月 2022 10:40:21 +0800
Subject: [PATCH] fix

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java |   39 ++++++++++++++++++++++++++++++++-------
 1 files changed, 32 insertions(+), 7 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java
index a3ff485..dc4e402 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java
@@ -6,11 +6,9 @@
 import com.sandu.common.execption.BusinessException;
 import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.service.impl.BaseServiceImpl;
-import com.sandu.ximon.admin.param.AddClientPrarm;
-import com.sandu.ximon.admin.param.PwdParam;
-import com.sandu.ximon.admin.param.ResetClientPasswordPrarm;
-import com.sandu.ximon.admin.param.UpdateClientPrarm;
+import com.sandu.ximon.admin.param.*;
 import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.dao.domain.Admin;
 import com.sandu.ximon.dao.domain.Client;
 import com.sandu.ximon.dao.domain.ClientRoleRelation;
 import com.sandu.ximon.dao.domain.Role;
@@ -115,6 +113,12 @@
         return updateById(client);
     }
 
+    /**
+     * 淇敼褰撳墠鐧诲綍鐢ㄦ埛瀵嗙爜
+     *
+     * @param param
+     * @return
+     */
     public boolean resetPassword(PwdParam param) {
 
         Client client = getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getId, SecurityUtils.getUserDetails().getUserId()));
@@ -123,10 +127,31 @@
             throw new BusinessException("璇ョ敤鎴蜂笉瀛樺湪锛�");
         }
 
-        PasswordEncoder pw = new BCryptPasswordEncoder();
+        //鍒ゆ柇鏃у瘑鐮佷笌鏁版嵁搴撴槸鍚︿竴鑷�
+        if (passwordEncoder.matches(param.getOldPass(), client.getPassword())) {
+            //鍔犲瘑鏂板瘑鐮�
+            String encode = passwordEncoder.encode(param.getNewPass());
+            client.setPassword(encode);
+            return updateById(client);
+        } else {
+            throw new BusinessException("鏃у瘑鐮佷笉姝g‘锛岃閲嶆柊纭瀵嗙爜锛�");
+        }
+    }
+
+    /**
+     * 淇敼绠$悊鍛樼殑瀵嗙爜
+     *
+     * @param param
+     * @return
+     */
+    public boolean updateAdminPassword(UserPwsParm param) {
+        Client client = getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getId, param.getUserid()));
+        if (client == null) {
+            throw new BusinessException("鐢ㄦ埛涓嶅瓨鍦�");
+        }
+
         //鍔犲瘑鏂板瘑鐮�
-        String encode = pw.encode(param.getNewPass());
-        client.setPassword(encode);
+        client.setPassword(passwordEncoder.encode(param.getNewPass()));
         return updateById(client);
     }
 

--
Gitblit v1.9.3