From e57b98f3432e7c068bcc36ba5a877b0ab1962202 Mon Sep 17 00:00:00 2001 From: shaw Date: Thu, 7 Aug 2025 00:43:09 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20API=20Key=20?= =?UTF-8?q?=E5=88=9B=E5=BB=BA=E5=92=8C=E7=BC=96=E8=BE=91=E6=97=B6=E8=B4=A6?= =?UTF-8?q?=E6=88=B7=E7=BB=91=E5=AE=9A=E5=86=B2=E7=AA=81=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建 API Key 时确保 OAuth 和 Console 账户不会同时设置 - 编辑 API Key 时正确清空未使用的账户类型字段 - 使用共享池时清空所有账户绑定 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- web/admin-spa/src/components/apikeys/CreateApiKeyModal.vue | 6 +++++- web/admin-spa/src/components/apikeys/EditApiKeyModal.vue | 5 +++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/web/admin-spa/src/components/apikeys/CreateApiKeyModal.vue b/web/admin-spa/src/components/apikeys/CreateApiKeyModal.vue index 2020f74a..5bfeda65 100644 --- a/web/admin-spa/src/components/apikeys/CreateApiKeyModal.vue +++ b/web/admin-spa/src/components/apikeys/CreateApiKeyModal.vue @@ -878,9 +878,13 @@ const createApiKey = async () => { if (form.claudeAccountId.startsWith('console:')) { // Claude Console账户 baseData.claudeConsoleAccountId = form.claudeAccountId.substring(8); + // 确保不会同时设置OAuth账号 + delete baseData.claudeAccountId; } else { - // Claude OAuth账户 + // Claude OAuth账户或分组 baseData.claudeAccountId = form.claudeAccountId; + // 确保不会同时设置Console账号 + delete baseData.claudeConsoleAccountId; } } diff --git a/web/admin-spa/src/components/apikeys/EditApiKeyModal.vue b/web/admin-spa/src/components/apikeys/EditApiKeyModal.vue index ff8cfbe5..7051b06d 100644 --- a/web/admin-spa/src/components/apikeys/EditApiKeyModal.vue +++ b/web/admin-spa/src/components/apikeys/EditApiKeyModal.vue @@ -627,15 +627,20 @@ const updateApiKey = async () => { if (form.claudeAccountId.startsWith('console:')) { // Claude Console账户 data.claudeConsoleAccountId = form.claudeAccountId.substring(8); + data.claudeAccountId = null; // 清空OAuth账号 } else if (!form.claudeAccountId.startsWith('group:')) { // Claude OAuth账户(非分组) data.claudeAccountId = form.claudeAccountId; + data.claudeConsoleAccountId = null; // 清空Console账号 } else { // 分组 data.claudeAccountId = form.claudeAccountId; + data.claudeConsoleAccountId = null; // 清空Console账号 } } else { + // 使用共享池,清空所有绑定 data.claudeAccountId = null; + data.claudeConsoleAccountId = null; } // Gemini账户绑定