Api/NetinaShop.Repository/Handlers/Discounts/GetDiscountsQueryHandler.cs

23 lines
860 B
C#
Raw Normal View History

2024-02-12 22:01:15 +03:30
using Microsoft.EntityFrameworkCore;
namespace NetinaShop.Repository.Handlers.Discounts;
public class GetDiscountsQueryHandler : IRequestHandler<GetDiscountsQuery, List<DiscountSDto>>
{
private readonly IRepositoryWrapper _repositoryWrapper;
public GetDiscountsQueryHandler(IRepositoryWrapper repositoryWrapper)
{
_repositoryWrapper = repositoryWrapper;
}
public async Task<List<DiscountSDto>> Handle(GetDiscountsQuery request, CancellationToken cancellationToken)
{
2024-04-15 16:38:58 +03:30
var discounts = await _repositoryWrapper.SetRepository<Discount>().TableNoTracking
.Where(d=>!d.IsSpecialOffer)
.OrderByDescending(b => b.CreatedAt)
2024-02-03 10:34:48 +03:30
.Skip(request.Page * 15).Take(15)
.Select(DiscountMapper.ProjectToSDto)
.ToListAsync(cancellationToken);
2024-04-15 16:38:58 +03:30
return discounts;
}
}