From fa2bdcd5ac5f1c3baa70183699fd29fdb5953d7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 26 Nov 2021 18:11:41 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=8A=BD=E8=B1=A1=20Excel=20=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E6=94=AF=E6=8C=81=E8=87=AA=E5=AE=9A=E4=B9=89=E7=9B=91?= =?UTF-8?q?=E5=90=AC=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/excel/DefaultExcelListener.java | 3 ++- .../com/ruoyi/common/excel/ExcelListener.java | 14 ++++++++++++++ .../com/ruoyi/common/utils/poi/ExcelUtil.java | 19 ++++++++++--------- 3 files changed, 26 insertions(+), 10 deletions(-) create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/excel/ExcelListener.java diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/excel/DefaultExcelListener.java b/ruoyi-common/src/main/java/com/ruoyi/common/excel/DefaultExcelListener.java index ba4cbf9ef..04bee4fb6 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/excel/DefaultExcelListener.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/excel/DefaultExcelListener.java @@ -24,7 +24,7 @@ import java.util.stream.Collectors; */ @Slf4j @NoArgsConstructor -public class DefaultExcelListener extends AnalysisEventListener { +public class DefaultExcelListener extends AnalysisEventListener implements ExcelListener { /** * 是否Validator检验,默认为是 @@ -94,6 +94,7 @@ public class DefaultExcelListener extends AnalysisEventListener { log.debug("所有数据解析完成!"); } + @Override public ExcelResult getExcelResult() { return excelResult; } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/excel/ExcelListener.java b/ruoyi-common/src/main/java/com/ruoyi/common/excel/ExcelListener.java new file mode 100644 index 000000000..2064cad36 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/excel/ExcelListener.java @@ -0,0 +1,14 @@ +package com.ruoyi.common.excel; + +import com.alibaba.excel.read.listener.ReadListener; + +/** + * Excel 导入监听 + * + * @author Lion Li + */ +public interface ExcelListener extends ReadListener { + + ExcelResult getExcelResult(); + +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java index d2ccd56cb..6168a9632 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java @@ -5,6 +5,7 @@ import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.ruoyi.common.convert.ExcelBigNumberConvert; import com.ruoyi.common.excel.DefaultExcelListener; +import com.ruoyi.common.excel.ExcelListener; import com.ruoyi.common.excel.ExcelResult; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.file.FileUtils; @@ -36,9 +37,9 @@ public class ExcelUtil { /** * 使用校验监听器处理导入 * - * @param is 输入流 - * @param clazz 对象类型 - * @param isValidate 是否 Validator 检验 默认为是 + * @param is 输入流 + * @param clazz 对象类型 + * @param isValidate 是否 Validator 检验 默认为是 * @return 转换后集合 */ public static ExcelResult importExcel(InputStream is, Class clazz, boolean isValidate) { @@ -50,14 +51,14 @@ public class ExcelUtil { /** * 使用自定义监听器导入 * - * @param is 输入流 - * @param clazz 对象类型 - * @param readListener 自定义监听器 + * @param is 输入流 + * @param clazz 对象类型 + * @param listener 自定义监听器 * @return 转换后集合 */ - public static ExcelResult importExcel(InputStream is, Class clazz, DefaultExcelListener readListener) { - EasyExcel.read(is, clazz, readListener).sheet().doRead(); - return readListener.getExcelResult(); + public static ExcelResult importExcel(InputStream is, Class clazz, ExcelListener listener) { + EasyExcel.read(is, clazz, listener).sheet().doRead(); + return listener.getExcelResult(); } /**