public async Task <ListResponse <RestaurantsListItemDto> > ListAsync(ListRestaurantsRequest request) { var filter = _mapper.Map <ListRestaurantsRequest, RestaurantsFilter>(request); var sort = _mapper.Map <ListRestaurantsRequest, Sort>(request); var paging = _mapper.Map <ListRestaurantsRequest, Paging>(request); var restaurants = await _restaurantRepository.GetListAsync(filter, sort, paging); var restaurantsCount = await _restaurantRepository.CountAsync(filter); var restaurantsDtosList = _mapper.Map <List <Restaurant>, List <RestaurantsListItemDto> >(restaurants); return(new ListResponse <RestaurantsListItemDto>(restaurantsDtosList, restaurantsCount)); }
public async Task <IActionResult> List([FromQuery] ListRestaurantsRequest request) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var response = await _restaurantService.ListAsync(request); if (!response.IsValid) { return(BadRequest(response.Message)); } return(Ok(response)); }