From cf046ad9a4e8bfd733f041f7893c76162b83222b Mon Sep 17 00:00:00 2001 From: Zyy Date: Sat, 22 Aug 2026 09:25:05 +0800 Subject: [PATCH] fix(admin): close quota reset modal on success Co-authored-by: Codex --- .../src/views/accounts/components/AccountResetCredits.vue | 7 ++++++- .../views/accounts/composables/useAccountResetCredits.ts | 8 +++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/frontend/src/views/accounts/components/AccountResetCredits.vue b/frontend/src/views/accounts/components/AccountResetCredits.vue index a9a1e2ba8..ba7137e89 100644 --- a/frontend/src/views/accounts/components/AccountResetCredits.vue +++ b/frontend/src/views/accounts/components/AccountResetCredits.vue @@ -96,6 +96,11 @@ function creditOptionClasses(creditId: string) { function creditOptionLabel(credit: { title: string | null, expiresAt: string | null }) { return `${credit.title || 'Codex 主动重置卡'},${expiryLabel(credit.expiresAt)}` } + +async function handleConfirmConsume() { + if (await confirmConsume()) + panelOpen.value = false +} diff --git a/frontend/src/views/accounts/composables/useAccountResetCredits.ts b/frontend/src/views/accounts/composables/useAccountResetCredits.ts index 1f00f701d..19eac54c9 100644 --- a/frontend/src/views/accounts/composables/useAccountResetCredits.ts +++ b/frontend/src/views/accounts/composables/useAccountResetCredits.ts @@ -160,10 +160,10 @@ export function useAccountResetCredits(options: { pendingOperation.value = null } - async function confirmConsume() { + async function confirmConsume(): Promise { const operation = pendingOperation.value if (!operation || consuming.value) - return + return false consuming.value = true try { @@ -179,7 +179,7 @@ export function useAccountResetCredits(options: { if (!confirmed) { toast.error(resetResultMessage(result.code)) await loadCredits() - return + return false } const successMessage = result.code === 'already_redeemed' @@ -199,6 +199,7 @@ export function useAccountResetCredits(options: { { duration: 5000 }, ) } + return true } catch (error: unknown) { showConfirm.value = false @@ -214,6 +215,7 @@ export function useAccountResetCredits(options: { toast.error(errorMessage(error, '额度重置失败')) await loadCredits() } + return false } finally { consuming.value = false