ISysRoleService.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. package com.ruoyi.system.service;
  2. import com.ruoyi.common.core.domain.PageQuery;
  3. import com.ruoyi.common.core.domain.entity.SysRole;
  4. import com.ruoyi.common.core.page.TableDataInfo;
  5. import com.ruoyi.system.domain.SysUserRole;
  6. import java.util.List;
  7. import java.util.Set;
  8. /**
  9. * 角色业务层
  10. *
  11. * @author Lion Li
  12. */
  13. public interface ISysRoleService {
  14. TableDataInfo<SysRole> selectPageRoleList(SysRole role, PageQuery pageQuery);
  15. /**
  16. * 根据条件分页查询角色数据
  17. *
  18. * @param role 角色信息
  19. * @return 角色数据集合信息
  20. */
  21. List<SysRole> selectRoleList(SysRole role);
  22. /**
  23. * 根据用户ID查询角色列表
  24. *
  25. * @param userId 用户ID
  26. * @return 角色列表
  27. */
  28. List<SysRole> selectRolesByUserId(Long userId);
  29. /**
  30. * 根据用户ID查询角色权限
  31. *
  32. * @param userId 用户ID
  33. * @return 权限列表
  34. */
  35. Set<String> selectRolePermissionByUserId(Long userId);
  36. /**
  37. * 查询所有角色
  38. *
  39. * @return 角色列表
  40. */
  41. List<SysRole> selectRoleAll();
  42. /**
  43. * 根据用户ID获取角色选择框列表
  44. *
  45. * @param userId 用户ID
  46. * @return 选中角色ID列表
  47. */
  48. List<Long> selectRoleListByUserId(Long userId);
  49. /**
  50. * 通过角色ID查询角色
  51. *
  52. * @param roleId 角色ID
  53. * @return 角色对象信息
  54. */
  55. SysRole selectRoleById(Long roleId);
  56. /**
  57. * 校验角色名称是否唯一
  58. *
  59. * @param role 角色信息
  60. * @return 结果
  61. */
  62. boolean checkRoleNameUnique(SysRole role);
  63. /**
  64. * 校验角色权限是否唯一
  65. *
  66. * @param role 角色信息
  67. * @return 结果
  68. */
  69. boolean checkRoleKeyUnique(SysRole role);
  70. /**
  71. * 校验角色是否允许操作
  72. *
  73. * @param role 角色信息
  74. */
  75. void checkRoleAllowed(SysRole role);
  76. /**
  77. * 校验角色是否有数据权限
  78. *
  79. * @param roleId 角色id
  80. */
  81. void checkRoleDataScope(Long roleId);
  82. /**
  83. * 通过角色ID查询角色使用数量
  84. *
  85. * @param roleId 角色ID
  86. * @return 结果
  87. */
  88. long countUserRoleByRoleId(Long roleId);
  89. /**
  90. * 新增保存角色信息
  91. *
  92. * @param role 角色信息
  93. * @return 结果
  94. */
  95. int insertRole(SysRole role);
  96. /**
  97. * 修改保存角色信息
  98. *
  99. * @param role 角色信息
  100. * @return 结果
  101. */
  102. int updateRole(SysRole role);
  103. /**
  104. * 修改角色状态
  105. *
  106. * @param role 角色信息
  107. * @return 结果
  108. */
  109. int updateRoleStatus(SysRole role);
  110. /**
  111. * 修改数据权限信息
  112. *
  113. * @param role 角色信息
  114. * @return 结果
  115. */
  116. int authDataScope(SysRole role);
  117. /**
  118. * 通过角色ID删除角色
  119. *
  120. * @param roleId 角色ID
  121. * @return 结果
  122. */
  123. int deleteRoleById(Long roleId);
  124. /**
  125. * 批量删除角色信息
  126. *
  127. * @param roleIds 需要删除的角色ID
  128. * @return 结果
  129. */
  130. int deleteRoleByIds(Long[] roleIds);
  131. /**
  132. * 取消授权用户角色
  133. *
  134. * @param userRole 用户和角色关联信息
  135. * @return 结果
  136. */
  137. int deleteAuthUser(SysUserRole userRole);
  138. /**
  139. * 批量取消授权用户角色
  140. *
  141. * @param roleId 角色ID
  142. * @param userIds 需要取消授权的用户数据ID
  143. * @return 结果
  144. */
  145. int deleteAuthUsers(Long roleId, Long[] userIds);
  146. /**
  147. * 批量选择授权用户角色
  148. *
  149. * @param roleId 角色ID
  150. * @param userIds 需要删除的用户数据ID
  151. * @return 结果
  152. */
  153. int insertAuthUsers(Long roleId, Long[] userIds);
  154. void cleanOnlineUserByRole(Long roleId);
  155. }