From 578bfcb3f58c5458d2c60fe37c3e56ebcda98e18 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期三, 05 三月 2025 15:15:03 +0800
Subject: [PATCH] 标准功能搬迁

---
 basic-server/src/main/java/com/ruoyi/basic/excel/StructureTestObjectListener.java |   38 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 38 insertions(+), 0 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/excel/StructureTestObjectListener.java b/basic-server/src/main/java/com/ruoyi/basic/excel/StructureTestObjectListener.java
new file mode 100644
index 0000000..04d3c2c
--- /dev/null
+++ b/basic-server/src/main/java/com/ruoyi/basic/excel/StructureTestObjectListener.java
@@ -0,0 +1,38 @@
+package com.ruoyi.basic.excel;
+
+import com.alibaba.excel.context.AnalysisContext;
+import com.alibaba.excel.event.AnalysisEventListener;
+import com.ruoyi.basic.service.ProductService;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class StructureTestObjectListener extends AnalysisEventListener<StructureTestObjectData> {
+    private static final int BATCH_COUNT = 1000;
+    List<StructureTestObjectData> list = new ArrayList<>();
+
+    private ProductService productService;
+
+    public StructureTestObjectListener(ProductService productService) {
+        this.productService = productService;
+    }
+
+    @Override
+    public void invoke(StructureTestObjectData data, AnalysisContext analysisContext) {
+        list.add(data);
+        if (list.size() >= BATCH_COUNT) {
+            save();
+            list.clear();
+        }
+    }
+
+    @Override
+    public void doAfterAllAnalysed(AnalysisContext analysisContext) {
+        save();
+    }
+
+
+    private void save() {
+        productService.importPartExcel(list);
+    }
+}

--
Gitblit v1.9.3