Class: SpreeCmCommissioner::AccommodationSearchDetail

Inherits:
BaseInteractor
  • Object
show all
Defined in:
app/interactors/spree_cm_commissioner/accommodation_search_detail.rb

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name) ⇒ Object



19
20
21
22
23
24
25
# File 'app/interactors/spree_cm_commissioner/accommodation_search_detail.rb', line 19

def method_missing(name)
  if context.properties.key? name
    context.properties[name]
  else
    super
  end
end

Instance Method Details

#accommodation_queryObject



13
14
15
16
17
# File 'app/interactors/spree_cm_commissioner/accommodation_search_detail.rb', line 13

def accommodation_query
  SpreeCmCommissioner::AccommodationQuery.new(from_date: from_date, to_date: to_date, province_id: province_id,
                                              vendor_id: vendor_id
  ).with_available_inventory
end

#callObject



9
10
11
# File 'app/interactors/spree_cm_commissioner/accommodation_search_detail.rb', line 9

def call
  context.value = context.is_detail ? accommodation_query.first : accommodation_query.page(page).per(per_page)
end