public async Task <Dto.Common.Page <Movie> > GetMoviesAsync(MoviesQueryFilter queryFilter) { var orderByFilters = _orderByFilterParser.Parse <Movie>(queryFilter?.Orderby) ?? new[] { nameof(Movie.Date) }; var pagingFilter = new MoviesPagingFilter { OrderBy = orderByFilters, Page = queryFilter?.Page, Size = queryFilter?.Size, SearchQuery = queryFilter?.Search, Studios = queryFilter?.Studios, Categories = queryFilter?.Categories, Models = queryFilter?.Models, Date = queryFilter?.Date }; var page = await _movies.FindMoviesAsync(pagingFilter); var result = new Dto.Common.Page <Movie> { Data = _mapper.Map <IEnumerable <Movie> >(page.Data), Size = page.Size, Offset = page.Offset, Total = page.Total }; return(result); }
public async Task <IActionResult> GetAllMoviesAsync([FromQuery] MoviesQueryFilter filter, CancellationToken cancellationToken) => await _processor.ProcessAsync(new MoviesQuery { Filter = filter }, cancellationToken);
public async Task <IActionResult> GetMoviesAsync([FromQuery] MoviesQueryFilter queryFilter) { var page = await _movieService.GetMoviesAsync(queryFilter); return(Ok(page)); }