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