From 7e7009311757d1770f5b58f5f67052de8e1d3094 Mon Sep 17 00:00:00 2001 From: IanShaw027 <131567472+IanShaw027@users.noreply.github.com> Date: Thu, 1 Jan 2026 00:40:51 +0800 Subject: [PATCH] =?UTF-8?q?refactor(gemini):=20=E7=AE=80=E5=8C=96=E7=94=A8?= =?UTF-8?q?=E9=87=8F=E7=AA=97=E5=8F=A3=E6=98=BE=E7=A4=BA=E4=B8=BA=E7=AD=89?= =?UTF-8?q?=E7=BA=A7+=E9=99=90=E6=B5=81=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 前端:移除进度条和限额文本,只显示 tier badge + 限流状态/倒计时 - 后端:token provider 自动保存 tier_id 到账号凭证 - 优化:tier 名称简化为 Free/Pro/Ultra - 显示格式:[Free] 未限流 / [Pro] 限流 2m 35s --- .../internal/service/gemini_token_provider.go | 1 + .../components/account/AccountQuotaInfo.vue | 83 +++++-------------- 2 files changed, 21 insertions(+), 63 deletions(-) diff --git a/backend/internal/service/gemini_token_provider.go b/backend/internal/service/gemini_token_provider.go index 5f369de5..0257d19f 100644 --- a/backend/internal/service/gemini_token_provider.go +++ b/backend/internal/service/gemini_token_provider.go @@ -118,6 +118,7 @@ func (p *GeminiTokenProvider) GetAccessToken(ctx context.Context, account *Accou return accessToken, nil } detected = strings.TrimSpace(detected) + tierID = strings.TrimSpace(tierID) if detected != "" { if account.Credentials == nil { account.Credentials = make(map[string]any) diff --git a/frontend/src/components/account/AccountQuotaInfo.vue b/frontend/src/components/account/AccountQuotaInfo.vue index 44fe1b41..52f1bae7 100644 --- a/frontend/src/components/account/AccountQuotaInfo.vue +++ b/frontend/src/components/account/AccountQuotaInfo.vue @@ -5,53 +5,24 @@ {{ tierLabel }} - - {{ quotaText }} - - -
-
-
-
- - - {{ isRateLimited ? '100%' : '0%' }} - - - - - ⚠️ {{ resetCountdown }} - - - - -
+ + + 未限流 + + + 限流 {{ resetCountdown }} + @@ -85,8 +56,8 @@ const tierLabel = computed(() => { const creds = props.account.credentials as GeminiCredentials | undefined const tierMap: Record = { LEGACY: 'Free', - PRO: 'Standard', - ULTRA: 'Enterprise' + PRO: 'Pro', + ULTRA: 'Ultra' } return tierMap[creds?.tier_id || ''] || 'Unknown' } @@ -110,20 +81,6 @@ const tierBadgeClass = computed(() => { ) }) -// 限额文本 -const quotaText = computed(() => { - if (isCodeAssist.value) { - const creds = props.account.credentials as GeminiCredentials | undefined - const limitMap: Record = { - LEGACY: '1000/day, 60/min', - PRO: '1500/day, 120/min', - ULTRA: '5000/day, 300/min' - } - return limitMap[creds?.tier_id || ''] || '-' - } - return 'RPM/RPD limits' -}) - // 是否限流 const isRateLimited = computed(() => { if (!props.account.rate_limit_reset_at) return false