优化Navbar管理员判断:优先检查roleIds,添加调试日志
This commit is contained in:
parent
94a4e79a31
commit
9197c06cc3
@ -126,7 +126,18 @@ const userInfo = computed(() => ({
|
||||
|
||||
// 判断是否是管理员
|
||||
const isAdmin = computed(() => {
|
||||
// 优先从userInfo.roles获取角色列表
|
||||
// 优先检查roleIds(最可靠)
|
||||
if (authStore.userInfo?.roleIds) {
|
||||
const roleIds = authStore.userInfo.roleIds.split(',').map((id: string) => id.trim())
|
||||
// roleId 2 = ADMIN, 1 = SUPER_ADMIN
|
||||
const isAdminByRoleIds = roleIds.includes('2') || roleIds.includes('1')
|
||||
if (isAdminByRoleIds) {
|
||||
console.log('[Navbar] 通过roleIds判断为管理员:', roleIds)
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
// 其次从userInfo.roles获取角色列表
|
||||
const roles = authStore.userInfo?.roles || authStore.userRoles || []
|
||||
|
||||
// 检查是否包含管理员角色(ADMIN 或 SUPER_ADMIN)
|
||||
@ -135,14 +146,14 @@ const isAdmin = computed(() => {
|
||||
return roleCode === 'ADMIN' || roleCode === 'SUPER_ADMIN'
|
||||
})
|
||||
|
||||
// 如果通过roles没找到,再检查roleIds(兼容旧版)
|
||||
if (!hasAdminRole && authStore.userInfo?.roleIds) {
|
||||
const roleIds = authStore.userInfo.roleIds.split(',').map((id: string) => id.trim())
|
||||
// roleId 2 = ADMIN, 1 = SUPER_ADMIN
|
||||
return roleIds.includes('2') || roleIds.includes('1')
|
||||
if (hasAdminRole) {
|
||||
console.log('[Navbar] 通过roles判断为管理员:', roles)
|
||||
return true
|
||||
}
|
||||
|
||||
return hasAdminRole
|
||||
// 调试日志
|
||||
console.log('[Navbar] 不是管理员 - roleIds:', authStore.userInfo?.roleIds, 'roles:', roles)
|
||||
return false
|
||||
})
|
||||
|
||||
// 判断菜单是否激活
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user