From d1ef004100b7457b650b57352b631a3a00fd61e5 Mon Sep 17 00:00:00 2001 From: 2910410219 <2910410219@qq.com> Date: Sat, 9 May 2026 18:23:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E5=85=A8=E5=B1=80=E7=9B=91?= =?UTF-8?q?=E5=90=AC=20code=E9=85=8D=E7=BD=AE=EF=BC=8C=E6=94=B9=E5=8F=98ta?= =?UTF-8?q?b=E5=88=87=E6=8D=A2=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/request.ts | 26 ++++++++++++++++++++--- src/views/digitalHuman/creation/index.vue | 10 +++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/src/utils/request.ts b/src/utils/request.ts index 68c72ca..ae304de 100644 --- a/src/utils/request.ts +++ b/src/utils/request.ts @@ -189,9 +189,29 @@ const responseInterceptor = (response: AxiosResponse) => { return Promise.reject(new Error('模块未开通')); } - // 业务失败默认走全局提示;如果页面声明自己处理,这里只抛错不弹窗。 - if (code !== undefined && code !== 0 && code !== 200 && code !== 403) { - const errorMsg = message || `请求失败(${code})`; + // 定义已知的正常 code + const knownSuccessCodes = [0, 200]; + // 定义已知的业务错误 code(这些 code 会显示后端返回的 message) + const knownErrorCodes = [401, 402, 403, 404, 429, 500, 502, 503]; + + // 业务成功,直接返回 + if (code !== undefined && knownSuccessCodes.includes(code)) { + return res; + } + + // 业务失败处理 + if (code !== undefined && !knownSuccessCodes.includes(code)) { + let errorMsg: string; + + // 已知的业务错误 code,使用后端返回的 message + if (knownErrorCodes.includes(code)) { + errorMsg = message || `请求失败(${code})`; + } else { + // 未知的 code,统一提示后端异常 + errorMsg = '后端异常,请联系管理员'; + console.error(`未知的业务错误码: ${code}, 原始消息: ${message}`); + } + showErrorMessage(errorMsg, config); return Promise.reject(new Error(errorMsg)); } diff --git a/src/views/digitalHuman/creation/index.vue b/src/views/digitalHuman/creation/index.vue index 2938987..fb1ffad 100644 --- a/src/views/digitalHuman/creation/index.vue +++ b/src/views/digitalHuman/creation/index.vue @@ -2044,6 +2044,16 @@ const loadWorkflowFromDsl = (dsl: any) => { ElMessage.error('工作流加载失败'); } }; +// 监听创作模式变化,自动切换左侧 Tab +watch(isCreationMode, (newValue) => { + if (newValue) { + // 进入创作模式,切换到"工作空间"Tab + leftPanelTab.value = 'workspace'; + } else { + // 退出创作模式,切换到"当前选中"Tab + leftPanelTab.value = 'selected'; + } +}); onMounted(async () => { await getList(); await nextTick();