sys_permission.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # -*- coding: utf-8 -*-
  2. from typing import List, Set
  3. from ruoyi_common.domain.entity import SysUser
  4. from ruoyi_common.utils import security_util as SecurityUtil
  5. from ruoyi_system.service import SysMenuService,SysRoleService
  6. class SysPermissionService:
  7. @classmethod
  8. def get_role_permission(cls, user:SysUser) -> List[str]:
  9. """
  10. 获取用户角色权限
  11. Args:
  12. user (SysUser): 用户信息
  13. Returns:
  14. List[str]: 角色权限列表
  15. """
  16. if SecurityUtil.is_admin(user.user_id):
  17. roles = ["admin"]
  18. else:
  19. roles = SysRoleService.select_role_permission_by_user_id(user.user_id)
  20. return roles
  21. @classmethod
  22. def get_menu_permission(cls, user:SysUser) -> List[str]:
  23. """
  24. 获取用户菜单权限
  25. Args:
  26. user (SysUser): 用户信息
  27. Returns:
  28. List[str]: 菜单权限列表
  29. """
  30. if SecurityUtil.is_admin(user.user_id):
  31. perms = ["*:*:*"]
  32. else:
  33. perms = SysMenuService.select_menu_perms_by_user_id(user.user_id)
  34. return perms