From e1b6aff7e1857ff12b1cba9e0f6fcab2fbf12148 Mon Sep 17 00:00:00 2001 From: fengsilin Date: Fri, 8 May 2026 15:37:11 +0800 Subject: [PATCH] =?UTF-8?q?fix(log):=20=E5=AF=B9=E6=99=AE=E9=80=9A?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E9=9A=90=E8=97=8F=20Chat=20ID=20=E5=92=8C=20?= =?UTF-8?q?Upstream=20ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 后端 GetUserLogs 返回前清空 chat_id/upstream_id(omitempty 不输出), 前端搜索框和展开行详情加 isAdminUser 守卫。 Co-Authored-By: Claude Opus 4.7 --- controller/log.go | 4 +++ .../table/usage-logs/UsageLogsFilters.jsx | 36 +++++++++---------- web/src/hooks/usage-logs/useUsageLogsData.jsx | 4 +-- 3 files changed, 24 insertions(+), 20 deletions(-) diff --git a/controller/log.go b/controller/log.go index 9d9eb36..a750128 100644 --- a/controller/log.go +++ b/controller/log.go @@ -51,6 +51,10 @@ func GetUserLogs(c *gin.Context) { common.ApiError(c, err) return } + for i := range logs { + logs[i].ChatId = "" + logs[i].UpstreamId = "" + } pageInfo.SetTotal(int(total)) pageInfo.SetItems(logs) common.ApiSuccess(c, pageInfo) diff --git a/web/src/components/table/usage-logs/UsageLogsFilters.jsx b/web/src/components/table/usage-logs/UsageLogsFilters.jsx index f34858e..ae960eb 100644 --- a/web/src/components/table/usage-logs/UsageLogsFilters.jsx +++ b/web/src/components/table/usage-logs/UsageLogsFilters.jsx @@ -102,26 +102,26 @@ const LogsFilters = ({ size='small' /> - } - placeholder={t('Chat ID')} - showClear - pure - size='small' - /> - - } - placeholder={t('Upstream ID')} - showClear - pure - size='small' - /> - {isAdminUser && ( <> + } + placeholder={t('Chat ID')} + showClear + pure + size='small' + /> + + } + placeholder={t('Upstream ID')} + showClear + pure + size='small' + /> + } diff --git a/web/src/hooks/usage-logs/useUsageLogsData.jsx b/web/src/hooks/usage-logs/useUsageLogsData.jsx index 2fa8643..c8a9771 100644 --- a/web/src/hooks/usage-logs/useUsageLogsData.jsx +++ b/web/src/hooks/usage-logs/useUsageLogsData.jsx @@ -369,13 +369,13 @@ export const useLogsData = () => { value: logs[i].request_id, }); } - if (logs[i].chat_id) { + if (isAdminUser && logs[i].chat_id) { expandDataLocal.push({ key: t('Chat ID'), value: logs[i].chat_id, }); } - if (logs[i].upstream_id) { + if (isAdminUser && logs[i].upstream_id) { expandDataLocal.push({ key: t('Upstream ID'), value: logs[i].upstream_id,