From 71bfdaafa8176cf686b03244ee758de058080a71 Mon Sep 17 00:00:00 2001 From: nsnail Date: Tue, 26 Nov 2024 10:10:25 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B=20=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E5=99=A8=E6=8A=A5=E9=94=99=20(#220)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: tk --- .../Services/Sys/UserService.cs | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/backend/NetAdmin/NetAdmin.SysComponent.Application/Services/Sys/UserService.cs b/src/backend/NetAdmin/NetAdmin.SysComponent.Application/Services/Sys/UserService.cs index f995f012..42b5d001 100644 --- a/src/backend/NetAdmin/NetAdmin.SysComponent.Application/Services/Sys/UserService.cs +++ b/src/backend/NetAdmin/NetAdmin.SysComponent.Application/Services/Sys/UserService.cs @@ -231,18 +231,21 @@ public sealed class UserService( public async Task> PagedQueryAsync(PagedQueryReq req) { req.ThrowIfInvalid(); - var listUserExp = req.GetToListExp() ?? _listUserExp; - var select = await QueryInternalAsync(req, listUserExp == _listUserExp).ConfigureAwait(false); - var list = await select.Page(req.Page, req.PageSize) - #if DBTYPE_SQLSERVER - .WithLock(SqlServerLock.NoLock | SqlServerLock.NoWait) - #endif - .Count(out var total) - .ToListAsync(listUserExp) - .ConfigureAwait(false); - return new PagedQueryRsp(req.Page, req.PageSize, total - , list.Select(x => x with { Roles = x.Roles.OrderBy(y => y.Sort).ThenBy(y => y.Id).ToList() }) - .Adapt>()); + var listUserExp = req.GetToListExp() ?? _listUserExp; + var includeRoles = listUserExp == _listUserExp; + var select = await QueryInternalAsync(req, includeRoles).ConfigureAwait(false); + IEnumerable list = await select.Page(req.Page, req.PageSize) + #if DBTYPE_SQLSERVER + .WithLock(SqlServerLock.NoLock | SqlServerLock.NoWait) + #endif + .Count(out var total) + .ToListAsync(listUserExp) + .ConfigureAwait(false); + if (includeRoles) { + list = list.Select(x => x with { Roles = x.Roles.OrderBy(y => y.Sort).ThenBy(y => y.Id).ToList() }); + } + + return new PagedQueryRsp(req.Page, req.PageSize, total, list.Adapt>()); } ///