|
@@ -1,5 +1,24 @@
|
|
|
package com.ruoyi.system.controller;
|
|
|
|
|
|
+import java.io.IOException;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Set;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+
|
|
|
+import com.ruoyi.ext.api.validate.group.AddGroup;
|
|
|
+import org.apache.commons.lang3.ArrayUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
+import org.springframework.web.bind.annotation.DeleteMapping;
|
|
|
+import org.springframework.web.bind.annotation.GetMapping;
|
|
|
+import org.springframework.web.bind.annotation.PathVariable;
|
|
|
+import org.springframework.web.bind.annotation.PostMapping;
|
|
|
+import org.springframework.web.bind.annotation.PutMapping;
|
|
|
+import org.springframework.web.bind.annotation.RequestBody;
|
|
|
+import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
+import org.springframework.web.bind.annotation.RestController;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
import com.ruoyi.common.core.constant.UserConstants;
|
|
|
import com.ruoyi.common.core.domain.R;
|
|
|
import com.ruoyi.common.core.utils.StringUtils;
|
|
@@ -10,32 +29,22 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
|
|
|
import com.ruoyi.common.log.annotation.Log;
|
|
|
import com.ruoyi.common.log.enums.BusinessType;
|
|
|
import com.ruoyi.common.security.annotation.InnerAuth;
|
|
|
-import com.ruoyi.common.security.annotation.Logical;
|
|
|
import com.ruoyi.common.security.annotation.RequiresPermissions;
|
|
|
import com.ruoyi.common.security.utils.SecurityUtils;
|
|
|
-import com.ruoyi.ext.api.validate.group.AddGroup;
|
|
|
+import com.ruoyi.system.api.domain.SysDept;
|
|
|
import com.ruoyi.system.api.domain.SysRole;
|
|
|
import com.ruoyi.system.api.domain.SysUser;
|
|
|
import com.ruoyi.system.api.model.LoginUser;
|
|
|
-import com.ruoyi.system.domain.SysMenuRoleVo;
|
|
|
-import com.ruoyi.system.service.*;
|
|
|
-import org.apache.commons.lang3.ArrayUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.validation.annotation.Validated;
|
|
|
-import org.springframework.web.bind.annotation.*;
|
|
|
-import org.springframework.web.multipart.MultipartFile;
|
|
|
-
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
-import java.io.IOException;
|
|
|
-import java.util.HashSet;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Set;
|
|
|
-import java.util.stream.Collectors;
|
|
|
+import com.ruoyi.system.service.ISysConfigService;
|
|
|
+import com.ruoyi.system.service.ISysDeptService;
|
|
|
+import com.ruoyi.system.service.ISysPermissionService;
|
|
|
+import com.ruoyi.system.service.ISysPostService;
|
|
|
+import com.ruoyi.system.service.ISysRoleService;
|
|
|
+import com.ruoyi.system.service.ISysUserService;
|
|
|
|
|
|
/**
|
|
|
* 用户信息
|
|
|
- *
|
|
|
+ *
|
|
|
* @author ruoyi
|
|
|
*/
|
|
|
@RestController
|
|
@@ -48,6 +57,9 @@ public class SysUserController extends BaseController
|
|
|
@Autowired
|
|
|
private ISysRoleService roleService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ISysDeptService deptService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private ISysPostService postService;
|
|
|
|
|
@@ -101,7 +113,7 @@ public class SysUserController extends BaseController
|
|
|
/**
|
|
|
* 获取当前用户信息
|
|
|
*/
|
|
|
- @InnerAuth
|
|
|
+// @InnerAuth
|
|
|
@GetMapping("/info/{username}")
|
|
|
public R<LoginUser> info(@PathVariable("username") String username)
|
|
|
{
|
|
@@ -111,28 +123,13 @@ public class SysUserController extends BaseController
|
|
|
return R.fail("用户名或密码错误");
|
|
|
}
|
|
|
// 角色集合
|
|
|
- Set<String> roles = permissionService.getRolePermission(sysUser.getUserId());
|
|
|
+ Set<String> roles = permissionService.getRolePermission(sysUser);
|
|
|
// 权限集合
|
|
|
-// Set<String> permissions = permissionService.getMenuPermission(sysUser.getUserId());
|
|
|
- List<SysMenuRoleVo> menuPermission = permissionService.getMenuPermission(sysUser.getUserId());
|
|
|
- Map<String, String> perms = menuPermission.stream().filter(sysMenuRoleVo -> !StringUtils.isEmpty(sysMenuRoleVo.getPerms()))
|
|
|
- .collect(Collectors.toMap(SysMenuRoleVo::getPerms, SysMenuRoleVo::getDataScope, (dataScope1, dataScope2) -> {
|
|
|
- long l1 = Long.parseLong(dataScope1);
|
|
|
- long l2 = Long.parseLong(dataScope2);
|
|
|
- return l1 < l2 ? dataScope1 : dataScope2;
|
|
|
- }));
|
|
|
-//
|
|
|
- Set<String> permissions = perms.keySet();
|
|
|
- if (SecurityUtils.isAdmin(sysUser.getUserId())){
|
|
|
- permissions=new HashSet<>();
|
|
|
- permissions.add("*:*:*");
|
|
|
- }
|
|
|
-
|
|
|
+ Set<String> permissions = permissionService.getMenuPermission(sysUser);
|
|
|
LoginUser sysUserVo = new LoginUser();
|
|
|
sysUserVo.setSysUser(sysUser);
|
|
|
sysUserVo.setRoles(roles);
|
|
|
sysUserVo.setPermissions(permissions);
|
|
|
-// sysUserVo.setDetailPerms(perms);
|
|
|
return R.ok(sysUserVo);
|
|
|
}
|
|
|
|
|
@@ -157,26 +154,19 @@ public class SysUserController extends BaseController
|
|
|
|
|
|
/**
|
|
|
* 获取用户信息
|
|
|
- *
|
|
|
+ *
|
|
|
* @return 用户信息
|
|
|
*/
|
|
|
@GetMapping("getInfo")
|
|
|
public AjaxResult getInfo()
|
|
|
{
|
|
|
- Long userId = SecurityUtils.getUserId();
|
|
|
+ SysUser user = userService.selectUserById(SecurityUtils.getUserId());
|
|
|
// 角色集合
|
|
|
- Set<String> roles = permissionService.getRolePermission(userId);
|
|
|
+ Set<String> roles = permissionService.getRolePermission(user);
|
|
|
// 权限集合
|
|
|
-// Set<String> permissions = permissionService.getMenuPermission(userId);
|
|
|
- List<SysMenuRoleVo> menuPermission = permissionService.getMenuPermission(userId);
|
|
|
- Set<String> permissions = menuPermission.stream().filter(sysMenuRoleVo ->!StringUtils.isEmpty(sysMenuRoleVo.getPerms()))
|
|
|
- .map(SysMenuRoleVo::getPerms).collect(Collectors.toSet());
|
|
|
- if (SecurityUtils.isAdmin(userId)){
|
|
|
- permissions=new HashSet<>();
|
|
|
- permissions.add("*:*:*");
|
|
|
- }
|
|
|
+ Set<String> permissions = permissionService.getMenuPermission(user);
|
|
|
AjaxResult ajax = AjaxResult.success();
|
|
|
- ajax.put("user", userService.selectUserById(userId));
|
|
|
+ ajax.put("user", user);
|
|
|
ajax.put("roles", roles);
|
|
|
ajax.put("permissions", permissions);
|
|
|
return ajax;
|
|
@@ -207,7 +197,7 @@ public class SysUserController extends BaseController
|
|
|
/**
|
|
|
* 新增用户
|
|
|
*/
|
|
|
- @RequiresPermissions(value = "system:user:add")
|
|
|
+ @RequiresPermissions("system:user:add")
|
|
|
@Log(title = "用户管理", businessType = BusinessType.INSERT)
|
|
|
@PostMapping
|
|
|
public AjaxResult add(@Validated({AddGroup.class}) @RequestBody SysUser user)
|
|
@@ -226,6 +216,7 @@ public class SysUserController extends BaseController
|
|
|
{
|
|
|
return AjaxResult.error("新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
|
|
}
|
|
|
+
|
|
|
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
|
|
|
return toAjax(userService.insertUser(user),user.getUserId());
|
|
|
}
|
|
@@ -250,13 +241,14 @@ public class SysUserController extends BaseController
|
|
|
{
|
|
|
return AjaxResult.error("修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
|
|
|
}
|
|
|
+
|
|
|
return toAjax(userService.updateUser(user));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 删除用户
|
|
|
*/
|
|
|
- @RequiresPermissions(value = "system:user:remove")
|
|
|
+ @RequiresPermissions("system:user:remove")
|
|
|
@Log(title = "用户管理", businessType = BusinessType.DELETE)
|
|
|
@DeleteMapping("/{userIds}")
|
|
|
public AjaxResult remove(@PathVariable Long[] userIds)
|
|
@@ -289,13 +281,14 @@ public class SysUserController extends BaseController
|
|
|
/**
|
|
|
* 状态修改
|
|
|
*/
|
|
|
- @RequiresPermissions(value = {"system:user:edit", "organization:yljgZhgl:editU","organization:sqjgZhgl:editU"}, logical = Logical.OR)
|
|
|
+ @RequiresPermissions("system:user:edit")
|
|
|
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
|
|
|
@PutMapping("/changeStatus")
|
|
|
public AjaxResult changeStatus(@RequestBody SysUser user)
|
|
|
{
|
|
|
userService.checkUserAllowed(user);
|
|
|
userService.checkUserDataScope(user.getUserId());
|
|
|
+
|
|
|
return toAjax(userService.updateUserStatus(user));
|
|
|
}
|
|
|
|
|
@@ -317,13 +310,23 @@ public class SysUserController extends BaseController
|
|
|
/**
|
|
|
* 用户授权角色
|
|
|
*/
|
|
|
-// @RequiresPermissions("system:user:edit")
|
|
|
-// @Log(title = "用户管理", businessType = BusinessType.GRANT)
|
|
|
-// @PutMapping("/authRole")
|
|
|
-// public AjaxResult insertAuthRole(Long userId, Long[] roleIds)
|
|
|
-// {
|
|
|
-// userService.checkUserDataScope(userId);
|
|
|
-// userService.insertUserAuth(userId, roleIds);
|
|
|
-// return success();
|
|
|
-// }
|
|
|
+ // @RequiresPermissions("system:user:edit")
|
|
|
+ // @Log(title = "用户管理", businessType = BusinessType.GRANT)
|
|
|
+ // @PutMapping("/authRole")
|
|
|
+ // public AjaxResult insertAuthRole(Long userId, Long[] roleIds)
|
|
|
+ // {
|
|
|
+ // userService.checkUserDataScope(userId);
|
|
|
+ // userService.insertUserAuth(userId, roleIds);
|
|
|
+ // return success();
|
|
|
+ // }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取部门树列表
|
|
|
+ */
|
|
|
+ @RequiresPermissions("system:user:list")
|
|
|
+ @GetMapping("/deptTree")
|
|
|
+ public AjaxResult deptTree(SysDept dept)
|
|
|
+ {
|
|
|
+ return AjaxResult.success(deptService.selectDeptTreeList(dept));
|
|
|
+ }
|
|
|
}
|