Class: Api::Dashboard::ReviewsController

Inherits:
BaseController
  • Object
show all
Defined in:
app/controllers/api/dashboard/reviews_controller.rb

Instance Method Summary collapse

Methods inherited from BaseController

#current_user, #identity_cache_memoization, #restaurants, #set_options

Methods included from LogrageCustomLogger

#append_info_to_payload

Methods included from ControllerHelpers

#check_boolean_param, #get_banners, #inventory_params, #reservation_params

Methods included from ResponseCacheConcern

#my_response_cache

Instance Method Details

#indexObject



7
8
9
10
11
12
13
14
15
# File 'app/controllers/api/dashboard/reviews_controller.rb', line 7

def index
  reviews  = Review.joins(:reservation).where(reservations: {restaurant_id: restaurants.ids})
  filter_params = params.fetch(:filter, {})
  reviews = Api::Dashboard::ReviewsFilter.new(reviews)
  reviews.filter(filter_params)
  pagy, reviews = pagy(reviews.to_collections)

  render json: ::Api::Dashboard::ReviewSerializer.new(reviews, set_options(pagy)).as_json
end