From f3bb76fa668530d5613700e57a30e6c7394d5224 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期四, 06 三月 2025 16:50:00 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- 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