From 4d5c204b9aa4b8ba0e42d20a73f5bd3de9ed73d2 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: Thu, 06 Jul 2023 22:08:47 +0800
Subject: [PATCH] 优化代码
---
ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java | 12 +++++++++++-
1 files changed, 11 insertions(+), 1 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 4330d8f..cbe47b6 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
@@ -99,6 +99,11 @@
public static final String[] FORMULA_STR = { "=", "-", "+", "@" };
/**
+ * 用于dictType属性数据存储,避免重复查缓存
+ */
+ public Map<String, String> sysDictMap = new HashMap<String, String>();
+
+ /**
* Excel sheet最大行数,默认65536
*/
public static final int sheetSize = 65536;
@@ -1034,7 +1039,12 @@
}
else if (StringUtils.isNotEmpty(dictType) && StringUtils.isNotNull(value))
{
- cell.setCellValue(convertDictByExp(Convert.toStr(value), dictType, separator));
+ if (!sysDictMap.containsKey(dictType + value))
+ {
+ String lable = convertDictByExp(Convert.toStr(value), dictType, separator);
+ sysDictMap.put(dictType + value, lable);
+ }
+ cell.setCellValue(sysDictMap.get(dictType + value));
}
else if (value instanceof BigDecimal && -1 != attr.scale())
{
--
Gitblit v1.9.2