From b5ef65d0103a71dc7af2b9be6d2ac43aca5bb726 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 27 八月 2024 08:59:57 +0800
Subject: [PATCH] 代码提交 bug解决

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java |   49 ++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 36 insertions(+), 13 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
index 7913af9..db45f67 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.system.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.exception.ServiceException;
@@ -114,7 +115,8 @@
     public AjaxResult add(@Validated(InsertGroup.class) @RequestBody SysUserDTO dto) {
         SysUser user = BeanUtils.copyBean(dto, SysUser.class);
         user.setUserId(null);
-        user.setUserType("01");
+        // 添加为平台管理员
+        user.setUserType("00");
         user.setUserName(user.getPhonenumber());
         if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
             user.setNickName(user.getPhonenumber());
@@ -211,6 +213,11 @@
         SysRole byId = roleService.selectRoleById(dto.getRoleId());
         user.setRoleName(byId.getRoleName());
         user.setRoleId(dto.getRoleId());
+        // 原来的role
+        SysUserRole one = userRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId,dto.getUserId() ));
+        one.setRoleId(dto.getRoleId());
+        //更新新的role
+        userRoleService.updateSysUserRole(one);
         return toAjax(userService.updateById(user));
     }
 
@@ -300,7 +307,6 @@
 
 
     @Log(title = "用户管理", businessType = BusinessType.EXPORT)
-    @RequiresPermissions("system:user:export")
     @PostMapping("/export")
     public void export(HttpServletResponse response, SysUser user) {
         List<SysUser> list = userService.selectUserList(user);
@@ -315,7 +321,6 @@
     }
 
     @Log(title = "用户管理", businessType = BusinessType.IMPORT)
-    @RequiresPermissions("system:user:import")
     @PostMapping("/importData")
     public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception {
         ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
@@ -394,7 +399,6 @@
     /**
      * 重置密码
      */
-    @RequiresPermissions("system:user:edit")
     @ApiOperation("重置密码")
     @Log(title = "用户管理", businessType = BusinessType.UPDATE)
     @PostMapping("/resetPwd")
@@ -404,14 +408,32 @@
         if (StringUtils.isNull(user)) {
             throw new ServiceException("账号不存在");
         }
-
         userService.checkUserAllowed(user);
         userService.checkUserDataScope(user.getUserId());
-        user.setPassword(SecurityUtils.encryptPassword(dto.getPassword()));
+        user.setPassword(SecurityUtils.encryptPassword("a123456"));
         user.setUpdateBy(SecurityUtils.getUsername());
         return toAjax(userService.resetPwd(user));
     }
 
+    @ApiOperation("修改密码")
+    @PostMapping("/updatePwd")
+    public AjaxResult updatePwd(@RequestBody ResetPwdDTO dto) {
+        // 判断旧密码是否和当前密码是否匹配
+        SysUser one = userService.getOne(new QueryWrapper<SysUser>()
+                .eq("phonenumber", dto.getPhonenumber())
+                .eq("del_flag", 0));
+        if (one == null){
+            return AjaxResult.error("账号不存在");
+        }
+        if (SecurityUtils.matchesPassword(dto.getPassword(),one.getPassword())) {
+            return AjaxResult.error("新密码不能和旧密码一致");
+        }
+        if (SecurityUtils.matchesPassword(dto.getOldPassword(),one.getPassword())){
+            return AjaxResult.error("旧密码错误");
+        }
+        userService.updateById(one);
+        return AjaxResult.success();
+    }
     /**
      * 获取当前用户信息
      */
@@ -433,7 +455,6 @@
     /**
      * 状态修改
      */
-    @RequiresPermissions("system:user:edit")
     @Log(title = "用户管理", businessType = BusinessType.UPDATE)
     @PutMapping("/changeStatus")
     public AjaxResult changeStatus(@RequestBody SysUser user) {
@@ -446,7 +467,6 @@
     /**
      * 根据用户编号获取授权角色
      */
-    @RequiresPermissions("system:user:query")
     @GetMapping("/authRole/{userId}")
     public AjaxResult authRole(@PathVariable("userId") Long userId) {
         AjaxResult ajax = AjaxResult.success();
@@ -460,7 +480,6 @@
     /**
      * 用户授权角色
      */
-    @RequiresPermissions("system:user:edit")
     @Log(title = "用户管理", businessType = BusinessType.GRANT)
     @PutMapping("/authRole")
     public AjaxResult insertAuthRole(Long userId, Long[] roleIds) {
@@ -472,7 +491,6 @@
     /**
      * 获取部门树列表
      */
-    @RequiresPermissions("system:user:list")
     @GetMapping("/deptTree")
     public AjaxResult deptTree(SysDept dept) {
         return success(deptService.selectDeptTreeList(dept));
@@ -610,11 +628,16 @@
     public R<PageDTO<ConservatorVO>> getConservatorPage(@Validated @RequestBody ConservatorQuery query) {
         return R.ok(userService.getConservatorPage(query));
     }
+    @ApiOperation(value = "根据仓库等级和所在地获取管理员列表--不分页", notes = "获取仓库管理分页列表")
+    @PostMapping("/conservator-page2")
+    public R<List<SysUser>> getConservatorPage2(@RequestBody ConservatorQueryA query) {
+        return R.ok(userService.getConservatorPage2(query));
+    }
 
     @ApiOperation(value = "获取仓库管理员不分页列表", notes = "获取仓库管理分页列表")
-    @PostMapping("/conservator-page1")
-    public R<List<SysUser>> getConservatorPage1() {
-        return R.ok(userService.getConservatorPage1());
+    @GetMapping("/conservator-page1/{grade}")
+    public R<List<SysUser>> getConservatorPage1(@PathVariable("grade") String grade) {
+        return R.ok(userService.getConservatorPage1(grade));
     }
 
     /**

--
Gitblit v1.7.1