using Microsoft.EntityFrameworkCore; using Netina.Domain.Entities.Accounting; namespace Netina.Repository.Handlers.Accounting; public class GetPaymentsQueryHandler : IRequestHandler> { private readonly IRepositoryWrapper _repositoryWrapper; public GetPaymentsQueryHandler(IRepositoryWrapper repositoryWrapper) { _repositoryWrapper = repositoryWrapper; } public async Task> Handle(GetPaymentsQuery request, CancellationToken cancellationToken) { return await _repositoryWrapper.SetRepository() .TableNoTracking .OrderByDescending(o=>o.CreatedAt) .Skip(20 * request.Page) .Take(20) .Select(PaymentMapper.ProjectToSDto) .ToListAsync(cancellationToken); } }