From 3fd15bc3818a16c20ca48f1a98a41e2bb456bdb7 Mon Sep 17 00:00:00 2001
From: liuxm <liuxm@fescotech.com>
Date: 星期三, 24 四月 2024 15:41:00 +0800
Subject: [PATCH] 日志管理--添加字段;登录验证码验证后删除

---
 pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/LogAspect.java |   63 ++++++++++++++++++++-----------
 1 files changed, 41 insertions(+), 22 deletions(-)

diff --git a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/LogAspect.java b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/LogAspect.java
index db1e48e..1086ddc 100644
--- a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/LogAspect.java
+++ b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/LogAspect.java
@@ -1,12 +1,14 @@
 package com.dy.pmsGlobal.aop;
 
-import com.dy.common.util.ObjectToMapUtil;
+import com.alibaba.fastjson2.JSONObject;
 import com.dy.common.webFilter.UserTokenContext;
 import com.dy.common.webUtil.BaseResponse;
 import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.pmsGlobal.pojoBa.BaUser;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.mysql.cj.util.StringUtils;
 import jakarta.servlet.http.HttpServletRequest;
+import lombok.extern.slf4j.Slf4j;
 import org.aspectj.lang.JoinPoint;
 import org.aspectj.lang.annotation.AfterReturning;
 import org.aspectj.lang.annotation.Aspect;
@@ -23,8 +25,7 @@
 import org.springframework.web.context.request.ServletRequestAttributes;
 import org.springframework.web.util.UriComponentsBuilder;
 
-import java.util.Map;
-
+@Slf4j
 @Aspect
 @Component
 public class LogAspect {
@@ -44,24 +45,24 @@
     }
 
     @AfterReturning(pointcut = "@annotation(com.dy.pmsGlobal.aop.Log)", returning = "result")
-    public void logAfterReturning(JoinPoint joinPoint, Object result) {
-        //缁撴灉
-        BaseResponse res = (BaseResponse)result;
-        res.isSuccess();
-        // 鑾峰彇鐢ㄦ埛淇℃伅
-        BaUser user = (BaUser)getCurUser(res);
-        if(user!=null){
-            Long operator = user.id;
-            // 鑾峰彇鏂规硶鐨勪腑鏂囨弿杩�
-            MethodSignature sign = (MethodSignature) joinPoint.getSignature();
-            Log logDesc = sign.getMethod().getAnnotation(Log.class);
-            String operationName = logDesc.value();
-            // 鑾峰彇IP鍦板潃
-            String ip = getRemoteHost();
-            // 璁板綍鏃ュ織
-            logSv.save(operator, operationName,ip);
+    public void logAfterReturning(JoinPoint joinPoint, BaseResponse result) {
+        try{
+            // 鑾峰彇鐢ㄦ埛淇℃伅
+            BaUser user = (BaUser)getCurUser(result);
+            if(user!=null && user.id !=null && !StringUtils.isNullOrEmpty(user.name)){
+                Long operator = user.id;
+                // 鑾峰彇鏂规硶鐨勪腑鏂囨弿杩�
+                MethodSignature sign = (MethodSignature) joinPoint.getSignature();
+                Log logDesc = sign.getMethod().getAnnotation(Log.class);
+                String operationName = logDesc.value();
+                // 鑾峰彇IP鍦板潃
+                String ip = getRemoteHost();
+                // 璁板綍鏃ュ織
+                logSv.save(operator, operationName,ip,result.getCode(),result.getMsg());
+            }
+        }catch (Exception e){
+            log.error("璁板綍鏃ュ織寮傚父:"+e.getMessage());
         }
-
     }
 
     /**
@@ -73,8 +74,10 @@
         if(!StringUtils.isNullOrEmpty(SsoCurUserUrl)){
             String token = UserTokenContext.get();
             if(StringUtils.isNullOrEmpty(token)){
-                Map<String,Object> resMap = ObjectToMapUtil.objectToMap(response.getContent());
-                token =resMap.containsKey("token")?resMap.get("token").toString():"";
+                JSONObject res = objectToJson(response.getContent());
+                if(res!=null && res.containsKey("token")){
+                    token = res.get("token").toString();
+                }
             }
 
             String url = UriComponentsBuilder.fromUriString(SsoCurUserUrl)
@@ -116,4 +119,20 @@
         }
         return "0:0:0:0:0:0:0:1".equals(ip) ? "127.0.0.1" : ip;
     }
+
+    /**
+     * 灏嗗璞¤浆鎹负JSONObject
+     * @param obj
+     * @return
+     */
+    public static JSONObject objectToJson(Object obj) {
+        ObjectMapper mapper = new ObjectMapper();
+        try {
+            JSONObject o = JSONObject.parseObject(mapper.writeValueAsString(obj));
+            return o;
+        } catch (Exception e) {
+            log.error("瀵硅薄杞崲涓篔SONObject澶辫触:"+e.getMessage());
+            return null;
+        }
+    }
 }

--
Gitblit v1.8.0