Commit 8921556d75c631fc52e51f2e0b6dfb28eb430cb4
1 parent
e3884ee5
完成用户的重置密码、删除、修改状态的对接
Showing
8 changed files
with
136 additions
and
104 deletions
ruoyi-ui/src/api/system/user.js
| @@ -54,27 +54,27 @@ export function exportUser(query) { | @@ -54,27 +54,27 @@ export function exportUser(query) { | ||
| 54 | } | 54 | } |
| 55 | 55 | ||
| 56 | // 用户密码重置 | 56 | // 用户密码重置 |
| 57 | -export function resetUserPwd(userId, password) { | 57 | +export function resetUserPwd(id, password) { |
| 58 | const data = { | 58 | const data = { |
| 59 | - userId, | 59 | + id, |
| 60 | password | 60 | password |
| 61 | } | 61 | } |
| 62 | return request({ | 62 | return request({ |
| 63 | - url: '/system/user/resetPwd', | ||
| 64 | - method: 'put', | 63 | + url: '/system/user/update-password', |
| 64 | + method: 'post', | ||
| 65 | data: data | 65 | data: data |
| 66 | }) | 66 | }) |
| 67 | } | 67 | } |
| 68 | 68 | ||
| 69 | // 用户状态修改 | 69 | // 用户状态修改 |
| 70 | -export function changeUserStatus(userId, status) { | 70 | +export function changeUserStatus(id, status) { |
| 71 | const data = { | 71 | const data = { |
| 72 | - userId, | 72 | + id, |
| 73 | status | 73 | status |
| 74 | } | 74 | } |
| 75 | return request({ | 75 | return request({ |
| 76 | - url: '/system/user/updateStatus', | ||
| 77 | - method: 'put', | 76 | + url: '/system/user/update-status', |
| 77 | + method: 'post', | ||
| 78 | data: data | 78 | data: data |
| 79 | }) | 79 | }) |
| 80 | } | 80 | } |
ruoyi-ui/src/views/system/user/index.vue
| @@ -480,7 +480,7 @@ export default { | @@ -480,7 +480,7 @@ export default { | ||
| 480 | }, | 480 | }, |
| 481 | // 用户状态修改 | 481 | // 用户状态修改 |
| 482 | handleStatusChange(row) { | 482 | handleStatusChange(row) { |
| 483 | - let text = row.status === "0" ? "启用" : "停用"; | 483 | + let text = row.status === SysCommonStatusEnum.ENABLE ? "启用" : "停用"; |
| 484 | this.$confirm('确认要"' + text + '""' + row.username + '"用户吗?', "警告", { | 484 | this.$confirm('确认要"' + text + '""' + row.username + '"用户吗?', "警告", { |
| 485 | confirmButtonText: "确定", | 485 | confirmButtonText: "确定", |
| 486 | cancelButtonText: "取消", | 486 | cancelButtonText: "取消", |
| @@ -490,7 +490,8 @@ export default { | @@ -490,7 +490,8 @@ export default { | ||
| 490 | }).then(() => { | 490 | }).then(() => { |
| 491 | this.msgSuccess(text + "成功"); | 491 | this.msgSuccess(text + "成功"); |
| 492 | }).catch(function() { | 492 | }).catch(function() { |
| 493 | - row.status = row.status === "0" ? "1" : "0"; | 493 | + row.status = row.status === SysCommonStatusEnum.ENABLE ? SysCommonStatusEnum.DISABLE |
| 494 | + : SysCommonStatusEnum.ENABLE; | ||
| 494 | }); | 495 | }); |
| 495 | }, | 496 | }, |
| 496 | // 取消按钮 | 497 | // 取消按钮 |
| @@ -518,7 +519,7 @@ export default { | @@ -518,7 +519,7 @@ export default { | ||
| 518 | }, | 519 | }, |
| 519 | /** 搜索按钮操作 */ | 520 | /** 搜索按钮操作 */ |
| 520 | handleQuery() { | 521 | handleQuery() { |
| 521 | - this.queryParams.page = 1; | 522 | + this.queryParams.pageNo = 1; |
| 522 | this.getList(); | 523 | this.getList(); |
| 523 | }, | 524 | }, |
| 524 | /** 重置按钮操作 */ | 525 | /** 重置按钮操作 */ |
src/main/java/cn/iocoder/dashboard/modules/system/controller/user/SysUserController.java
| @@ -88,6 +88,34 @@ public class SysUserController { | @@ -88,6 +88,34 @@ public class SysUserController { | ||
| 88 | return success(true); | 88 | return success(true); |
| 89 | } | 89 | } |
| 90 | 90 | ||
| 91 | + @ApiOperation("删除用户") | ||
| 92 | + @ApiImplicitParam(name = "id", value = "编号", readOnly = true, example = "1024") | ||
| 93 | + @PostMapping("/delete") | ||
| 94 | +// @PreAuthorize("@ss.hasPermi('system:user:remove')") | ||
| 95 | +// @Log(title = "用户管理", businessType = BusinessType.DELETE) | ||
| 96 | + public CommonResult<Boolean> deleteUser(@RequestParam("id") Long id) { | ||
| 97 | + userService.deleteUser(id); | ||
| 98 | + return success(true); | ||
| 99 | + } | ||
| 100 | + | ||
| 101 | + @ApiOperation("重置用户密码") | ||
| 102 | + @PostMapping("/update-password") | ||
| 103 | +// @PreAuthorize("@ss.hasPermi('system:user:resetPwd')") | ||
| 104 | +// @Log(title = "用户管理", businessType = BusinessType.UPDATE) | ||
| 105 | + public CommonResult<Boolean> updateUserPassword(@Validated @RequestBody SysUserUpdatePasswordReqVO reqVO) { | ||
| 106 | + userService.updateUserPassword(reqVO.getId(), reqVO.getPassword()); | ||
| 107 | + return success(true); | ||
| 108 | + } | ||
| 109 | + | ||
| 110 | + @ApiOperation("修改用户状态") | ||
| 111 | + @PostMapping("/update-status") | ||
| 112 | +// @PreAuthorize("@ss.hasPermi('system:user:edit')") | ||
| 113 | +// @Log(title = "用户管理", businessType = BusinessType.UPDATE) | ||
| 114 | + public CommonResult<Boolean> updateUserStatus(@Validated @RequestBody SysUserUpdateStatusReqVO reqVO) { | ||
| 115 | + userService.updateUserStatus(reqVO.getId(), reqVO.getStatus()); | ||
| 116 | + return success(true); | ||
| 117 | + } | ||
| 118 | + | ||
| 91 | // @Log(title = "用户管理", businessType = BusinessType.EXPORT) | 119 | // @Log(title = "用户管理", businessType = BusinessType.EXPORT) |
| 92 | // @PreAuthorize("@ss.hasPermi('system:user:export')") | 120 | // @PreAuthorize("@ss.hasPermi('system:user:export')") |
| 93 | // @GetMapping("/export") | 121 | // @GetMapping("/export") |
| @@ -119,43 +147,4 @@ public class SysUserController { | @@ -119,43 +147,4 @@ public class SysUserController { | ||
| 119 | // } | 147 | // } |
| 120 | // | 148 | // |
| 121 | 149 | ||
| 122 | - | ||
| 123 | -// /** | ||
| 124 | -// * 删除用户 | ||
| 125 | -// */ | ||
| 126 | -// @PreAuthorize("@ss.hasPermi('system:user:remove')") | ||
| 127 | -// @Log(title = "用户管理", businessType = BusinessType.DELETE) | ||
| 128 | -// @DeleteMapping("/{userIds}") | ||
| 129 | -// public AjaxResult remove(@PathVariable Long[] userIds) | ||
| 130 | -// { | ||
| 131 | -// return toAjax(userService.deleteUserByIds(userIds)); | ||
| 132 | -// } | ||
| 133 | -// | ||
| 134 | -// /** | ||
| 135 | -// * 重置密码 | ||
| 136 | -// */ | ||
| 137 | -// @PreAuthorize("@ss.hasPermi('system:user:resetPwd')") | ||
| 138 | -// @Log(title = "用户管理", businessType = BusinessType.UPDATE) | ||
| 139 | -// @PutMapping("/resetPwd") | ||
| 140 | -// public AjaxResult resetPwd(@RequestBody SysUser user) | ||
| 141 | -// { | ||
| 142 | -// userService.checkUserAllowed(user); | ||
| 143 | -// user.setPassword(SecurityUtils.encryptPassword(user.getPassword())); | ||
| 144 | -// user.setUpdateBy(SecurityUtils.getUsername()); | ||
| 145 | -// return toAjax(userService.resetPwd(user)); | ||
| 146 | -// } | ||
| 147 | -// | ||
| 148 | -// /** | ||
| 149 | -// * 状态修改 | ||
| 150 | -// */ | ||
| 151 | -// @PreAuthorize("@ss.hasPermi('system:user:edit')") | ||
| 152 | -// @Log(title = "用户管理", businessType = BusinessType.UPDATE) | ||
| 153 | -// @PutMapping("/changeStatus") | ||
| 154 | -// public AjaxResult changeStatus(@RequestBody SysUser user) | ||
| 155 | -// { | ||
| 156 | -// userService.checkUserAllowed(user); | ||
| 157 | -// user.setUpdateBy(SecurityUtils.getUsername()); | ||
| 158 | -// return toAjax(userService.updateUserStatus(user)); | ||
| 159 | -// } | ||
| 160 | - | ||
| 161 | } | 150 | } |
src/main/java/cn/iocoder/dashboard/modules/system/controller/user/vo/user/SysUserUpdatePasswordReqVO.java
0 → 100644
| 1 | +package cn.iocoder.dashboard.modules.system.controller.user.vo.user; | ||
| 2 | + | ||
| 3 | +import io.swagger.annotations.ApiModel; | ||
| 4 | +import io.swagger.annotations.ApiModelProperty; | ||
| 5 | +import lombok.Data; | ||
| 6 | +import lombok.EqualsAndHashCode; | ||
| 7 | +import org.hibernate.validator.constraints.Length; | ||
| 8 | + | ||
| 9 | +import javax.validation.constraints.NotEmpty; | ||
| 10 | +import javax.validation.constraints.NotNull; | ||
| 11 | + | ||
| 12 | +@ApiModel("用户更新密码 Request VO") | ||
| 13 | +@Data | ||
| 14 | +public class SysUserUpdatePasswordReqVO { | ||
| 15 | + | ||
| 16 | + @ApiModelProperty(value = "用户编号", required = true, example = "1024") | ||
| 17 | + @NotNull(message = "用户编号不能为空") | ||
| 18 | + private Long id; | ||
| 19 | + | ||
| 20 | + @ApiModelProperty(value = "密码", required = true, example = "123456") | ||
| 21 | + @NotEmpty(message = "密码不能为空") | ||
| 22 | + @Length(min = 4, max = 16, message = "密码长度为 4-16 位") | ||
| 23 | + private String password; | ||
| 24 | + | ||
| 25 | +} |
src/main/java/cn/iocoder/dashboard/modules/system/service/permission/SysPermissionService.java
| @@ -69,7 +69,7 @@ public interface SysPermissionService { | @@ -69,7 +69,7 @@ public interface SysPermissionService { | ||
| 69 | void assignRoleDataScope(Long roleId, Integer dataScope, Set<Long> dataScopeDeptIds); | 69 | void assignRoleDataScope(Long roleId, Integer dataScope, Set<Long> dataScopeDeptIds); |
| 70 | 70 | ||
| 71 | /** | 71 | /** |
| 72 | - * 处理角色删除时,删除关联授权角色 | 72 | + * 处理角色删除时,删除关联授权数据 |
| 73 | * | 73 | * |
| 74 | * @param roleId 角色编号 | 74 | * @param roleId 角色编号 |
| 75 | */ | 75 | */ |
| @@ -82,4 +82,11 @@ public interface SysPermissionService { | @@ -82,4 +82,11 @@ public interface SysPermissionService { | ||
| 82 | */ | 82 | */ |
| 83 | void processMenuDeleted(Long menuId); | 83 | void processMenuDeleted(Long menuId); |
| 84 | 84 | ||
| 85 | + /** | ||
| 86 | + * 处理用户删除是,删除关联授权数据 | ||
| 87 | + * | ||
| 88 | + * @param userId 用户编号 | ||
| 89 | + */ | ||
| 90 | + void processUserDeleted(Long userId); | ||
| 91 | + | ||
| 85 | } | 92 | } |
src/main/java/cn/iocoder/dashboard/modules/system/service/permission/impl/SysPermissionServiceImpl.java
| @@ -161,4 +161,9 @@ public class SysPermissionServiceImpl implements SysPermissionService { | @@ -161,4 +161,9 @@ public class SysPermissionServiceImpl implements SysPermissionService { | ||
| 161 | // TODO 实现我 | 161 | // TODO 实现我 |
| 162 | } | 162 | } |
| 163 | 163 | ||
| 164 | + @Override | ||
| 165 | + public void processUserDeleted(Long userId) { | ||
| 166 | + // TODO 实现我 | ||
| 167 | + } | ||
| 168 | + | ||
| 164 | } | 169 | } |
src/main/java/cn/iocoder/dashboard/modules/system/service/user/SysUserService.java
| @@ -59,6 +59,29 @@ public interface SysUserService { | @@ -59,6 +59,29 @@ public interface SysUserService { | ||
| 59 | */ | 59 | */ |
| 60 | void updateUser(SysUserUpdateReqVO reqVO); | 60 | void updateUser(SysUserUpdateReqVO reqVO); |
| 61 | 61 | ||
| 62 | + /** | ||
| 63 | + * 删除用户 | ||
| 64 | + * | ||
| 65 | + * @param id 用户编号 | ||
| 66 | + */ | ||
| 67 | + void deleteUser(Long id); | ||
| 68 | + | ||
| 69 | + /** | ||
| 70 | + * 修改密码 | ||
| 71 | + * | ||
| 72 | + * @param id 用户编号 | ||
| 73 | + * @param password 密码 | ||
| 74 | + */ | ||
| 75 | + void updateUserPassword(Long id, String password); | ||
| 76 | + | ||
| 77 | + /** | ||
| 78 | + * 修改密码 | ||
| 79 | + * | ||
| 80 | + * @param id 用户编号 | ||
| 81 | + * @param status 状态 | ||
| 82 | + */ | ||
| 83 | + void updateUserStatus(Long id, Integer status); | ||
| 84 | + | ||
| 62 | // | 85 | // |
| 63 | // /** | 86 | // /** |
| 64 | // * 根据用户ID查询用户所属角色组 | 87 | // * 根据用户ID查询用户所属角色组 |
src/main/java/cn/iocoder/dashboard/modules/system/service/user/SysUserServiceImpl.java
| @@ -15,6 +15,7 @@ import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dept.SysPostDO; | @@ -15,6 +15,7 @@ import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.dept.SysPostDO; | ||
| 15 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.user.SysUserDO; | 15 | import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.user.SysUserDO; |
| 16 | import cn.iocoder.dashboard.modules.system.service.dept.SysDeptService; | 16 | import cn.iocoder.dashboard.modules.system.service.dept.SysDeptService; |
| 17 | import cn.iocoder.dashboard.modules.system.service.dept.SysPostService; | 17 | import cn.iocoder.dashboard.modules.system.service.dept.SysPostService; |
| 18 | +import cn.iocoder.dashboard.modules.system.service.permission.SysPermissionService; | ||
| 18 | import cn.iocoder.dashboard.util.collection.CollectionUtils; | 19 | import cn.iocoder.dashboard.util.collection.CollectionUtils; |
| 19 | import lombok.extern.slf4j.Slf4j; | 20 | import lombok.extern.slf4j.Slf4j; |
| 20 | import org.springframework.security.crypto.password.PasswordEncoder; | 21 | import org.springframework.security.crypto.password.PasswordEncoder; |
| @@ -45,19 +46,12 @@ public class SysUserServiceImpl implements SysUserService { | @@ -45,19 +46,12 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 45 | private SysDeptService deptService; | 46 | private SysDeptService deptService; |
| 46 | @Resource | 47 | @Resource |
| 47 | private SysPostService postService; | 48 | private SysPostService postService; |
| 49 | + @Resource | ||
| 50 | + private SysPermissionService permissionService; | ||
| 48 | 51 | ||
| 49 | @Resource | 52 | @Resource |
| 50 | private PasswordEncoder passwordEncoder; | 53 | private PasswordEncoder passwordEncoder; |
| 51 | 54 | ||
| 52 | -// @Autowired | ||
| 53 | -// private SysUserRoleMapper userRoleMapper; | ||
| 54 | -// | ||
| 55 | -// @Autowired | ||
| 56 | -// private SysUserPostMapper userPostMapper; | ||
| 57 | -// | ||
| 58 | -// @Autowired | ||
| 59 | -// private ISysConfigService configService; | ||
| 60 | - | ||
| 61 | // /** | 55 | // /** |
| 62 | // * 根据条件分页查询用户列表 | 56 | // * 根据条件分页查询用户列表 |
| 63 | // * | 57 | // * |
| @@ -117,6 +111,38 @@ public class SysUserServiceImpl implements SysUserService { | @@ -117,6 +111,38 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 117 | userMapper.updateById(updateObj); | 111 | userMapper.updateById(updateObj); |
| 118 | } | 112 | } |
| 119 | 113 | ||
| 114 | + @Override | ||
| 115 | + public void deleteUser(Long id) { | ||
| 116 | + // 校验用户存在 | ||
| 117 | + this.checkUserExists(id); | ||
| 118 | + // 删除用户 | ||
| 119 | + userMapper.deleteById(id); | ||
| 120 | + } | ||
| 121 | + | ||
| 122 | + @Override | ||
| 123 | + public void updateUserPassword(Long id, String password) { | ||
| 124 | + // 校验用户存在 | ||
| 125 | + this.checkUserExists(id); | ||
| 126 | + // 更新密码 | ||
| 127 | + SysUserDO updateObj = new SysUserDO(); | ||
| 128 | + updateObj.setId(id); | ||
| 129 | + updateObj.setPassword(passwordEncoder.encode(password)); // 加密密码 | ||
| 130 | + userMapper.updateById(updateObj); | ||
| 131 | + } | ||
| 132 | + | ||
| 133 | + @Override | ||
| 134 | + public void updateUserStatus(Long id, Integer status) { | ||
| 135 | + // 校验用户存在 | ||
| 136 | + this.checkUserExists(id); | ||
| 137 | + // 更新状态 | ||
| 138 | + SysUserDO updateObj = new SysUserDO(); | ||
| 139 | + updateObj.setId(id); | ||
| 140 | + updateObj.setStatus(status); | ||
| 141 | + userMapper.updateById(updateObj); | ||
| 142 | + // 删除用户关联数据 | ||
| 143 | + permissionService.processUserDeleted(id); | ||
| 144 | + } | ||
| 145 | + | ||
| 120 | private void checkCreateOrUpdate(Long id, String username, String mobile, String email, | 146 | private void checkCreateOrUpdate(Long id, String username, String mobile, String email, |
| 121 | Long deptId, Set<Long> postIds) { | 147 | Long deptId, Set<Long> postIds) { |
| 122 | // 校验用户存在 | 148 | // 校验用户存在 |
| @@ -253,50 +279,6 @@ public class SysUserServiceImpl implements SysUserService { | @@ -253,50 +279,6 @@ public class SysUserServiceImpl implements SysUserService { | ||
| 253 | // } | 279 | // } |
| 254 | // } | 280 | // } |
| 255 | // } | 281 | // } |
| 256 | -// | ||
| 257 | -// /** | ||
| 258 | -// * 新增用户岗位信息 | ||
| 259 | -// * | ||
| 260 | -// * @param user 用户对象 | ||
| 261 | -// */ | ||
| 262 | -// public void insertUserPost(SysUser user) | ||
| 263 | -// { | ||
| 264 | -// Long[] posts = user.getPostIds(); | ||
| 265 | -// if (StringUtils.isNotNull(posts)) | ||
| 266 | -// { | ||
| 267 | -// // 新增用户与岗位管理 | ||
| 268 | -// List<SysUserPost> list = new ArrayList<SysUserPost>(); | ||
| 269 | -// for (Long postId : posts) | ||
| 270 | -// { | ||
| 271 | -// SysUserPost up = new SysUserPost(); | ||
| 272 | -// up.setUserId(user.getUserId()); | ||
| 273 | -// up.setPostId(postId); | ||
| 274 | -// list.add(up); | ||
| 275 | -// } | ||
| 276 | -// if (list.size() > 0) | ||
| 277 | -// { | ||
| 278 | -// userPostMapper.batchUserPost(list); | ||
| 279 | -// } | ||
| 280 | -// } | ||
| 281 | -// } | ||
| 282 | -// | ||
| 283 | -// /** | ||
| 284 | -// * 通过用户ID删除用户 | ||
| 285 | -// * | ||
| 286 | -// * @param userId 用户ID | ||
| 287 | -// * @return 结果 | ||
| 288 | -// */ | ||
| 289 | -// @Override | ||
| 290 | -// @Transactional | ||
| 291 | -// public int deleteUserById(Long userId) | ||
| 292 | -// { | ||
| 293 | -// // 删除用户与角色关联 | ||
| 294 | -// userRoleMapper.deleteUserRoleByUserId(userId); | ||
| 295 | -// // 删除用户与岗位表 | ||
| 296 | -// userPostMapper.deleteUserPostByUserId(userId); | ||
| 297 | -// return userMapper.deleteUserById(userId); | ||
| 298 | -// } | ||
| 299 | - | ||
| 300 | 282 | ||
| 301 | // /** | 283 | // /** |
| 302 | // * 导入用户数据 | 284 | // * 导入用户数据 |