From cb672b621a9bd956e50febdebe5715f71e567eff Mon Sep 17 00:00:00 2001 From: qubiaobiao <3294694717@qq.com> Date: Tue, 29 Sep 2026 09:40:51 +0800 Subject: [PATCH] =?UTF-8?q?feat(admin):=20=E5=AF=BC=E5=85=A5=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E6=8F=90=E7=A4=BA=E5=8C=BA=E5=88=86=E3=80=8C=E5=BF=BD?= =?UTF-8?q?=E7=95=A5=E9=9D=9E=E5=8F=82=E8=B5=9B=E9=80=89=E6=89=8B=E3=80=8D?= =?UTF-8?q?=E6=9D=A1=E6=95=B0=EF=BC=88R32=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - onExcelImport 读取 result.ignored 并在成功提示中单列展示 - 控制台 console.info 输出 ignoredBy 身份明细(报名人/指导教师/领队) - 仅账号导入这一处;客观题导入提示未动 --- src/views/Admin.vue | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/views/Admin.vue b/src/views/Admin.vue index 7cd6ef4..077deb5 100644 --- a/src/views/Admin.vue +++ b/src/views/Admin.vue @@ -1737,12 +1737,17 @@ async function onExcelImport(file) { const result = await adminApi.importExcel(formData) const imported = (result && result.imported) || 0 const skipped = (result && result.skipped) || 0 + // 非参赛选手行(报名人/指导教师/领队)按业务规则主动忽略,与「跳过」分开计数并展示 + const ignored = (result && result.ignored) || 0 + if (ignored && result.ignoredBy) { + console.info('按身份忽略明细:', result.ignoredBy) + } if (imported === 0 && skipped > 0) { const detail = ((result && result.errors) || []).slice(0, 3) .map(e => `第${e.row}行:${e.message}`).join(';') ElMessage.warning(`导入完成但 0 条成功、跳过 ${skipped} 条。原因:${detail || '见控制台'}`) } else { - ElMessage.success(`Excel 导入成功:成功 ${imported} 条${importAsTest.value ? '(已标记为测试数据)' : ''}${skipped ? `,跳过 ${skipped} 条` : ''}`) + ElMessage.success(`Excel 导入成功:成功 ${imported} 条${importAsTest.value ? '(已标记为测试数据)' : ''}${skipped ? `,跳过 ${skipped} 条` : ''}${ignored ? `,忽略非参赛选手 ${ignored} 条` : ''}`) } accountsPage.value = 1 fetchAccounts()