🐛 Fixes of withStatus
This commit is contained in:
@@ -487,8 +487,7 @@ public class ChatRoomController(
|
|||||||
public async Task<ActionResult<List<ChatMember>>> ListMembers(Guid roomId,
|
public async Task<ActionResult<List<ChatMember>>> ListMembers(Guid roomId,
|
||||||
[FromQuery] int take = 20,
|
[FromQuery] int take = 20,
|
||||||
[FromQuery] int offset = 0,
|
[FromQuery] int offset = 0,
|
||||||
[FromQuery] bool withStatus = false,
|
[FromQuery] bool withStatus = false
|
||||||
[FromQuery] string? status = null
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
var currentUser = HttpContext.Items["CurrentUser"] as Account;
|
var currentUser = HttpContext.Items["CurrentUser"] as Account;
|
||||||
@@ -519,18 +518,12 @@ public class ChatRoomController(
|
|||||||
members.Select(m => m.AccountId).ToList()
|
members.Select(m => m.AccountId).ToList()
|
||||||
);
|
);
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(status))
|
|
||||||
{
|
|
||||||
members = members
|
|
||||||
.Select(m =>
|
|
||||||
{
|
|
||||||
m.Status = memberStatuses.TryGetValue(m.AccountId, out var s) ? s : null;
|
|
||||||
return m;
|
|
||||||
})
|
|
||||||
.ToList();
|
|
||||||
}
|
|
||||||
|
|
||||||
members = members
|
members = members
|
||||||
|
.Select(m =>
|
||||||
|
{
|
||||||
|
m.Status = memberStatuses.TryGetValue(m.AccountId, out var s) ? s : null;
|
||||||
|
return m;
|
||||||
|
})
|
||||||
.OrderByDescending(m => m.Status?.IsOnline ?? false)
|
.OrderByDescending(m => m.Status?.IsOnline ?? false)
|
||||||
.ToList();
|
.ToList();
|
||||||
|
|
||||||
|
@@ -216,8 +216,7 @@ public class RealmController(
|
|||||||
string slug,
|
string slug,
|
||||||
[FromQuery] int offset = 0,
|
[FromQuery] int offset = 0,
|
||||||
[FromQuery] int take = 20,
|
[FromQuery] int take = 20,
|
||||||
[FromQuery] bool withStatus = false,
|
[FromQuery] bool withStatus = false
|
||||||
[FromQuery] string? status = null
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
var realm = await db.Realms
|
var realm = await db.Realms
|
||||||
@@ -246,20 +245,14 @@ public class RealmController(
|
|||||||
members.Select(m => m.AccountId).ToList()
|
members.Select(m => m.AccountId).ToList()
|
||||||
);
|
);
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(status))
|
|
||||||
{
|
|
||||||
members = members
|
members = members
|
||||||
.Select(m =>
|
.Select(m =>
|
||||||
{
|
{
|
||||||
m.Status = memberStatuses.TryGetValue(m.AccountId, out var s) ? s : null;
|
m.Status = memberStatuses.TryGetValue(m.AccountId, out var s) ? s : null;
|
||||||
return m;
|
return m;
|
||||||
})
|
})
|
||||||
|
.OrderByDescending(m => m.Status?.IsOnline ?? false)
|
||||||
.ToList();
|
.ToList();
|
||||||
}
|
|
||||||
|
|
||||||
members = members
|
|
||||||
.OrderByDescending(m => m.Status?.IsOnline ?? false)
|
|
||||||
.ToList();
|
|
||||||
|
|
||||||
var total = members.Count;
|
var total = members.Count;
|
||||||
Response.Headers.Append("X-Total", total.ToString());
|
Response.Headers.Append("X-Total", total.ToString());
|
||||||
|
Reference in New Issue
Block a user