From a7287db2ada9ef606db5fe81cc8b66e2da44d345 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期四, 07 八月 2025 10:56:22 +0800
Subject: [PATCH] pref:菜单排序

---
 FlexJobApi.User.Application/Resources/Queries/GetResourcesQueryHandler.cs |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/FlexJobApi.User.Application/Resources/Queries/GetResourcesQueryHandler.cs b/FlexJobApi.User.Application/Resources/Queries/GetResourcesQueryHandler.cs
index 127146b..a18b631 100644
--- a/FlexJobApi.User.Application/Resources/Queries/GetResourcesQueryHandler.cs
+++ b/FlexJobApi.User.Application/Resources/Queries/GetResourcesQueryHandler.cs
@@ -27,8 +27,6 @@
             var q = rep.AsQueryable().AsNoTracking()
                 .OrderBy(it => it.Route)
                 .Where(it => !it.IsExpired);
-            if (request.Service.IsNotNull())
-                q = q.Where(it => it.Service == request.Service);
             if (request.Method.HasValue)
                 q = q.Where(it => it.Method == request.Method);
             if (request.Keywords.IsNotNull())
@@ -39,6 +37,16 @@
                     || it.RequestTypeName.Contains(request.Keywords)
                     || it.ResponseTypeName.Contains(request.Keywords));
             var items = await q.ProjectToType<GetResourcesQueryResultItem>().ToListAsync();
+
+            if (request.RoleId.HasValue)
+            {
+                var roleResourceIds = await rep.Change<RoleResource>().Where(it => it.RoleId == request.RoleId).Select(it => it.ResourceId).ToListAsync();
+                foreach (var item in items)
+                {
+                    item.IsChecked = roleResourceIds.Contains(item.Id);
+                }
+            }
+
             return items;
         }
     }

--
Gitblit v1.9.1