SysMenuMapper.java 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package com.ruoyi.system.mapper;
  2. import com.baomidou.mybatisplus.core.conditions.Wrapper;
  3. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4. import com.baomidou.mybatisplus.core.toolkit.Constants;
  5. import com.ruoyi.common.constant.UserConstants;
  6. import com.ruoyi.system.domain.SysMenu;
  7. import com.ruoyi.common.core.mapper.BaseMapperPlus;
  8. import org.apache.ibatis.annotations.Param;
  9. import java.util.List;
  10. /**
  11. * 菜单表 数据层
  12. *
  13. * @author Lion Li
  14. */
  15. public interface SysMenuMapper extends BaseMapperPlus<SysMenuMapper, SysMenu, SysMenu> {
  16. /**
  17. * 根据用户所有权限
  18. *
  19. * @return 权限列表
  20. */
  21. List<String> selectMenuPerms();
  22. /**
  23. * 根据用户查询系统菜单列表
  24. *
  25. * @param queryWrapper 查询条件
  26. * @return 菜单列表
  27. */
  28. List<SysMenu> selectMenuListByUserId(@Param(Constants.WRAPPER) Wrapper<SysMenu> queryWrapper);
  29. /**
  30. * 根据用户ID查询权限
  31. *
  32. * @param userId 用户ID
  33. * @return 权限列表
  34. */
  35. List<String> selectMenuPermsByUserId(Long userId);
  36. /**
  37. * 根据角色ID查询权限
  38. *
  39. * @param roleId 角色ID
  40. * @return 权限列表
  41. */
  42. List<String> selectMenuPermsByRoleId(Long roleId);
  43. /**
  44. * 根据用户ID查询菜单
  45. *
  46. * @return 菜单列表
  47. */
  48. default List<SysMenu> selectMenuTreeAll() {
  49. LambdaQueryWrapper<SysMenu> lqw = new LambdaQueryWrapper<SysMenu>()
  50. .in(SysMenu::getMenuType, UserConstants.TYPE_DIR, UserConstants.TYPE_MENU)
  51. .eq(SysMenu::getStatus, UserConstants.MENU_NORMAL)
  52. .orderByAsc(SysMenu::getParentId)
  53. .orderByAsc(SysMenu::getOrderNum);
  54. return this.selectList(lqw);
  55. }
  56. /**
  57. * 根据用户ID查询菜单
  58. *
  59. * @param userId 用户ID
  60. * @return 菜单列表
  61. */
  62. List<SysMenu> selectMenuTreeByUserId(Long userId);
  63. /**
  64. * 根据角色ID查询菜单树信息
  65. *
  66. * @param roleId 角色ID
  67. * @param menuCheckStrictly 菜单树选择项是否关联显示
  68. * @return 选中菜单列表
  69. */
  70. List<Long> selectMenuListByRoleId(@Param("roleId") Long roleId, @Param("menuCheckStrictly") boolean menuCheckStrictly);
  71. }