From bff9720b6fa86fcced776601f4d318ea26b7265f Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 31 一月 2023 18:52:55 +0800
Subject: [PATCH] update 优化 转换模块代码 删除无用的 common-dict 依赖

---
 /dev/null                                                                                                               |   29 --------------
 ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/TranslationInterface.java         |    2 
 ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/annotation/Translation.java            |    4 +-
 ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/handler/TranslationHandler.java   |    4 +-
 ruoyi-common/ruoyi-common-bom/pom.xml                                                                                   |    7 ---
 ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/constant/TransConstant.java            |    7 ++-
 ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/DictTypeTranslationImpl.java |   29 ++++++++++++++
 ruoyi-modules/ruoyi-system/pom.xml                                                                                      |    2 
 ruoyi-common/pom.xml                                                                                                    |    1 
 ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/UserNameTranslationImpl.java |   11 +----
 10 files changed, 43 insertions(+), 53 deletions(-)

diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index 3cbdc88..8cfd11a 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -13,7 +13,6 @@
     <modules>
         <module>ruoyi-common-bom</module>
         <module>ruoyi-common-core</module>
-        <module>ruoyi-common-dict</module>
         <module>ruoyi-common-doc</module>
         <module>ruoyi-common-excel</module>
         <module>ruoyi-common-idempotent</module>
diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml
index 84d9cb0..4e518c6 100644
--- a/ruoyi-common/ruoyi-common-bom/pom.xml
+++ b/ruoyi-common/ruoyi-common-bom/pom.xml
@@ -26,13 +26,6 @@
                 <version>${revision}</version>
             </dependency>
 
-            <!-- 瀛楀吀 -->
-            <dependency>
-                <groupId>com.ruoyi</groupId>
-                <artifactId>ruoyi-common-dict</artifactId>
-                <version>${revision}</version>
-            </dependency>
-
             <!-- 鎺ュ彛妯″潡 -->
             <dependency>
                 <groupId>com.ruoyi</groupId>
diff --git a/ruoyi-common/ruoyi-common-dict/pom.xml b/ruoyi-common/ruoyi-common-dict/pom.xml
deleted file mode 100644
index fcfbbd7..0000000
--- a/ruoyi-common/ruoyi-common-dict/pom.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <groupId>com.ruoyi</groupId>
-        <artifactId>ruoyi-common</artifactId>
-        <version>${revision}</version>
-        <relativePath>../pom.xml</relativePath>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>ruoyi-common-dict</artifactId>
-
-    <description>
-        ruoyi-common-dict 瀛楀吀
-    </description>
-
-    <dependencies>
-        <dependency>
-            <groupId>com.ruoyi</groupId>
-            <artifactId>ruoyi-common-core</artifactId>
-        </dependency>
-    </dependencies>
-
-</project>
diff --git a/ruoyi-common/ruoyi-common-dict/src/main/java/com/ruoyi/common/dict/annotation/DictDataMapper.java b/ruoyi-common/ruoyi-common-dict/src/main/java/com/ruoyi/common/dict/annotation/DictDataMapper.java
deleted file mode 100644
index c005bd7..0000000
--- a/ruoyi-common/ruoyi-common-dict/src/main/java/com/ruoyi/common/dict/annotation/DictDataMapper.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.ruoyi.common.dict.annotation;
-
-import com.fasterxml.jackson.annotation.JacksonAnnotationsInside;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.ruoyi.common.dict.jackson.DictDataJsonSerializer;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * 瀛楀吀鏁版嵁鏄犲皠娉ㄨВ
- *
- * @author itino
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.FIELD, ElementType.METHOD})
-@JacksonAnnotationsInside
-@JsonSerialize(using = DictDataJsonSerializer.class)
-public @interface DictDataMapper {
-
-    /**
-     * 璁剧疆瀛楀吀鐨則ype鍊� (濡�: sys_user_sex)
-     */
-    String dictType() default "";
-}
diff --git a/ruoyi-common/ruoyi-common-dict/src/main/java/com/ruoyi/common/dict/jackson/DictDataJsonSerializer.java b/ruoyi-common/ruoyi-common-dict/src/main/java/com/ruoyi/common/dict/jackson/DictDataJsonSerializer.java
deleted file mode 100644
index f6d900b..0000000
--- a/ruoyi-common/ruoyi-common-dict/src/main/java/com/ruoyi/common/dict/jackson/DictDataJsonSerializer.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.ruoyi.common.dict.jackson;
-
-import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.StrUtil;
-import com.fasterxml.jackson.core.JsonGenerator;
-import com.fasterxml.jackson.databind.BeanProperty;
-import com.fasterxml.jackson.databind.JsonMappingException;
-import com.fasterxml.jackson.databind.JsonSerializer;
-import com.fasterxml.jackson.databind.SerializerProvider;
-import com.fasterxml.jackson.databind.ser.ContextualSerializer;
-import com.ruoyi.common.core.service.DictService;
-import com.ruoyi.common.core.utils.SpringUtils;
-import com.ruoyi.common.core.utils.StringUtils;
-import com.ruoyi.common.dict.annotation.DictDataMapper;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.BeansException;
-
-import java.io.IOException;
-import java.util.Objects;
-
-/**
- * 瀛楀吀鏁版嵁json搴忓垪鍖栧伐鍏�
- *
- * @author itino
- */
-@Slf4j
-public class DictDataJsonSerializer extends JsonSerializer<String> implements ContextualSerializer {
-
-    private String dictType;
-
-    @Override
-    public void serialize(String value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
-        try {
-            DictService dictService = SpringUtils.getBean(DictService.class);
-            if (ObjectUtil.isNotNull(dictService)) {
-                String label = dictService.getDictLabel(dictType, value);
-                gen.writeString(StringUtils.isNotBlank(label) ? label : value);
-            } else {
-                gen.writeString(value);
-            }
-        } catch (BeansException e) {
-            log.error("瀛楀吀鏁版嵁鏈煡鍒�, 閲囩敤榛樿澶勭悊 => {}", e.getMessage());
-            gen.writeString(value);
-        }
-    }
-
-    @Override
-    public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) throws JsonMappingException {
-        DictDataMapper anno = property.getAnnotation(DictDataMapper.class);
-        if (Objects.nonNull(anno) && StrUtil.isNotBlank(anno.dictType())) {
-            this.dictType = anno.dictType();
-            return this;
-        }
-        return prov.findValueSerializer(property.getType(), property);
-    }
-}
diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/annotation/Translation.java b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/annotation/Translation.java
index 158c350..302ef93 100644
--- a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/annotation/Translation.java
+++ b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/annotation/Translation.java
@@ -25,8 +25,8 @@
     String type();
 
     /**
-     * 閫氱敤Key 濡傛灉涓虹┖鍒欏彇琚爣娉ㄧ殑瀛楁鍊� 渚嬪: 瀛楀吀type(sys_user_sex)
+     * 鍏朵粬鏉′欢 渚嬪: 瀛楀吀type(sys_user_sex)
      */
