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

This commit is contained in:
疯狂的狮子Li 2023-01-31 21:02:51 +08:00
parent bff9720b6f
commit c67cc725d4
12 changed files with 60 additions and 17 deletions

View File

@ -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>

View File

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

View File

@ -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>

View File

@ -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();
}

View File

@ -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;

View File

@ -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;

View File

@ -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>-->

View File

@ -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")

View File

@ -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>

View File

@ -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;

View File

@ -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;
/**