重置密码功能
This commit is contained in:
parent
6128067cf3
commit
402c661ecf
|
@ -0,0 +1,21 @@
|
||||||
|
package com.ruoyi.system.user.utils;
|
||||||
|
|
||||||
|
public class UserUtil {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成6位随机密码
|
||||||
|
* @return 随机密码
|
||||||
|
*/
|
||||||
|
public static String randomPassword() {
|
||||||
|
// 定义密码字符集
|
||||||
|
String chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||||
|
StringBuilder password = new StringBuilder();
|
||||||
|
// 生成6位随机密码
|
||||||
|
for (int i = 0; i < 6; i++) {
|
||||||
|
int index = (int) (Math.random() * chars.length());
|
||||||
|
password.append(chars.charAt(index));
|
||||||
|
}
|
||||||
|
return password.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
import com.ruoyi.common.annotation.Log;
|
import com.ruoyi.common.annotation.Log;
|
||||||
import com.ruoyi.common.core.controller.BaseController;
|
import com.ruoyi.common.core.controller.BaseController;
|
||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
|
@ -39,6 +40,7 @@ import com.ruoyi.system.user.domain.UserQuery;
|
||||||
import com.ruoyi.system.user.service.UserAssembler;
|
import com.ruoyi.system.user.service.UserAssembler;
|
||||||
import com.ruoyi.system.user.service.UserConverter;
|
import com.ruoyi.system.user.service.UserConverter;
|
||||||
import com.ruoyi.system.user.service.UserService;
|
import com.ruoyi.system.user.service.UserService;
|
||||||
|
import com.ruoyi.system.user.utils.UserUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户信息
|
* 用户信息
|
||||||
|
@ -191,13 +193,25 @@ public class SysUserController extends BaseController
|
||||||
@PreAuthorize("@ss.hasPermi('system:user:resetPwd')")
|
@PreAuthorize("@ss.hasPermi('system:user:resetPwd')")
|
||||||
@Log(title = "重置用户密码", businessType = BusinessType.UPDATE, bizIdName = "arg0", bizType = LogBizType.USER)
|
@Log(title = "重置用户密码", businessType = BusinessType.UPDATE, bizIdName = "arg0", bizType = LogBizType.USER)
|
||||||
@PutMapping("/resetPwd")
|
@PutMapping("/resetPwd")
|
||||||
public AjaxResult resetPwd(@RequestBody User user)
|
public AjaxResult resetPwd(Long userId)
|
||||||
{
|
{
|
||||||
|
UserVO user = userService.selectUserById(userId);
|
||||||
userService.checkUserAllowed(user);
|
userService.checkUserAllowed(user);
|
||||||
userService.checkUserDataScope(user.getUserId());
|
userService.checkUserDataScope(user.getUserId());
|
||||||
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
|
|
||||||
user.setUpdateBy(getUsername());
|
String password = UserUtil.randomPassword();
|
||||||
return toAjax(userService.resetPwd(user));
|
User data = new User();
|
||||||
|
data.setUserId(userId);
|
||||||
|
data.setPassword(SecurityUtils.encryptPassword(password));
|
||||||
|
data.setUpdateBy(getNickName());
|
||||||
|
int rows = userService.resetPwd(data);
|
||||||
|
if (rows > 0) {
|
||||||
|
JSONObject json = new JSONObject();
|
||||||
|
json.put("password", password);
|
||||||
|
json.put("userName", user.getUserName());
|
||||||
|
return AjaxResult.success("重置密码成功", json);
|
||||||
|
}
|
||||||
|
return error("重置密码失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue
Block a user