SysRoleController.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. package com.sqx.modules.sys.controller;
  2. import cn.hutool.core.util.StrUtil;
  3. import com.sqx.common.annotation.SysLog;
  4. import com.sqx.common.utils.Constant;
  5. import com.sqx.common.utils.Result;
  6. import com.sqx.common.validator.ValidatorUtils;
  7. import com.sqx.modules.sys.entity.SysRoleEntity;
  8. import com.sqx.modules.sys.service.SysRoleMenuService;
  9. import com.sqx.modules.sys.service.SysRoleService;
  10. import org.apache.shiro.authz.annotation.RequiresPermissions;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.web.bind.annotation.GetMapping;
  13. import org.springframework.web.bind.annotation.PathVariable;
  14. import org.springframework.web.bind.annotation.PostMapping;
  15. import org.springframework.web.bind.annotation.RequestBody;
  16. import org.springframework.web.bind.annotation.RequestMapping;
  17. import org.springframework.web.bind.annotation.RestController;
  18. import java.util.HashMap;
  19. import java.util.List;
  20. import java.util.Map;
  21. /**
  22. * 角色管理
  23. *
  24. */
  25. @RestController
  26. @RequestMapping("/sys/role")
  27. public class SysRoleController extends AbstractController {
  28. @Autowired
  29. private SysRoleService sysRoleService;
  30. @Autowired
  31. private SysRoleMenuService sysRoleMenuService;
  32. /**
  33. * 角色列表
  34. */
  35. @GetMapping("/list")
  36. @RequiresPermissions("sys:role:list")
  37. public Result list(String page, String limit, String roleName){
  38. Map<String, Object> params = new HashMap<>();
  39. if (StrUtil.isNotBlank(roleName)) {
  40. params.put("roleName", roleName);
  41. }
  42. if (StrUtil.isNotBlank(page)) {
  43. params.put(Constant.PAGE, page);
  44. }
  45. if (StrUtil.isNotBlank(limit)) {
  46. params.put(Constant.LIMIT, page);
  47. }
  48. return Result.success().put("page", sysRoleService.queryPage(params));
  49. }
  50. /**
  51. * 角色列表
  52. */
  53. @GetMapping("/select")
  54. @RequiresPermissions("sys:role:select")
  55. public Result select(){
  56. Map<String, Object> map = new HashMap<>();
  57. //如果不是超级管理员,则只查询自己所拥有的角色列表
  58. /*if(getUserId() != Constant.SUPER_ADMIN){
  59. map.put("create_user_id", getUserId());
  60. }*/
  61. List<SysRoleEntity> list = (List<SysRoleEntity>) sysRoleService.listByMap(map);
  62. return Result.success().put("list", list);
  63. }
  64. /**
  65. * 角色信息
  66. */
  67. @GetMapping("/info/{roleId}")
  68. @RequiresPermissions("sys:role:info")
  69. public Result info(@PathVariable("roleId") Long roleId){
  70. SysRoleEntity role = sysRoleService.getById(roleId);
  71. //查询角色对应的菜单
  72. List<Long> menuIdList = sysRoleMenuService.queryMenuIdList(roleId);
  73. role.setMenuIdList(menuIdList);
  74. return Result.success().put("role", role);
  75. }
  76. /**
  77. * 保存角色
  78. */
  79. @SysLog("保存角色")
  80. @PostMapping("/save")
  81. @RequiresPermissions("sys:role:save")
  82. public Result save(@RequestBody SysRoleEntity role){
  83. ValidatorUtils.validateEntity(role);
  84. role.setCreateUserId(getUserId());
  85. sysRoleService.saveRole(role);
  86. return Result.success();
  87. }
  88. /**
  89. * 修改角色
  90. */
  91. @SysLog("修改角色")
  92. @PostMapping("/update")
  93. @RequiresPermissions("sys:role:update")
  94. public Result update(@RequestBody SysRoleEntity role){
  95. ValidatorUtils.validateEntity(role);
  96. role.setCreateUserId(getUserId());
  97. sysRoleService.update(role);
  98. return Result.success();
  99. }
  100. /**
  101. * 删除角色
  102. */
  103. @SysLog("删除角色")
  104. @PostMapping("/delete")
  105. @RequiresPermissions("sys:role:delete")
  106. public Result delete(@RequestBody Long[] roleIds){
  107. sysRoleService.deleteBatch(roleIds);
  108. return Result.success();
  109. }
  110. }