package com.ruoyi.common.security.auth; import com.ruoyi.common.security.annotation.RequiresPermissions; import com.ruoyi.common.security.annotation.RequiresRoles; /** * Token 权限验证工具类 * * @author ruoyi */ public class AuthUtil { /** * 底层的 AuthLogic 对象 */ public static AuthLogic authLogic = new AuthLogic(); /** * 检验当前会话是否已经登录,如未登录,则抛出异常 */ public static void checkLogin() { authLogic.checkLogin(); } /** * 当前账号是否含有指定角色标识, 返回true或false * * @param role 角色标识 * @return 是否含有指定角色标识 */ public static boolean hasRole(String role) { return authLogic.hasRole(role); } /** * 当前账号是否含有指定角色标识, 如果验证未通过,则抛出异常: NotRoleException * * @param role 角色标识 */ public static void checkRole(String role) { authLogic.checkRole(role); } /** * 根据注解传入参数鉴权, 如果验证未通过,则抛出异常: NotRoleException * * @param requiresRoles 角色权限注解 */ public static void checkRole(RequiresRoles requiresRoles) { authLogic.checkRole(requiresRoles); } /** * 当前账号是否含有指定角色标识 [指定多个,必须全部验证通过] * * @param roles 角色标识数组 */ public static void checkRoleAnd(String... roles) { authLogic.checkRoleAnd(roles); } /** * 当前账号是否含有指定角色标识 [指定多个,只要其一验证通过即可] * * @param roles 角色标识数组 */ public static void checkRoleOr(String... roles) { authLogic.checkRoleOr(roles); } /** * 当前账号是否含有指定权限, 返回true或false * * @param permission 权限码 * @return 是否含有指定权限 */ public static boolean hasPermi(String permission) { return authLogic.hasPermi(permission); } /** * 当前账号是否含有指定权限, 如果验证未通过,则抛出异常: NotPermissionException * * @param permission 权限码 */ public static void checkPermi(String permission) { authLogic.checkPermi(permission); } /** * 根据注解传入参数鉴权, 如果验证未通过,则抛出异常: NotPermissionException * * @param requiresPermissions 权限注解 */ public static void checkPermi(RequiresPermissions requiresPermissions) { authLogic.checkPermi(requiresPermissions); } /** * 当前账号是否含有指定权限 [指定多个,必须全部验证通过] * * @param permissions 权限码数组 */ public static void checkPermiAnd(String... permissions) { authLogic.checkPermiAnd(permissions); } /** * 当前账号是否含有指定权限 [指定多个,只要其一验证通过即可] * * @param permissions 权限码数组 */ public static void checkPermiOr(String... permissions) { authLogic.checkPermiOr(permissions); } }