SysRoleController.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. package com.kmall.common.controller;
  2. import com.kmall.common.annotation.SysLog;
  3. import com.kmall.common.entity.SysRoleEntity;
  4. import com.kmall.common.service.SysRoleDeptService;
  5. import com.kmall.common.service.SysRoleMenuService;
  6. import com.kmall.common.service.SysRoleService;
  7. import com.kmall.common.utils.Constant;
  8. import com.kmall.common.utils.PageUtils;
  9. import com.kmall.common.utils.Query;
  10. import com.kmall.common.utils.R;
  11. import com.kmall.common.validator.ValidatorUtils;
  12. import org.apache.shiro.authz.annotation.RequiresPermissions;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.web.bind.annotation.*;
  15. import java.util.HashMap;
  16. import java.util.List;
  17. import java.util.Map;
  18. /**
  19. * 角色管理
  20. *
  21. * @author Scott
  22. * @email
  23. * @date 2016年11月8日 下午2:18:33
  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. @Autowired
  33. private SysRoleDeptService sysRoleDeptService;
  34. /**
  35. * 角色列表
  36. */
  37. @RequestMapping("/list")
  38. @RequiresPermissions("sys:role:list")
  39. public R list(@RequestParam Map<String, Object> params) {
  40. //如果不是超级管理员,则只查询自己创建的角色列表
  41. if (getUserId() != Constant.SUPER_ADMIN) {
  42. params.put("createUserId", getUserId());
  43. }
  44. //查询列表数据
  45. Query query = new Query(params);
  46. List<SysRoleEntity> list = sysRoleService.queryList(query);
  47. int total = sysRoleService.queryTotal(query);
  48. PageUtils pageUtil = new PageUtils(list, total, query.getLimit(), query.getPage());
  49. return R.ok().put("page", pageUtil);
  50. }
  51. /**
  52. * 角色列表
  53. */
  54. @RequestMapping("/select")
  55. @RequiresPermissions("sys:role:select")
  56. public R select() {
  57. Map<String, Object> map = new HashMap<>();
  58. //如果不是超级管理员,则只查询自己所拥有的角色列表
  59. if (getUserId() != Constant.SUPER_ADMIN) {
  60. map.put("createUserId", getUserId());
  61. }
  62. List<SysRoleEntity> list = sysRoleService.queryList(map);
  63. return R.ok().put("list", list);
  64. }
  65. /**
  66. * 角色信息
  67. */
  68. @RequestMapping("/info/{roleId}")
  69. @RequiresPermissions("sys:role:info")
  70. public R info(@PathVariable("roleId") Long roleId) {
  71. SysRoleEntity role = sysRoleService.queryObject(roleId);
  72. //查询角色对应的菜单
  73. List<Long> menuIdList = sysRoleMenuService.queryMenuIdList(roleId);
  74. role.setMenuIdList(menuIdList);
  75. //查询角色对应的部门
  76. List<Long> deptIdList = sysRoleDeptService.queryDeptIdList(roleId);
  77. role.setDeptIdList(deptIdList);
  78. return R.ok().put("role", role);
  79. }
  80. /**
  81. * 保存角色
  82. */
  83. @SysLog("保存角色")
  84. @RequestMapping("/save")
  85. @RequiresPermissions("sys:role:save")
  86. public R save(@RequestBody SysRoleEntity role) {
  87. // 非空检验
  88. // ValidatorUtils.validateEntity(role);
  89. role.setCreateUserId(getUserId());
  90. sysRoleService.save(role);
  91. return R.ok();
  92. }
  93. /**
  94. * 修改角色
  95. */
  96. @SysLog("修改角色")
  97. @RequestMapping("/update")
  98. @RequiresPermissions("sys:role:update")
  99. public R update(@RequestBody SysRoleEntity role) {
  100. // ValidatorUtils.validateEntity(role);
  101. role.setCreateUserId(getUserId());
  102. sysRoleService.update(role);
  103. return R.ok();
  104. }
  105. /**
  106. * 删除角色
  107. */
  108. @SysLog("删除角色")
  109. @RequestMapping("/delete")
  110. @RequiresPermissions("sys:role:delete")
  111. public R delete(@RequestBody Long[] roleIds) {
  112. sysRoleService.deleteBatch(roleIds);
  113. return R.ok();
  114. }
  115. }