ISysMenuService.java 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. package com.ruoyi.system.service;
  2. import java.util.List;
  3. import java.util.Set;
  4. import com.ruoyi.common.core.domain.TreeSelect;
  5. import com.ruoyi.common.core.domain.entity.SysMenu;
  6. import com.ruoyi.system.domain.vo.RouterVo;
  7. /**
  8. * 菜单 业务层
  9. *
  10. * @author ruoyi
  11. */
  12. public interface ISysMenuService
  13. {
  14. /**
  15. * 根据用户查询系统菜单列表
  16. *
  17. * @param userId 用户ID
  18. * @return 菜单列表
  19. */
  20. public List<SysMenu> selectMenuList(Long userId);
  21. /**
  22. * 根据用户查询系统菜单列表
  23. *
  24. * @param menu 菜单信息
  25. * @param userId 用户ID
  26. * @return 菜单列表
  27. */
  28. public List<SysMenu> selectMenuList(SysMenu menu, Long userId);
  29. /**
  30. * 根据用户ID查询权限
  31. *
  32. * @param userId 用户ID
  33. * @return 权限列表
  34. */
  35. public Set<String> selectMenuPermsByUserId(Long userId);
  36. /**
  37. * 根据用户ID查询菜单树信息
  38. *
  39. * @param userId 用户ID
  40. * @return 菜单列表
  41. */
  42. public List<SysMenu> selectMenuTreeByUserId(Long userId);
  43. /**
  44. * 根据角色ID查询菜单树信息
  45. *
  46. * @param roleId 角色ID
  47. * @return 选中菜单列表
  48. */
  49. public List<Long> selectMenuListByRoleId(Long roleId);
  50. /**
  51. * 构建前端路由所需要的菜单
  52. *
  53. * @param menus 菜单列表
  54. * @return 路由列表
  55. */
  56. public List<RouterVo> buildMenus(List<SysMenu> menus);
  57. /**
  58. * 构建前端所需要树结构
  59. *
  60. * @param menus 菜单列表
  61. * @return 树结构列表
  62. */
  63. public List<SysMenu> buildMenuTree(List<SysMenu> menus);
  64. /**
  65. * 构建前端所需要下拉树结构
  66. *
  67. * @param menus 菜单列表
  68. * @return 下拉树结构列表
  69. */
  70. public List<TreeSelect> buildMenuTreeSelect(List<SysMenu> menus);
  71. /**
  72. * 根据菜单ID查询信息
  73. *
  74. * @param menuId 菜单ID
  75. * @return 菜单信息
  76. */
  77. public SysMenu selectMenuById(Long menuId);
  78. /**
  79. * 是否存在菜单子节点
  80. *
  81. * @param menuId 菜单ID
  82. * @return 结果 true 存在 false 不存在
  83. */
  84. public boolean hasChildByMenuId(Long menuId);
  85. /**
  86. * 查询菜单是否存在角色
  87. *
  88. * @param menuId 菜单ID
  89. * @return 结果 true 存在 false 不存在
  90. */
  91. public boolean checkMenuExistRole(Long menuId);
  92. /**
  93. * 新增保存菜单信息
  94. *
  95. * @param menu 菜单信息
  96. * @return 结果
  97. */
  98. public int insertMenu(SysMenu menu);
  99. /**
  100. * 修改保存菜单信息
  101. *
  102. * @param menu 菜单信息
  103. * @return 结果
  104. */
  105. public int updateMenu(SysMenu menu);
  106. /**
  107. * 删除菜单管理信息
  108. *
  109. * @param menuId 菜单ID
  110. * @return 结果
  111. */
  112. public int deleteMenuById(Long menuId);
  113. /**
  114. * 校验菜单名称是否唯一
  115. *
  116. * @param menu 菜单信息
  117. * @return 结果
  118. */
  119. public String checkMenuNameUnique(SysMenu menu);
  120. }