From d1f8b2ed17b5290bc67b5fb757dde1a381a88907 Mon Sep 17 00:00:00 2001
From: zendwang <wangzhenxian@idadt.com>
Date: 星期一, 04 七月 2022 13:07:07 +0800
Subject: [PATCH] update 优化魔法值

---
 ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java b/ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java
index 2b4fef4..b29d9c6 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java
@@ -1,5 +1,6 @@
 package com.ruoyi.common.jackson;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.fasterxml.jackson.core.JsonGenerator;
 import com.fasterxml.jackson.databind.BeanProperty;
 import com.fasterxml.jackson.databind.JsonMappingException;
@@ -7,14 +8,16 @@
 import com.fasterxml.jackson.databind.SerializerProvider;
 import com.fasterxml.jackson.databind.ser.ContextualSerializer;
 import com.ruoyi.common.annotation.Sensitive;
+import com.ruoyi.common.core.service.SensitiveService;
 import com.ruoyi.common.enums.SensitiveStrategy;
-import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.spring.SpringUtils;
 
 import java.io.IOException;
 import java.util.Objects;
 
 /**
  * 鏁版嵁鑴辨晱json搴忓垪鍖栧伐鍏�
+ *
  * @author Yjoioooo
  */
 public class SensitiveJsonSerializer extends JsonSerializer<String> implements ContextualSerializer {
@@ -23,10 +26,11 @@
 
     @Override
     public void serialize(String value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
-        if (SecurityUtils.isAdmin(SecurityUtils.getLoginUser().getUserId()) || SecurityUtils.getLoginUser().getMenuPermissions().contains("Sensitive")){
-            gen.writeString(value);
-        } else {
+        SensitiveService sensitiveService = SpringUtils.getBean(SensitiveService.class);
+        if (ObjectUtil.isNotNull(sensitiveService) && sensitiveService.isSensitive()) {
             gen.writeString(strategy.desensitizer().apply(value));
+        } else {
+            gen.writeString(value);
         }
 
     }
@@ -34,7 +38,7 @@
     @Override
     public JsonSerializer<?> createContextual(SerializerProvider prov, BeanProperty property) throws JsonMappingException {
         Sensitive annotation = property.getAnnotation(Sensitive.class);
-        if (Objects.nonNull(annotation)&&Objects.equals(String.class, property.getType().getRawClass())) {
+        if (Objects.nonNull(annotation) && Objects.equals(String.class, property.getType().getRawClass())) {
             this.strategy = annotation.strategy();
             return this;
         }

--
Gitblit v1.9.3