ISysRoleService.java 3.7 KB

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