From 665fa088f55f366866b69216e8ac290f1790a2af Mon Sep 17 00:00:00 2001 From: skycurtain Date: Fri, 9 Oct 2026 13:42:14 +0800 Subject: [PATCH] =?UTF-8?q?feat(web):=20=E7=AE=A1=E7=90=86=E7=AB=AF?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=E9=A1=BA=E5=BA=8F=E4=B8=8E=E6=80=BB=E8=A7=88?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=E5=88=97=E6=9F=A5=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/src/layouts/admin-layout.vue | 4 ++-- apps/web/src/views/admin/overview-view.vue | 14 ++++++++++++-- docs/design/交互设计-总览与共性.md | 6 ++++-- docs/design/交互设计-调用日志.md | 2 +- 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/apps/web/src/layouts/admin-layout.vue b/apps/web/src/layouts/admin-layout.vue index a5e403e..1462617 100644 --- a/apps/web/src/layouts/admin-layout.vue +++ b/apps/web/src/layouts/admin-layout.vue @@ -43,10 +43,10 @@ const username = computed( /** 收起时仅剩图标——每项必须带 icon(交互共性侧边栏六项) */ const items: MenuItemType[] = [ { key: "/admin/overview", icon: DashboardOutlined, label: "总览" }, - { key: "/admin/logs", icon: FileTextOutlined, label: "调用日志" }, + { key: "/admin/members", icon: TeamOutlined, label: "成员管理" }, { key: "/admin/keys", icon: KeyOutlined, label: "Key 管理" }, { key: "/admin/payments", icon: AccountBookOutlined, label: "支付记录" }, - { key: "/admin/members", icon: TeamOutlined, label: "成员管理" }, + { key: "/admin/logs", icon: FileTextOutlined, label: "调用日志" }, { key: "/admin/audit", icon: AuditOutlined, label: "审计日志" }, { key: "/admin/settings", icon: SettingOutlined, label: "账号设置" }, ]; diff --git a/apps/web/src/views/admin/overview-view.vue b/apps/web/src/views/admin/overview-view.vue index 67a8adf..3c19756 100644 --- a/apps/web/src/views/admin/overview-view.vue +++ b/apps/web/src/views/admin/overview-view.vue @@ -87,7 +87,9 @@ function onMemberLogs(memberId: number | null) { void router.push({ path: "/admin/logs", query: { - ...(memberId == null ? { member_id: "unassigned" } : { member_id: String(memberId) }), + ...(memberId == null + ? { member_id: "unassigned" } + : { member_id: String(memberId) }), ...range.value, }, }); @@ -144,6 +146,7 @@ const memberColumns = [ ), key: "data_cutoff", }, + { title: "操作", key: "actions", width: 100 }, ]; const keyColumns = [ @@ -233,7 +236,6 @@ const keyColumns = [ {{ record.member_name ?? "未归属" }} - 查调用 diff --git a/docs/design/交互设计-总览与共性.md b/docs/design/交互设计-总览与共性.md index 058c464..3c0da54 100644 --- a/docs/design/交互设计-总览与共性.md +++ b/docs/design/交互设计-总览与共性.md @@ -28,13 +28,15 @@ | 菜单 | 页面 | 职责一句话 | |------|------|-----------| | 总览 | 全员总览 | 健康与用量全景(首页,登录后落地) | -| 调用日志 | 请求明细 | 全池模型请求查询与筛选 | +| 成员管理 | 成员清单 | 开户、令牌、停用 | | Key 管理 | key 清单 | 登记、启停、归属 | | 支付记录 | 记录清单 | 订阅/充值登记、核对 | -| 成员管理 | 成员清单 | 开户、令牌、停用 | +| 调用日志 | 请求明细 | 全池模型请求查询与筛选 | | 审计日志 | 操作留痕 | 管理动作时间线 | | 账号设置 | 改密 | 会话体系基本配套 | +顺序逻辑:先看全景 → 立对象(成员 → Key → 支付)→ 查事实(调用日志)→ 系统(审计 / 账号)。 + - 侧边栏底部:当前用户名 + 登出(登出即删会话行 → 回登录页) - 成员视图**无侧边栏**(单页,页头导航) diff --git a/docs/design/交互设计-调用日志.md b/docs/design/交互设计-调用日志.md index 317a318..e3b8184 100644 --- a/docs/design/交互设计-调用日志.md +++ b/docs/design/交互设计-调用日志.md @@ -12,7 +12,7 @@ ## 1. 页面定位 -- 侧边栏新项「**调用日志**」(建议插在「总览」之后、「Key 管理」之前——先看现象再管对象) +- 侧边栏项「**调用日志**」(排在「支付记录」之后:对象链之后的事实查询) - 纯查询页:无登记、无启停、无删除;排查与核对入口 - 与成员视图的日志表**列语义同构**,但范围是**全池**且可筛错误行