diff --git a/src/shared/auth/roles.ts b/src/shared/auth/roles.ts index 2b26b7b..2452bb5 100644 --- a/src/shared/auth/roles.ts +++ b/src/shared/auth/roles.ts @@ -28,8 +28,9 @@ export function canManageFeedback(roles: readonly string[] | null | undefined): return roles.some(r => FEEDBACK_ADMIN_ROLES.includes(r) || FULL_ACCESS_ROLES.includes(r)); } -/** 用户是否可访问能源管理模块。BI-LEADER-ENERGY 或全量权限角色可访问。 */ +/** 用户是否可访问能源管理模块。仅 BI-LEADER-ENERGY 或「所有权限」可访问。 */ +const ENERGY_FULL_ACCESS = '所有权限'; export function canAccessEnergy(roles: readonly string[] | null | undefined): boolean { if (!roles || roles.length === 0) return false; - return roles.some(r => ENERGY_ACCESS_ROLES.includes(r) || FULL_ACCESS_ROLES.includes(r)); + return roles.some(r => ENERGY_ACCESS_ROLES.includes(r) || r === ENERGY_FULL_ACCESS); }