From a7ceaaa38a4394b82501ca60230e97d25a6871e3 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期六, 18 一月 2025 17:30:33 +0800
Subject: [PATCH] 1

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs |   68 ++++++++++++++++++----------------
 1 files changed, 36 insertions(+), 32 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs"
index 15b0ead..4637b01 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/HttpContextUser/AspNetUser.cs"
@@ -9,6 +9,7 @@
 using System.Security.Claims;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Core.Extensions;
 using WIDESEA_Core.Helper;
 using ICacheService = WIDESEA_Core.Caches.ICacheService;
 
@@ -46,49 +47,52 @@
 
         public string GetToken()
         {
-            string token = _accessor.HttpContext?.Request?.Headers["Authorization"].ObjToString().Replace("Bearer ", "") ?? "";
-            if (!token.IsNullOrEmpty())
+            string token = "";
+
+            if (MenuType == 0)
             {
+                token = _cacheService.Get(UserId.ToString());
+                if (!string.IsNullOrEmpty(token)) { return token; }
+                token = _accessor.HttpContext?.Request?.Headers["Authorization"].ObjToString().Replace("Bearer ", "") ?? "";
+                if (!token.IsNullOrEmpty())
+                {
+                    return token;
+                }
                 return token;
             }
-            //if (_accessor.HttpContext?.IsSuccessSwagger() == true)
-            //{
-            //    token = _accessor.HttpContext.GetSuccessSwaggerJwt();
-            //    if (token.IsNotEmptyOrNull())
-            //    {
-            //        //UserInfo userInfo = JwtHelper.SerializeJwt(token);
-            //        //if (userInfo.UserId > 0)
-            //        //{
-            //        //    return token;
-            //        //}
-            //        List<Claim> claims1 = _accessor.HttpContext.User.Claims.ToList();
-            //        if (_accessor.HttpContext.User.Claims.Any(s => s.Type == JwtRegisteredClaimNames.Jti))
-            //        {
-            //            return token;
-            //        }
-
-            //        var claims = new ClaimsIdentity(GetClaimsIdentity(token));
-            //        _accessor.HttpContext.User.AddIdentity(claims);
-            //        return token;
-            //    }
-            //}
-            token = _cacheService.Get(UserId.ToString());
-            if (!string.IsNullOrEmpty(token)) { return token; }
-            return token;
-
-            //    string token = _cacheService.Get(UserId.ToString());
-            //if (!string.IsNullOrEmpty(token)) { return token; }
-            //return string.Empty;
-            //return _accessor.HttpContext?.Request?.Headers["Authorization"].ObjToString().Replace("Bearer ", "") ?? "";
+            else
+            {
+                token = _cacheService.Get(UserId.ToString() + "-App");
+                if (!string.IsNullOrEmpty(token)) { return token; }
+                token = _accessor.HttpContext?.Request?.Headers["Authorization"].ObjToString().Replace("Bearer ", "") ?? "";
+                if (!token.IsNullOrEmpty())
+                {
+                    return token;
+                }
+                return token;
+            }
         }
 
         public void UpdateToke(string token)
         {
-            _cacheService.AddOrUpdate(UserId.ToString(), token);
+            if (MenuType == 0)
+                _cacheService.AddOrUpdate(UserId.ToString(), token);
+            else
+                _cacheService.AddOrUpdate(UserId.ToString() + "-App", token);
+        }
+
+        public void UpdateToke(string token, int userId)
+        {
+            if (MenuType == 0)
+                _cacheService.AddOrUpdate(userId.ToString(), token);
+            else
+                _cacheService.AddOrUpdate(userId.ToString() + "-App", token);
         }
 
         public bool IsSuperAdmin => IsRoleIdSuperAdmin(RoleId);
 
+        public bool IsHighestRole => UserId == 1;
+
         public List<string> GetUserInfoFromToken(string ClaimType)
         {
             var jwtHandler = new JwtSecurityTokenHandler();

--
Gitblit v1.9.3