Class: SpreeCmCommissioner::Integrations::VireakBuntham::Resources::ConfirmBookingRequest
- Inherits:
-
Object
- Object
- SpreeCmCommissioner::Integrations::VireakBuntham::Resources::ConfirmBookingRequest
- Defined in:
- app/services/spree_cm_commissioner/integrations/vireak_buntham/resources/confirm_booking_request.rb
Overview
Request payload for POST /booking/confirm.
VET (Spring backend) expects seat fields as repeated flat keys —nationality=1&nationality=2&seatName=a&seatName=b — which it binds into parallel List<T> fields on ApiConfirmBooking. Indexed (nationality=) or array-bracket (nationality[]=) syntax does not work.
Constant Summary collapse
- SEAT_FIELDS =
{ nationality: 'nationality', gender: 'seatGender', name: 'seatName', price: 'seatPrice', seat: 'seatNum' }.freeze
Instance Attribute Summary collapse
-
#payload ⇒ Object
readonly
Returns the value of attribute payload.
Instance Method Summary collapse
-
#initialize(payload) ⇒ ConfirmBookingRequest
constructor
A new instance of ConfirmBookingRequest.
- #to_form ⇒ Object
- #to_pairs ⇒ Object
Constructor Details
#initialize(payload) ⇒ ConfirmBookingRequest
Returns a new instance of ConfirmBookingRequest.
19 20 21 |
# File 'app/services/spree_cm_commissioner/integrations/vireak_buntham/resources/confirm_booking_request.rb', line 19 def initialize(payload) @payload = payload end |
Instance Attribute Details
#payload ⇒ Object (readonly)
Returns the value of attribute payload.
17 18 19 |
# File 'app/services/spree_cm_commissioner/integrations/vireak_buntham/resources/confirm_booking_request.rb', line 17 def payload @payload end |
Instance Method Details
#to_form ⇒ Object
23 24 25 |
# File 'app/services/spree_cm_commissioner/integrations/vireak_buntham/resources/confirm_booking_request.rb', line 23 def to_form URI.encode_www_form(to_pairs) end |
#to_pairs ⇒ Object
27 28 29 |
# File 'app/services/spree_cm_commissioner/integrations/vireak_buntham/resources/confirm_booking_request.rb', line 27 def to_pairs header_pairs + seat_pairs end |