From 994e4741553e4dd953b19a31685e556dd0374ea1 Mon Sep 17 00:00:00 2001 From: shaw Date: Thu, 16 Oct 2025 14:48:15 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E7=BC=96=E8=BE=91apikey=E6=A8=A1=E5=BC=8F=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E9=80=89=E6=8B=A9oai=E8=B4=A6=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apikeys/BatchEditApiKeyModal.vue | 48 +++++++++++++++++-- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/web/admin-spa/src/components/apikeys/BatchEditApiKeyModal.vue b/web/admin-spa/src/components/apikeys/BatchEditApiKeyModal.vue index 07e22954..1d9635b0 100644 --- a/web/admin-spa/src/components/apikeys/BatchEditApiKeyModal.vue +++ b/web/admin-spa/src/components/apikeys/BatchEditApiKeyModal.vue @@ -462,6 +462,7 @@ const props = defineProps({ claude: [], gemini: [], openai: [], + openaiResponses: [], bedrock: [], droid: [], claudeGroups: [], @@ -581,6 +582,7 @@ const refreshAccounts = async () => { claudeConsoleData, geminiData, openaiData, + openaiResponsesData, bedrockData, droidData, groupsData @@ -589,6 +591,7 @@ const refreshAccounts = async () => { apiClient.get('/admin/claude-console-accounts'), apiClient.get('/admin/gemini-accounts'), apiClient.get('/admin/openai-accounts'), + apiClient.get('/admin/openai-responses-accounts'), apiClient.get('/admin/bedrock-accounts'), apiClient.get('/admin/droid-accounts'), apiClient.get('/admin/account-groups') @@ -626,13 +629,30 @@ const refreshAccounts = async () => { })) } + const openaiAccounts = [] + if (openaiData.success) { - localAccounts.value.openai = (openaiData.data || []).map((account) => ({ - ...account, - isDedicated: account.accountType === 'dedicated' - })) + ;(openaiData.data || []).forEach((account) => { + openaiAccounts.push({ + ...account, + platform: 'openai', + isDedicated: account.accountType === 'dedicated' + }) + }) } + if (openaiResponsesData.success) { + ;(openaiResponsesData.data || []).forEach((account) => { + openaiAccounts.push({ + ...account, + platform: 'openai-responses', + isDedicated: account.accountType === 'dedicated' + }) + }) + } + + localAccounts.value.openai = openaiAccounts + if (bedrockData.success) { localAccounts.value.bedrock = (bedrockData.data || []).map((account) => ({ ...account, @@ -799,10 +819,28 @@ onMounted(async () => { // 初始化账号数据 if (props.accounts) { + const openaiAccounts = [] + if (props.accounts.openai) { + props.accounts.openai.forEach((account) => { + openaiAccounts.push({ + ...account, + platform: 'openai' + }) + }) + } + if (props.accounts.openaiResponses) { + props.accounts.openaiResponses.forEach((account) => { + openaiAccounts.push({ + ...account, + platform: 'openai-responses' + }) + }) + } + localAccounts.value = { claude: props.accounts.claude || [], gemini: props.accounts.gemini || [], - openai: props.accounts.openai || [], + openai: openaiAccounts, bedrock: props.accounts.bedrock || [], droid: props.accounts.droid || [], claudeGroups: props.accounts.claudeGroups || [],