public async Task <IActionResult> GetProductRatings( [FromRoute] int productId, [FromQuery] GetAllRatingsQuery query, [FromQuery] PaginationQuery paginationQuery, [FromQuery] SortQuery sortQuery) { var filter = mapper.Map <GetAllRatingsFilter>(query); var sortingFilter = sortingService.GetRatingSortingFilters(sortQuery); var paginationFilter = mapper.Map <PaginationFilter>(paginationQuery); var productQuery = new GetRatingsQuery { ProductId = productId, Filter = filter, Pagination = paginationFilter, Sorting = sortingFilter }; var result = await mediator.Send(productQuery).ConfigureAwait(false); return(Ok(paginationService.CreateProductRatingsPaginatedResponse(productId, paginationFilter, filter, sortingFilter, result))); }
public async Task <List <RatingResponse> > Handle( GetRatingsQuery request, CancellationToken cancellationToken) { var ratings = await ratingRepository .GetAllAsync(request.Filter, request.Pagination, request.Sorting) .ConfigureAwait(false); return(mapper.Map <List <RatingResponse> >(ratings)); }
public async Task <IEnumerable <RatingModel> > ExecuteAsync(GetRatingsQuery command, IEnumerable <RatingModel> previousResult) { return(await _cosmosStore .Query() .ToListAsync()); }
public async Task <List <RatingDto> > Handle(GetRatingsQuery request, CancellationToken cancellationToken) => await(from r in _context.Ratings join u in _context.Users on r.UserId equals u.UserId where r.PlaceId == request.PlaceId select new RatingDto(r.RatingId, r.RatingDate, r.Comment, r.Value, u.Username, u.Role != Roles.RestrictedUser)) .ToListAsync();