-    String key() default "";
+    String other() default "";
 
 }
diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/constant/TransConstant.java b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/constant/TransConstant.java
index 84c4bba..372f3a2 100644
--- a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/constant/TransConstant.java
+++ b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/constant/TransConstant.java
@@ -8,15 +8,18 @@
 public interface TransConstant {
 
     /**
-     * 鐢ㄦ埛鍚嶇炕璇�
+     * 鐢ㄦ埛id杞处鍙�
      */
     String USER_ID_TO_NAME = "userIdToName";
 
     /**
-     * 瀛楀吀鍊肩炕璇�
+     * 瀛楀吀type杞琹abel
      */
     String DICT_TYPE_TO_LABEL = "dictTypeToLabel";
 
+    /**
+     * ossId杞瑄rl
+     */
     String OSS_ID_TO_URL = "ossIdToUrl";
 
 }
diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/TranslationInterface.java b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/TranslationInterface.java
index 449e894..df4c3a2 100644
--- a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/TranslationInterface.java
+++ b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/TranslationInterface.java
@@ -13,5 +13,5 @@
      * @param key 闇�瑕佽缈昏瘧鐨勯敭
      * @return 杩斿洖閿搴旂殑鍊�
      */
-    String translation(Object key);
+    String translation(Object key, String other);
 }
diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/handler/TranslationHandler.java b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/handler/TranslationHandler.java
index 1ca2f07..922757e 100644
--- a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/handler/TranslationHandler.java
+++ b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/handler/TranslationHandler.java
@@ -38,13 +38,13 @@
         try {
             TranslationInterface trans = TRANSLATION_MAPPER.get(translation.type());
             if (ObjectUtil.isNotNull(trans)) {
-                String result = trans.translation(StringUtils.isBlank(translation.key()) ? value : translation.key());
+                String result = trans.translation(value, translation.other());
                 gen.writeString(StringUtils.isNotBlank(result) ? result : value.toString());
             } else {
                 gen.writeString(value.toString());
             }
         } catch (BeansException e) {
-            log.error("瀛楀吀鏁版嵁鏈煡鍒�, 閲囩敤榛樿澶勭悊 => {}", e.getMessage());
+            log.error("鏁版嵁鏈煡鍒�, 閲囩敤榛樿澶勭悊 => {}", e.getMessage());
             gen.writeString(value.toString());
         }
     }
diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/DictTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/DictTranslationImpl.java
deleted file mode 100644
index e660cfb..0000000
--- a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/DictTranslationImpl.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.ruoyi.common.translation.core.impl;
-
-import com.ruoyi.common.translation.annotation.TranslationType;
-import com.ruoyi.common.translation.constant.TransConstant;
-import com.ruoyi.common.translation.core.TranslationInterface;
-import org.springframework.stereotype.Component;
-
-/**
- * 缈昏瘧鎺ュ彛 (瀹炵幇绫婚渶鏍囨敞 {@link com.ruoyi.common.translation.annotation.TranslationType} 娉ㄨВ鏍囨槑缈昏瘧绫诲瀷)
- *
- * @author Lion Li
- */
-@Component
-@TranslationType(type = TransConstant.DICT_TYPE_TO_LABEL)
-public class DictTranslationImpl implements TranslationInterface {
-
-    /**
-     * 缈昏瘧
-     *
-     * @param key 闇�瑕佽缈昏瘧鐨勯敭
-     * @return 杩斿洖閿搴旂殑鍊�
-     */
-    public String translation(Object key) {
-        if (key instanceof String dictType) {
-            return "dict";
-        }
-        return null;
-    }
-}
diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/DictTypeTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/DictTypeTranslationImpl.java
new file mode 100644
index 0000000..4ad816b
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/DictTypeTranslationImpl.java
@@ -0,0 +1,29 @@
+package com.ruoyi.common.translation.core.impl;
+
+import com.ruoyi.common.core.service.DictService;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.translation.annotation.TranslationType;
+import com.ruoyi.common.translation.constant.TransConstant;
+import com.ruoyi.common.translation.core.TranslationInterface;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Component;
+
+/**
+ * 瀛楀吀缈昏瘧瀹炵幇
+ *
+ * @author Lion Li
+ */
+@Component
+@AllArgsConstructor
+@TranslationType(type = TransConstant.DICT_TYPE_TO_LABEL)
+public class DictTypeTranslationImpl implements TranslationInterface {
+
+    private final DictService dictService;
+
+    public String translation(Object key, String other) {
+        if (key instanceof String dictValue && StringUtils.isNotBlank(other)) {
+            return dictService.getDictLabel(other, dictValue);
+        }
+        return null;
+    }
+}
diff --git a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/UserNameTranslationImpl.java b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/UserNameTranslationImpl.java
index 3906393..34b0e0d 100644
--- a/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/UserNameTranslationImpl.java
+++ b/ruoyi-common/ruoyi-common-translation/src/main/java/com/ruoyi/common/translation/core/impl/UserNameTranslationImpl.java
@@ -6,7 +6,7 @@
 import org.springframework.stereotype.Component;
 
 /**
- * 缈昏瘧鎺ュ彛 (瀹炵幇绫婚渶鏍囨敞 {@link com.ruoyi.common.translation.annotation.TranslationType} 娉ㄨВ鏍囨槑缈昏瘧绫诲瀷)
+ * 鐢ㄦ埛鍚嶇炕璇戝疄鐜�
  *
  * @author Lion Li
  */
@@ -14,13 +14,8 @@
 @TranslationType(type = TransConstant.USER_ID_TO_NAME)
 public class UserNameTranslationImpl implements TranslationInterface {
 
-    /**
-     * 缈昏瘧
-     *
-     * @param key 闇�瑕佽缈昏瘧鐨勯敭
-     * @return 杩斿洖閿搴旂殑鍊�
-     */
-    public String translation(Object key) {
+    public String translation(Object key, String other) {
+        // todo 寰呭疄鐜�
         if (key instanceof Long id) {
             return "admin";
         }
diff --git a/ruoyi-modules/ruoyi-system/pom.xml b/ruoyi-modules/ruoyi-system/pom.xml
index fe0b6aa..caecf78 100644
--- a/ruoyi-modules/ruoyi-system/pom.xml
+++ b/ruoyi-modules/ruoyi-system/pom.xml
@@ -35,7 +35,7 @@
 
         <dependency>
             <groupId>com.ruoyi</groupId>
-            <artifactId>ruoyi-common-dict</artifactId>
+            <artifactId>ruoyi-common-translation</artifactId>
         </dependency>
 
         <!-- OSS鍔熻兘妯″潡 -->

--
Gitblit v1.9.3