From b8bbc23572f0ff8bd14c25a1c1228522098523e0 Mon Sep 17 00:00:00 2001
From: HouKunLin
Date: Mon, 16 May 2022 11:02:33 +0800
Subject: [PATCH] =?UTF-8?q?build:=20=E5=8F=91=E5=B8=83=201.4.9=20=E7=89=88?=
=?UTF-8?q?=E6=9C=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
build.gradle | 2 +-
changelog.md | 6 ++++++
.../com/houkunlin/system/dict/starter/DictController.java | 6 +++++-
.../com/houkunlin/system/dict/starter/bean/DictValueVo.java | 4 +++-
4 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/build.gradle b/build.gradle
index 2ee35fc..07ce930 100644
--- a/build.gradle
+++ b/build.gradle
@@ -10,7 +10,7 @@ plugins {
}
group = 'com.houkunlin'
-version = '1.4.8'
+version = '1.4.9'
description = """
系统数据字典自动翻译成字典文本。可集合系统数据库中存储的用户数据字典,也可使用枚举做系统数据字典,主要用在返回数据给前端时自动把字典值翻译成字典文本信息;
The system data dictionary is automatically translated into dictionary text.
diff --git a/changelog.md b/changelog.md
index deaedf7..2265d2b 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,11 @@
# 更改日志
+## 1.4.9 版本
+
+- fix: 修复使用 ASM 构建转换器实现类时 ClassWriter 参数错误问题
+- feat(controller): 获取字典类型信息接口增加一个参数进行树形结构数据转换
+- feat(util): 增加一个静态方法处理对象中的字典值文本,返回处理后的对象
+
## 1.4.8 版本
已在 `JDK8` `JDK11` `JDK17` 环境下跑通所有单元测试样例
diff --git a/src/main/java/com/houkunlin/system/dict/starter/DictController.java b/src/main/java/com/houkunlin/system/dict/starter/DictController.java
index 7b41bd9..0584baf 100644
--- a/src/main/java/com/houkunlin/system/dict/starter/DictController.java
+++ b/src/main/java/com/houkunlin/system/dict/starter/DictController.java
@@ -35,6 +35,7 @@ public class DictController {
* 获取字典类型信息
*
* @param dict 字典类型代码
+ * @param tree v1.4.9 以字典文本值的代码长度来截取成树结构数据,此值传入分隔长度(树形结构的KEY长度,按照这个长度去分隔字典值,由字典值拿到父级字典值)
* @return 字典类型对象
*/
@ApiOperation("获取字典类型[PATH]")
@@ -48,6 +49,7 @@ public DictTypeVo dictType(@PathVariable final String dict, @RequestParam(requir
* 获取字典类型信息
*
* @param dict 字典类型代码
+ * @param tree v1.4.9 以字典文本值的代码长度来截取成树结构数据,此值传入分隔长度(树形结构的KEY长度,按照这个长度去分隔字典值,由字典值拿到父级字典值)
* @return 字典类型对象
*/
@ApiOperation("获取字典类型[QUERY]")
@@ -71,7 +73,7 @@ public DictTypeVo dictTypeQuery(final String dict, @RequestParam(required = fals
* @param dict 字典类型代码
* @param tree 树形结构的KEY长度,按照这个长度去分隔字典值,由字典值拿到父级字典值
* @return 字典信息
- * @since 1.4.8.1
+ * @since 1.4.9
*/
private DictTypeVo transform(final String dict, final Integer tree) {
final DictTypeVo dictType = DictUtil.getDictType(dict);
@@ -158,6 +160,7 @@ public String dictTextQuery(String dict, String value) {
* 返回处理后的树形结构信息,返回数据的结构为:
* 键-值:list中所有顶级父级ID -> 该顶级父级ID的子级列表,一般情况下顶级父级ID为defaultParentKey
*
+ * @since 1.4.9
*/
public static ListMultimap handlerTreeDatasource(@NonNull List extends E> list,
K defaultParentKey,
@@ -201,6 +204,7 @@ public static ListMultimap handlerTreeDatasource(@NonNull List ex
* @param setChildren 给 Entity 设置子级列表的方法
* @param Entity 实体类对象
* @param 当前对象ID 与 父级对象ID 关联关系的类型,比如:String 、 Integer 类型数据来做关联
+ * @since 1.4.9
*/
private static void handlerTreeChildren(@NonNull ListMultimap multimap,
E parent,
diff --git a/src/main/java/com/houkunlin/system/dict/starter/bean/DictValueVo.java b/src/main/java/com/houkunlin/system/dict/starter/bean/DictValueVo.java
index 21cce5e..48da846 100644
--- a/src/main/java/com/houkunlin/system/dict/starter/bean/DictValueVo.java
+++ b/src/main/java/com/houkunlin/system/dict/starter/bean/DictValueVo.java
@@ -58,13 +58,15 @@ public class DictValueVo implements Serializable {
/**
* 是否禁用,禁用的字典文本不会从缓存中删除,因为禁用的字典文本可能在之前的数据中被使用。
* 并且禁用的字典文本也不会从缓存的字典类型对象中删除,需要在调用 {@link RefreshDictTypeEvent} 时明确的把字典文本移除才能从字典类型缓存中删除。
+ *
+ * @since 1.4.9
*/
@ApiModelProperty("是否禁用")
private boolean disabled;
/**
* 子字典值列表
*
- * @since 1.4.8.1
+ * @since 1.4.9
*/
@ApiModelProperty("子字典值列表")
private List children;