fix(iam-service): resolve 500 error on GET /api/v1/users endpoint

This commit is contained in:
Ho Ngoc Hai
2026-03-03 10:48:13 +07:00
parent ad6fe03b70
commit 617a7caf81
3 changed files with 11 additions and 7 deletions

View File

@@ -36,12 +36,12 @@ public class GetUsersQueryHandler : IRequestHandler<GetUsersQuery, GetUsersQuery
var userViewModels = users.Select(u => new UserViewModel(
u.Id,
u.Email!,
u.FirstName,
u.LastName,
u.FullName,
u.Status.Name,
u.CreatedAt,
u.Email ?? u.UserName ?? "",
u.FirstName ?? "",
u.LastName ?? "",
!string.IsNullOrEmpty(u.FirstName) ? u.FullName : (u.UserName ?? u.Email ?? ""),
u.Status?.Name ?? (u.LockoutEnd.HasValue && u.LockoutEnd > DateTimeOffset.UtcNow ? "Locked" : "Active"),
u.CreatedAt != default ? u.CreatedAt : DateTime.UtcNow,
u.LastLoginAt));
return new GetUsersQueryResult(

View File

@@ -70,6 +70,10 @@ public static class DependencyInjection
maxRetryDelay: TimeSpan.FromSeconds(10),
errorCodesToAdd: null);
});
// EN: Suppress PendingModelChangesWarning — backing field mappings don't change DB schema.
// VI: Suppress PendingModelChangesWarning — mapping backing fields không thay đổi DB schema.
options.ConfigureWarnings(w =>
w.Ignore(Microsoft.EntityFrameworkCore.Diagnostics.RelationalEventId.PendingModelChangesWarning));
});
}

View File

@@ -53,7 +53,7 @@ public class UserRepository : IUserRepository
var totalCount = await query.CountAsync(cancellationToken);
var users = await query
.OrderByDescending(u => u.CreatedAt)
.OrderByDescending(u => u.Id)
.Skip((pageNumber - 1) * pageSize)
.Take(pageSize)
.ToListAsync(cancellationToken);