Quellcode durchsuchen

update 重构 抽取脱敏功能 ruoyi-common-sensitive 成为独立模块

疯狂的狮子Li vor 2 Jahren
Ursprung
Commit
c67cc725d4

+ 1 - 0
ruoyi-common/pom.xml

@@ -28,6 +28,7 @@
         <module>ruoyi-common-sms</module>
         <module>ruoyi-common-web</module>
         <module>ruoyi-common-translation</module>
+        <module>ruoyi-common-sensitive</module>
     </modules>
 
     <artifactId>ruoyi-common</artifactId>

+ 6 - 0
ruoyi-common/ruoyi-common-bom/pom.xml

@@ -131,6 +131,12 @@
                 <version>${revision}</version>
             </dependency>
 
+            <!-- 脱敏模块 -->
+            <dependency>
+                <groupId>com.ruoyi</groupId>
+                <artifactId>ruoyi-common-sensitive</artifactId>
+                <version>${revision}</version>
+            </dependency>
         </dependencies>
     </dependencyManagement>
 

+ 26 - 0
ruoyi-common/ruoyi-common-sensitive/pom.xml

@@ -0,0 +1,26 @@
+<?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-sensitive</artifactId>
+
+    <description>
+        ruoyi-common-sensitive 脱敏模块
+    </description>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-common-core</artifactId>
+        </dependency>
+    </dependencies>
+
+</project>

+ 4 - 4
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/annotation/Sensitive.java → ruoyi-common/ruoyi-common-sensitive/src/main/java/com/ruoyi/common/sensitive/annotation/Sensitive.java

@@ -1,9 +1,9 @@
-package com.ruoyi.common.core.annotation;
+package com.ruoyi.common.sensitive.annotation;
 
 import com.fasterxml.jackson.annotation.JacksonAnnotationsInside;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.ruoyi.common.core.enums.SensitiveStrategy;
-import com.ruoyi.common.core.jackson.SensitiveJsonSerializer;
+import com.ruoyi.common.sensitive.core.SensitiveStrategy;
+import com.ruoyi.common.sensitive.handler.SensitiveHandler;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
@@ -18,7 +18,7 @@ import java.lang.annotation.Target;
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.FIELD)
 @JacksonAnnotationsInside
-@JsonSerialize(using = SensitiveJsonSerializer.class)
+@JsonSerialize(using = SensitiveHandler.class)
 public @interface Sensitive {
     SensitiveStrategy strategy();
 }

+ 1 - 1
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/service/SensitiveService.java → ruoyi-common/ruoyi-common-sensitive/src/main/java/com/ruoyi/common/sensitive/core/SensitiveService.java

@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.service;
+package com.ruoyi.common.sensitive.core;
 
 /**
  * 脱敏服务

+ 1 - 1
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/SensitiveStrategy.java → ruoyi-common/ruoyi-common-sensitive/src/main/java/com/ruoyi/common/sensitive/core/SensitiveStrategy.java

@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.enums;
+package com.ruoyi.common.sensitive.core;
 
 import cn.hutool.core.util.DesensitizedUtil;
 import lombok.AllArgsConstructor;

+ 5 - 5
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/jackson/SensitiveJsonSerializer.java → ruoyi-common/ruoyi-common-sensitive/src/main/java/com/ruoyi/common/sensitive/handler/SensitiveHandler.java

@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.jackson;
+package com.ruoyi.common.sensitive.handler;
 
 import cn.hutool.core.util.ObjectUtil;
 import com.fasterxml.jackson.core.JsonGenerator;
@@ -7,10 +7,10 @@ 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.annotation.Sensitive;
-import com.ruoyi.common.core.enums.SensitiveStrategy;
-import com.ruoyi.common.core.service.SensitiveService;
 import com.ruoyi.common.core.utils.SpringUtils;
+import com.ruoyi.common.sensitive.annotation.Sensitive;
+import com.ruoyi.common.sensitive.core.SensitiveService;
+import com.ruoyi.common.sensitive.core.SensitiveStrategy;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeansException;
 
@@ -23,7 +23,7 @@ import java.util.Objects;
  * @author Yjoioooo
  */
 @Slf4j
-public class SensitiveJsonSerializer extends JsonSerializer<String> implements ContextualSerializer {
+public class SensitiveHandler extends JsonSerializer<String> implements ContextualSerializer {
 
     private SensitiveStrategy strategy;
 

+ 5 - 0
ruoyi-modules/ruoyi-demo/pom.xml

@@ -78,6 +78,11 @@
             <artifactId>ruoyi-common-translation</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-common-sensitive</artifactId>
+        </dependency>
+
         <!-- 短信 用哪个导入哪个依赖 -->
 <!--        <dependency>-->
 <!--            <groupId>com.aliyun</groupId>-->

+ 3 - 3
ruoyi-modules/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestSensitiveController.java

@@ -1,9 +1,9 @@
 package com.ruoyi.demo.controller;
 
-import com.ruoyi.common.core.annotation.Sensitive;
 import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.enums.SensitiveStrategy;
 import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.sensitive.annotation.Sensitive;
+import com.ruoyi.common.sensitive.core.SensitiveStrategy;
 import lombok.Data;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -17,7 +17,7 @@ import org.springframework.web.bind.annotation.RestController;
  *
  * @author Lion Li
  * @version 3.6.0
- * @see com.ruoyi.common.core.service.SensitiveService
+ * @see com.ruoyi.common.sensitive.core.SensitiveService
  */
 @RestController
 @RequestMapping("/demo/sensitive")

+ 5 - 0
ruoyi-modules/ruoyi-system/pom.xml

@@ -80,6 +80,11 @@
             <groupId>com.ruoyi</groupId>
             <artifactId>ruoyi-common-idempotent</artifactId>
         </dependency>
+
+        <dependency>
+            <groupId>com.ruoyi</groupId>
+            <artifactId>ruoyi-common-sensitive</artifactId>
+        </dependency>
     </dependencies>
 
 </project>

+ 2 - 2
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysUser.java

@@ -1,11 +1,11 @@
 package com.ruoyi.system.domain;
 
 import com.baomidou.mybatisplus.annotation.*;
-import com.ruoyi.common.core.annotation.Sensitive;
 import com.ruoyi.common.core.constant.UserConstants;
-import com.ruoyi.common.core.enums.SensitiveStrategy;
 import com.ruoyi.common.core.web.domain.BaseEntity;
 import com.ruoyi.common.core.xss.Xss;
+import com.ruoyi.common.sensitive.annotation.Sensitive;
+import com.ruoyi.common.sensitive.core.SensitiveStrategy;
 import jakarta.validation.constraints.Email;
 import jakarta.validation.constraints.NotBlank;
 import jakarta.validation.constraints.Size;

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysSensitiveServiceImpl.java

@@ -1,7 +1,7 @@
 package com.ruoyi.system.service.impl;
 
-import com.ruoyi.common.core.service.SensitiveService;
 import com.ruoyi.common.satoken.utils.LoginHelper;
+import com.ruoyi.common.sensitive.core.SensitiveService;
 import org.springframework.stereotype.Service;
 
 /**