feat: complete admin API integration

This commit is contained in:
2026-07-31 13:43:16 +08:00
parent bb09c7d6a0
commit d0f94d95d7
24 changed files with 1834 additions and 113 deletions
+8 -1
View File
@@ -9,6 +9,7 @@ import {
Menu,
} from '@lucide/vue'
import { PRODUCT_NAME } from '@chongchong/shared'
import { getApiErrorDetails } from '@/api/http'
import AdminSidebarMenu from '@/components/AdminSidebarMenu.vue'
import RolePreviewSwitcher from '@/components/RolePreviewSwitcher.vue'
import { resolvePreviewTarget } from '@/router/accessDecision'
@@ -169,7 +170,13 @@ async function handleLogout() {
loggingOut.value = true
access.reset()
unsaved.clear()
auth.logout()
try {
await auth.logout()
} catch (error) {
const details = getApiErrorDetails(error, '服务器会话撤销失败')
const trackingId = details.requestId || details.traceId
ElMessage.warning(`本地已退出,但服务器会话撤销失败${trackingId ? `(追踪标识:${trackingId})` : ''}`)
}
try {
await router.replace('/login')
} catch {