front/src/utils/rbac-permission.ts
2025-12-27 16:29:05 +08:00

45 lines
1.0 KiB
TypeScript

import { useRbacUserStore } from '@/store/modules/rbac-user'
/**
* 检查是否有权限
*/
export function hasPermission(permission: string): boolean {
// 临时放开菜单权限校验,直接按照路由配置展示
// TODO: 恢复时改回 userStore.permissions.includes(permission)
return true
}
/**
* 检查是否有任一权限
*/
export function hasAnyPermission(permissions: string[]): boolean {
// 临时放开
return true
}
/**
* 检查是否有所有权限
*/
export function hasAllPermissions(permissions: string[]): boolean {
// 临时放开
return true
}
/**
* 检查是否有角色
*/
export function hasRole(roleCode: string): boolean {
const userStore = useRbacUserStore()
return userStore.userInfo?.roles?.some(r => r.code === roleCode) || false
}
/**
* 检查是否有任一角色
*/
export function hasAnyRole(roleCodes: string[]): boolean {
const userStore = useRbacUserStore()
return roleCodes.some(code =>
userStore.userInfo?.roles?.some(r => r.code === code)
) || false
}