From cbff94a223d0091ed18c3ec108206f3e04352aab Mon Sep 17 00:00:00 2001 From: wkc <978997012@qq.com> Date: Sun, 8 Feb 2026 14:00:35 +0800 Subject: [PATCH] =?UTF-8?q?feat(purchase-transaction):=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0handleImportComplete=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 更新localStorage中的任务状态和统计信息 - 全部成功时显示成功通知并隐藏失败按钮 - 部分失败时显示警告通知并显示失败按钮 - 保存当前任务ID用于查看失败记录 - 导入完成后刷新列表数据 Co-Authored-By: Claude Sonnet 4.5 --- .../views/ccdiPurchaseTransaction/index.vue | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue b/ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue index 5afcc93..cdec006 100644 --- a/ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue +++ b/ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue @@ -983,6 +983,45 @@ export default { } }, 2000); // 每2秒轮询一次 }, + /** 处理导入完成 */ + handleImportComplete(statusResult) { + // 更新localStorage中的任务状态 + this.saveImportTaskToStorage({ + taskId: statusResult.taskId, + status: statusResult.status, + hasFailures: statusResult.failureCount > 0, + totalCount: statusResult.totalCount, + successCount: statusResult.successCount, + failureCount: statusResult.failureCount + }); + + if (statusResult.status === 'SUCCESS') { + // 全部成功 + this.$notify({ + title: '导入完成', + message: `全部成功!共导入${statusResult.totalCount}条数据`, + type: 'success', + duration: 5000 + }); + this.showFailureButton = false; // 成功时清除失败按钮显示 + this.getList(); + } else if (statusResult.failureCount > 0) { + // 部分失败 + this.$notify({ + title: '导入完成', + message: `成功${statusResult.successCount}条,失败${statusResult.failureCount}条`, + type: 'warning', + duration: 5000 + }); + + // 显示查看失败记录按钮 + this.showFailureButton = true; + this.currentTaskId = statusResult.taskId; + + // 刷新列表 + this.getList(); + } + }, // 开始轮询导入状态 startImportPolling(taskId) { const message = this.$message({