Class: Api::Aoa::V1::ReservationsController
- Inherits:
-
BaseController
- Object
- ActionController::API
- BaseController
- Api::Aoa::V1::ReservationsController
- Includes:
- EncryptableHelper
- Defined in:
- app/controllers/api/aoa/v1/reservations_controller.rb
Constant Summary
Constants inherited from BaseController
BaseController::CACHE_NAMESPACE
Instance Method Summary collapse
Methods included from EncryptableHelper
#decrypt, #encrypt, #generate_signature
Methods inherited from BaseController
Methods included from LogrageCustomLogger
Methods included from ResponseCacheConcern
Instance Method Details
#history ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'app/controllers/api/aoa/v1/reservations_controller.rb', line 6 def history decrypted_data = decrypt(params[:token]) aoa_user_id = decrypted_data if decrypted_data.present? reservations = Reservation.joins(:aoa_reservation). where(aoa_reservations: { aoa_user_id: aoa_user_id }).exclude_temporary.group('reservations.id') order_clause = params[:sort] == 'created_at_desc' ? 'reservations.created_at DESC' : 'reservations.id DESC' reservations = reservations.order(order_clause) pagy, reservations = pagy(reservations) pagy.vars[:metadata] = [:first_url, :prev_url, :page_url, :next_url, :last_url, :count] = { metadata: (pagy), } serialized_data = Api::Aoa::V1::ReservationSerializer.new(reservations).as_json.merge() render json: serialized_data end |
#show ⇒ Object
25 26 27 28 29 30 31 32 33 |
# File 'app/controllers/api/aoa/v1/reservations_controller.rb', line 25 def show aoa_user_id = decrypt(params[:token]) if params[:token].present? reservation = Reservation.includes(:aoa_reservation).where(id: params.require(:id), aoa_reservations: { aoa_user_id: aoa_user_id }).exclude_temporary.last serialized_data = Api::Aoa::V1::ReservationSerializer.new(reservation) render json: serialized_data end |