SysMenuService.java 2.5 KB

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