From 0b49fee10340ea40a6762da657239675d3db22f6 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期四, 07 八月 2025 09:41:31 +0800
Subject: [PATCH] feat:权限和请求日志

---
 FlexJobApi.User.Application/Auths/Queries/GetCurrentLogierMenuQueryHandler.cs |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/FlexJobApi.User.Application/Auths/Queries/GetCurrentLogierMenuQueryHandler.cs b/FlexJobApi.User.Application/Auths/Queries/GetCurrentLogierMenuQueryHandler.cs
index b83b5a3..a4d973e 100644
--- a/FlexJobApi.User.Application/Auths/Queries/GetCurrentLogierMenuQueryHandler.cs
+++ b/FlexJobApi.User.Application/Auths/Queries/GetCurrentLogierMenuQueryHandler.cs
@@ -35,9 +35,11 @@
                 .FirstOrDefaultAsync(cancellationToken);
             if (model == null) throw Oops.Oh(EnumErrorCodeType.s404, "璇ヨ彍鍗�");
             var items = await (from m in repMenu.AsQueryable().AsNoTracking()
-                               join rm in repRoleMenu.AsQueryable().AsNoTracking() on m.Id equals rm.MenuId
-                               join ur in repUserInfoRole.AsQueryable().AsNoTracking() on rm.RoleId equals ur.RoleId
-                               where m.ParentId == request.Id && ur.UserInfoId == logier.UserInfoId && !m.IsDisabled
+                               join rm in repRoleMenu.AsQueryable().AsNoTracking() on m.Id equals rm.MenuId into rmg
+                               from rmgi in rmg.DefaultIfEmpty()
+                               join ur in repUserInfoRole.AsQueryable().AsNoTracking() on rmgi.RoleId equals ur.RoleId into urg
+                               from urgi in urg.DefaultIfEmpty()
+                               where m.ParentId == request.Id && (logier.Level == 999 || urgi.UserInfoId == logier.UserInfoId) && !m.IsDisabled
                                && (m.Type == EnumMenuType.Button || m.Type == EnumMenuType.Field)
                                select m).ProjectToType<GetMenuQueryResultItem>().ToListAsync(cancellationToken);
             model.Groups = items.GroupBy(it => it.Group ?? "default")

--
Gitblit v1.9.1