Forráskód Böngészése

[task-2946]后端记录解密后的操作日志

szjbdgzl 1 éve
szülő
commit
5e48e2b18a

+ 15 - 0
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/untils/LogAopUtil.java

@@ -2,6 +2,8 @@ package com.lc.ibps.untils;
 
 import cn.hutool.core.date.StopWatch;
 import cn.hutool.json.JSONUtil;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.lc.ibps.base.web.context.ContextUtil;
 import com.lc.ibps.cloud.utils.RequestUtil;
 import org.aspectj.lang.ProceedingJoinPoint;
@@ -17,6 +19,8 @@ import java.util.Map;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
+import static com.lc.ibps.config.JsonUtilConfig.decrypt;
+
 /**
  * @author gaozl
  */
@@ -24,6 +28,17 @@ public class LogAopUtil {
 
 
     public static String filterParam(Object[] pointArgs){
+        ObjectMapper objectMapper = new ObjectMapper();
+        String ciphertext = "";
+        for (Object pointArg : pointArgs) {
+            try {
+                JsonNode jsonNode = objectMapper.readTree(pointArg.toString());
+                if (jsonNode.has("ciphertext") && !jsonNode.get("ciphertext").isNull()) {
+                    ciphertext = jsonNode.get("ciphertext").asText();
+                    pointArgs = new String[]{decrypt(ciphertext)};
+                }
+            } catch (Exception e) {}
+        }
         List<Object> paramList = Stream.of(pointArgs)
                 .filter(args -> !(args instanceof ServletRequest))
                 .filter(args -> !(args instanceof ServletResponse))