From e9231d0a290335e2ae61d9507d747b54b487437d Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期四, 31 三月 2022 17:04:17 +0800
Subject: [PATCH] fix

---
 sandu-common/src/main/java/com/sandu/common/security/SecurityUtils.java |   25 +++++++++++--------------
 1 files changed, 11 insertions(+), 14 deletions(-)

diff --git a/sandu-common/src/main/java/com/sandu/common/security/SecurityUtils.java b/sandu-common/src/main/java/com/sandu/common/security/SecurityUtils.java
index c8b4bb2..ec8ac90 100644
--- a/sandu-common/src/main/java/com/sandu/common/security/SecurityUtils.java
+++ b/sandu-common/src/main/java/com/sandu/common/security/SecurityUtils.java
@@ -29,19 +29,16 @@
  */
 public class SecurityUtils {
 
-    public static UserDetails getUserDetails() {
+    public static LoginUserInfo getUserDetails() {
         final Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
         if (authentication == null) {
-//            throw new BusinessException(ResponseStatusEnums.TOKEN_INVALID.getCode(), ResponseStatusEnums.TOKEN_INVALID.getMessage());
             return null;
         }
-        if (authentication.getPrincipal() instanceof UserDetails) {
-            UserDetails userDetails = (UserDetails) authentication.getPrincipal();
-            UserDetailsService userDetailsService = SpringContextHolder.getBean(UserDetailsService.class);
-            return userDetailsService.loadUserByUsername(userDetails.getUsername());
+        if (authentication.getPrincipal() instanceof LoginUserInfo) {
+            LoginUserInfo loginUserInfo = (LoginUserInfo) authentication.getPrincipal();
+            return loginUserInfo;
         }
         return null;
-//        throw new BusinessException(ResponseStatusEnums.TOKEN_INVALID.getCode(), ResponseStatusEnums.TOKEN_INVALID.getMessage());
     }
 
     /**
@@ -52,12 +49,13 @@
     public static String getUsername() {
         final Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
         if (authentication == null) {
-//            throw new BusinessException(ResponseStatusEnums.TOKEN_INVALID.getCode(), ResponseStatusEnums.TOKEN_INVALID.getMessage());
             return "鏃犵櫥褰�";
         }
-//        UserDetails userDetails = (UserDetails) authentication.getPrincipal();
-//        return userDetails.getUsername();
-        return (String)authentication.getPrincipal();
+        if (authentication.getPrincipal() instanceof LoginUserInfo) {
+            LoginUserInfo loginUserInfo = (LoginUserInfo) authentication.getPrincipal();
+            return loginUserInfo.getUsername();
+        }
+        return "鏃犵櫥褰�";
     }
 
     /**
@@ -68,12 +66,11 @@
     public static Long getUserId() {
         SecurityProperties properties = SpringContextHolder.getBean(SecurityProperties.class);
         if (!properties.isCacheOnline()) {
-            Object obj = getUserDetails();
+            LoginUserInfo obj = getUserDetails();
             if (obj == null) {
                 return null;
             }
-            JSONObject json = new JSONObject(obj);
-            return json.getJSONObject("user").get("id", Long.class);
+            return obj.getUserId();
         } else {
             HttpServletRequest httpServletRequest = RequestHolder.getHttpServletRequest();
             JwtTokenProvider tokenProvider = SpringContextHolder.getBean(JwtTokenProvider.class);

--
Gitblit v1.9.3