From c3bb4d2a6181e27b58cca56def0f392d6df7d7a1 Mon Sep 17 00:00:00 2001 From: zhujie <693337446@qq.com> Date: 星期五, 26 十一月 2021 13:01:00 +0800 Subject: [PATCH] add 新增导入支持开启Validator数据验证,支持开启导入异常行继续读取,支持返回导入回执 --- ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java | 39 ++++++++++++++------------------------- 1 files changed, 14 insertions(+), 25 deletions(-) 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 813fc97..8802a54 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 @@ -4,9 +4,9 @@ import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.ruoyi.common.convert.ExcelBigNumberConvert; -import com.ruoyi.common.utils.DictUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.file.FileUtils; +import org.apache.poi.ss.formula.functions.T; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; @@ -30,6 +30,19 @@ public static <T> List<T> importExcel(InputStream is, Class<T> clazz) { return EasyExcel.read(is).head(clazz).autoCloseStream(false).sheet().doReadSync(); } + + + /** + * 瀵筫xcel琛ㄥ崟榛樿绗竴涓储寮曞悕杞崲鎴恖ist锛圗asyExcel锛� + * + * @param is 杈撳叆娴� + * @return 杞崲鍚庨泦鍚� + */ + public static <T> ExcelResult<T> importExcel(InputStream is, Class<T> clazz, boolean isValidate, boolean skipException) { + ExcelListener<T> listener = new ExcelListener<>(isValidate, skipException); + EasyExcel.read(is, clazz, listener).sheet().doRead(); + return listener.getExcelResult(); + } /** * 瀵筶ist鏁版嵁婧愬皢鍏堕噷闈㈢殑鏁版嵁瀵煎叆鍒癳xcel琛ㄥ崟锛圗asyExcel锛� @@ -113,30 +126,6 @@ } } return StringUtils.stripEnd(propertyString.toString(), separator); - } - - /** - * 瑙f瀽瀛楀吀鍊� - * - * @param dictValue 瀛楀吀鍊� - * @param dictType 瀛楀吀绫诲瀷 - * @param separator 鍒嗛殧绗� - * @return 瀛楀吀鏍囩 - */ - public static String convertDictByExp(String dictValue, String dictType, String separator) { - return DictUtils.getDictLabel(dictType, dictValue, separator); - } - - /** - * 鍙嶅悜瑙f瀽鍊煎瓧鍏稿�� - * - * @param dictLabel 瀛楀吀鏍囩 - * @param dictType 瀛楀吀绫诲瀷 - * @param separator 鍒嗛殧绗� - * @return 瀛楀吀鍊� - */ - public static String reverseDictByExp(String dictLabel, String dictType, String separator) { - return DictUtils.getDictValue(dictType, dictLabel, separator); } /** -- Gitblit v1.9.3