From ec096965123b1e341f1ec80ea674c3d7de485d2e Mon Sep 17 00:00:00 2001 From: RuoYi Date: Fri, 10 Jul 2020 14:47:58 +0800 Subject: [PATCH] =?UTF-8?q?Excel=E6=94=AF=E6=8C=81sort=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ruoyi/common/utils/poi/ExcelUtil.java | 13 ++++++++----- .../framework/aspectj/lang/annotation/Excel.java | 5 +++++ 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/ruoyi/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java b/ruoyi/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java index f0ab5e7d..3211ac55 100644 --- a/ruoyi/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java +++ b/ruoyi/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java @@ -11,11 +11,13 @@ import java.math.BigDecimal; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Arrays; +import java.util.Comparator; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.UUID; +import java.util.stream.Collectors; import org.apache.poi.hssf.usermodel.HSSFDateUtil; import org.apache.poi.ss.usermodel.BorderStyle; import org.apache.poi.ss.usermodel.Cell; @@ -39,17 +41,17 @@ import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFDataValidation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.ruoyi.common.core.text.Convert; +import com.ruoyi.common.exception.CustomException; +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.common.utils.reflect.ReflectUtils; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import com.ruoyi.framework.aspectj.lang.annotation.Excel.ColumnType; import com.ruoyi.framework.aspectj.lang.annotation.Excel.Type; import com.ruoyi.framework.aspectj.lang.annotation.Excels; import com.ruoyi.framework.config.RuoYiConfig; import com.ruoyi.framework.web.domain.AjaxResult; -import com.ruoyi.common.core.text.Convert; -import com.ruoyi.common.exception.CustomException; -import com.ruoyi.common.utils.DateUtils; -import com.ruoyi.common.utils.StringUtils; -import com.ruoyi.common.utils.reflect.ReflectUtils; /** * Excel相关处理 @@ -768,6 +770,7 @@ public class ExcelUtil } } } + this.fields = this.fields.stream().sorted(Comparator.comparing(objects -> ((Excel) objects[1]).sort())).collect(Collectors.toList()); } /** diff --git a/ruoyi/src/main/java/com/ruoyi/framework/aspectj/lang/annotation/Excel.java b/ruoyi/src/main/java/com/ruoyi/framework/aspectj/lang/annotation/Excel.java index 8037cb8b..de25b1cf 100644 --- a/ruoyi/src/main/java/com/ruoyi/framework/aspectj/lang/annotation/Excel.java +++ b/ruoyi/src/main/java/com/ruoyi/framework/aspectj/lang/annotation/Excel.java @@ -14,6 +14,11 @@ import java.lang.annotation.Target; @Target(ElementType.FIELD) public @interface Excel { + /** + * 导出时在excel中排序 + */ + public int sort() default Integer.MAX_VALUE; + /** * 导出到Excel中的名字. */