From e3a2245265516fef78b4737d6fffc939e7c5e0af Mon Sep 17 00:00:00 2001
From: huliguo <2023611923@qq.com>
Date: 星期四, 03 七月 2025 17:56:07 +0800
Subject: [PATCH] bug修改

---
 pt-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java |   28 +++++++++++++++-------------
 1 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/pt-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java b/pt-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
index fe3f807..684c4d4 100644
--- a/pt-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
+++ b/pt-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
@@ -1,6 +1,9 @@
 package com.ruoyi.web.controller.system;
 
 import java.util.Map;
+
+import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.system.mapper.SysUserMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -37,6 +40,8 @@
 
     @Autowired
     private TokenService tokenService;
+    @Autowired
+    private SysUserMapper sysUserMapper;
 
     /**
      * 个人信息
@@ -81,27 +86,24 @@
      * 重置密码
      */
     @Log(title = "个人信息", businessType = BusinessType.UPDATE)
-    @PutMapping("/updatePwd")
+    @PostMapping("/updatePwd")
     public AjaxResult updatePwd(@RequestBody Map<String, String> params) {
         String oldPassword = params.get("oldPassword");
         String newPassword = params.get("newPassword");
-        LoginUser loginUser = getLoginUser();
-        String userName = loginUser.getUsername();
-        String password = loginUser.getPassword();
-        if (!SecurityUtils.matchesPassword(oldPassword, password)) {
+        String userName = params.get("username");
+        SysUser sysUser = sysUserMapper.selectUserByUserName(userName);
+        if (sysUser.getStatus().equals("1")){
+            throw new ServiceException("该用户已被冻结");
+        }
+        if (!SecurityUtils.matchesPassword(oldPassword, sysUser.getPassword())) {
             return error("修改密码失败,旧密码错误");
         }
-        if (SecurityUtils.matchesPassword(newPassword, password)) {
+        if (SecurityUtils.matchesPassword(newPassword, sysUser.getPassword())) {
             return error("新密码不能与旧密码相同");
         }
         newPassword = SecurityUtils.encryptPassword(newPassword);
-        if (userService.resetUserPwd(userName, newPassword) > 0) {
-            // 更新缓存用户密码
-            loginUser.getUser().setPassword(newPassword);
-            tokenService.setLoginUser(loginUser);
-            return success();
-        }
-        return error("修改密码异常,请联系管理员");
+        userService.resetUserPwd(userName, newPassword);
+        return success();
     }
 
     /**

--
Gitblit v1.7.1