From 27e34c2f0ae39df3270ecc8f06e79897a1ac0aa1 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Sat, 12 Nov 2022 11:26:48 +0800
Subject: [PATCH] 忽略不必要的属性数据返回
---
ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java | 21 ++++++++++++++++-----
1 files changed, 16 insertions(+), 5 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 da91d73..cd8dd41 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
@@ -689,17 +689,24 @@
int rowNo = (1 + rownum) - startNo;
for (int i = startNo; i < endNo; i++)
{
- rowNo = i > 1 ? rowNo + 1 : rowNo + i;
+ rowNo = isSubList() ? (i > 1 ? rowNo + 1 : rowNo + i) : i + 1 + rownum - startNo;
row = sheet.createRow(rowNo);
// 得到导出对象.
T vo = (T) list.get(i);
Collection<?> subList = null;
- if (isSubListValue(vo))
+ if (isSubList())
{
- subList = getListCellValue(vo);
- subMergedLastRowNum = subMergedLastRowNum + subList.size();
+ if (isSubListValue(vo))
+ {
+ subList = getListCellValue(vo);
+ subMergedLastRowNum = subMergedLastRowNum + subList.size();
+ }
+ else
+ {
+ subMergedFirstRowNum++;
+ subMergedLastRowNum++;
+ }
}
-
int column = 0;
for (Object[] os : fields)
{
@@ -904,6 +911,10 @@
{
cellValue = RegExUtils.replaceFirst(cellValue, FORMULA_REGEX_STR, "\t$0");
}
+ if (value instanceof Collection && StringUtils.equals("[]", cellValue))
+ {
+ cellValue = StringUtils.EMPTY;
+ }
cell.setCellValue(StringUtils.isNull(cellValue) ? attr.defaultValue() : cellValue + attr.suffix());
}
else if (ColumnType.NUMERIC == attr.cellType())
--
Gitblit v1.9.2