diff --git a/frontend/src/components/account/AccountUsageCell.vue b/frontend/src/components/account/AccountUsageCell.vue
index 471ae7a0..09236edd 100644
--- a/frontend/src/components/account/AccountUsageCell.vue
+++ b/frontend/src/components/account/AccountUsageCell.vue
@@ -290,36 +290,12 @@
color="amber"
/>
-
-
- ⚡
- {{ t('admin.accounts.aiCreditsBalance') }}
- {{ credit.label }}
- {{ credit.amount }}
-
- min {{ credit.minimumBalance }}
-
-
+
+ 💳 {{ t('admin.accounts.aiCreditsBalance') }}: {{ aiCreditsDisplay }}
-
-
- ⚡
- {{ t('admin.accounts.aiCreditsBalance') }}
- {{ credit.label }}
- {{ credit.amount }}
-
- min {{ credit.minimumBalance }}
-
-
+
+ 💳 {{ t('admin.accounts.aiCreditsBalance') }}: {{ aiCreditsDisplay }}
-
@@ -612,26 +588,14 @@ const antigravityClaudeUsageFromAPI = computed(() =>
])
)
-const antigravityAICreditsDisplay = computed(() => {
+const aiCreditsDisplay = computed(() => {
const credits = usageInfo.value?.ai_credits
- if (!credits || credits.length === 0) return []
- return credits
- .filter((credit) => (credit.amount ?? 0) > 0)
- .map((credit) => ({
- creditType: credit.credit_type || 'UNKNOWN',
- label: formatAICreditTypeLabel(credit.credit_type || 'UNKNOWN'),
- amount: Number(credit.amount ?? 0).toFixed(0),
- minimumBalance: typeof credit.minimum_balance === 'number'
- ? Number(credit.minimum_balance).toFixed(0)
- : null,
- }))
+ if (!credits || credits.length === 0) return null
+ const total = credits.reduce((sum, credit) => sum + (credit.amount ?? 0), 0)
+ if (total <= 0) return null
+ return total.toFixed(0)
})
-function formatAICreditTypeLabel(creditType: string): string {
- if (creditType === 'GOOGLE_ONE_AI') return 'Google One AI'
- return creditType
-}
-
// Antigravity 账户类型(从 load_code_assist 响应中提取)
const antigravityTier = computed(() => {
const extra = props.account.extra as Record
| undefined
diff --git a/frontend/src/components/account/__tests__/AccountUsageCell.spec.ts b/frontend/src/components/account/__tests__/AccountUsageCell.spec.ts
index 305750be..7c83f5b3 100644
--- a/frontend/src/components/account/__tests__/AccountUsageCell.spec.ts
+++ b/frontend/src/components/account/__tests__/AccountUsageCell.spec.ts
@@ -133,9 +133,7 @@ describe('AccountUsageCell', () => {
await flushPromises()
expect(wrapper.text()).toContain('admin.accounts.aiCreditsBalance')
- expect(wrapper.text()).toContain('Google One AI')
expect(wrapper.text()).toContain('25')
- expect(wrapper.text()).toContain('min 5')
})