From f9e85456e3dda6969dbdfa58528bc023f9656cf8 Mon Sep 17 00:00:00 2001
From: liuhanqing <447067298@qq.com>
Date: Sat, 16 Jan 2021 23:38:50 +0800
Subject: [PATCH] =?UTF-8?q?=E3=80=90dict=E3=80=91=E5=A2=9E=E5=8A=A0?=
=?UTF-8?q?=E5=AD=97=E5=85=B8=E7=BC=96=E7=A0=81=E7=BF=BB=E8=AF=91=E9=80=9A?=
=?UTF-8?q?=E8=BF=87jackson=E6=B3=A8=E8=A7=A3=E5=BA=8F=E5=88=97=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../roses/kernel/rule/enums/TreeNodeEnum.java | 2 +-
kernel-d-sms/sms-spring-boot-starter/pom.xml | 7 --
kernel-s-dict/dict-api/pom.xml | 9 +-
.../roses/kernel/dict/api/DictApi.java | 13 +-
.../api/serializer/DictValueSerializer.java | 116 ++++++++++++++++++
.../modular/service/impl/DictServiceImpl.java | 27 ++++
.../system-business-notice/pom.xml | 7 ++
.../notice/modular/entity/SysNotice.java | 11 +-
8 files changed, 178 insertions(+), 14 deletions(-)
create mode 100644 kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/serializer/DictValueSerializer.java
diff --git a/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/enums/TreeNodeEnum.java b/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/enums/TreeNodeEnum.java
index 1cd846388..e4d23811c 100644
--- a/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/enums/TreeNodeEnum.java
+++ b/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/enums/TreeNodeEnum.java
@@ -53,7 +53,7 @@ public enum TreeNodeEnum {
* @author liuhanqing
* @date 2021/1/15 13:36
*/
- public static String codeToMessage(String code) {
+ public static String codeToName(String code) {
if (null != code) {
for (TreeNodeEnum e : TreeNodeEnum.values()) {
if (e.getCode().equals(code)) {
diff --git a/kernel-d-sms/sms-spring-boot-starter/pom.xml b/kernel-d-sms/sms-spring-boot-starter/pom.xml
index d63e78118..70a762ff5 100644
--- a/kernel-d-sms/sms-spring-boot-starter/pom.xml
+++ b/kernel-d-sms/sms-spring-boot-starter/pom.xml
@@ -24,13 +24,6 @@
1.0.0
-
-
- cn.stylefeng.roses
- sms-business-validation
- 1.0.0
-
-
diff --git a/kernel-s-dict/dict-api/pom.xml b/kernel-s-dict/dict-api/pom.xml
index e6e9cc297..4cc928e6c 100644
--- a/kernel-s-dict/dict-api/pom.xml
+++ b/kernel-s-dict/dict-api/pom.xml
@@ -16,7 +16,14 @@
jar
-
+
+ com.fasterxml.jackson.core
+ jackson-annotations
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+
diff --git a/kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/DictApi.java b/kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/DictApi.java
index 9ce66e23c..4acae4912 100644
--- a/kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/DictApi.java
+++ b/kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/DictApi.java
@@ -9,11 +9,22 @@ package cn.stylefeng.roses.kernel.dict.api;
public interface DictApi {
/**
- * 获取字典名称通过id
+ * 获取字典名称通过code
*
* @author fengshuonan
* @date 2020/12/25 14:14
*/
String getDictNameByDictCode(String dictCode);
+ /**
+ * 通过字典类型编码和字典编码获取名称
+ *
+ * @param dictTypeCode 字典类型编码
+ * @param dictCode 字典编码
+ * @return 字典名称
+ * @author liuhanqing
+ * @date 2021/1/16 23:18
+ */
+ String getDictName(String dictTypeCode, String dictCode);
+
}
diff --git a/kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/serializer/DictValueSerializer.java b/kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/serializer/DictValueSerializer.java
new file mode 100644
index 000000000..a2edcb44c
--- /dev/null
+++ b/kernel-s-dict/dict-api/src/main/java/cn/stylefeng/roses/kernel/dict/api/serializer/DictValueSerializer.java
@@ -0,0 +1,116 @@
+package cn.stylefeng.roses.kernel.dict.api.serializer;
+
+import cn.hutool.core.util.StrUtil;
+import cn.stylefeng.roses.kernel.dict.api.context.DictContext;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.databind.JavaType;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.annotation.JacksonStdImpl;
+import com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper;
+import com.fasterxml.jackson.databind.jsontype.TypeSerializer;
+import com.fasterxml.jackson.databind.ser.std.StdScalarSerializer;
+
+import java.io.IOException;
+import java.lang.reflect.Type;
+
+/**
+ * jackson 序列化获取字典名称
+ *
+ * 使用@JsonSerialize(using=DictValueSerializer.class)
+ *
+ * @author liuhanqing
+ * @date 2021/1/16 22:21
+ */
+@JacksonStdImpl
+public final class DictValueSerializer
+ extends StdScalarSerializer