using AutoMapper; using MediatR; using mws.backend.dotnet.application.Common; namespace mws.backend.dotnet.application.MasterData; public record GetMasterDataListQuery(string? Group, int Page, int PageSize) : IRequest>; public class GetMasterDataListHandler(IUnitOfWork uow, IMapper mapper) : IRequestHandler> { public async Task> Handle(GetMasterDataListQuery query, CancellationToken ct) { var entries = await uow.MasterData.GetAllAsync(query.Group, query.Page, query.PageSize, ct); return new PagedResult { Items = mapper.Map>(entries.Items), TotalCount = entries.TotalCount, Page = entries.Page, PageSize = entries.PageSize, }; } }