SysMenuMapper.java 2.0 KB

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