Class: Gillbus::PassengerDiscount

Inherits:
BaseRequest show all
Defined in:
lib/gillbus/structs/passenger_discount.rb

Overview

not a request, neither a response part just a params record for SearchTrips

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseRequest

#initialize, #method, #path

Constructor Details

This class inherits a constructor from Gillbus::BaseRequest

Instance Attribute Details

#birthdayObject

passenger0birthday… passengerNbirthday (обязательный для авиаперевозки) Дата рождения пассажира с порядковым номером 0…N.



12
13
14
# File 'lib/gillbus/structs/passenger_discount.rb', line 12

def birthday
  @birthday
end

#isicObject

passenger0ISIC…passengerNISIC (не обязательный) Номер ISIC пассажира с порядковым номером 0…N.



25
26
27
# File 'lib/gillbus/structs/passenger_discount.rb', line 25

def isic
  @isic
end

#student_ticketObject

passenger0studentTicket… passengerNstudentTicket (не обязательный) Номер студенческого билета пассажира с порядковым номером 0… N.



16
17
18
# File 'lib/gillbus/structs/passenger_discount.rb', line 16

def student_ticket
  @student_ticket
end

#student_yearObject

passenger0studentYear… passengerNstudentYear (не обязательный) Курс, на котором учится пассажир с порядковым номером 0…N, если он студент. Для просчета более выгодной скидки.



21
22
23
# File 'lib/gillbus/structs/passenger_discount.rb', line 21

def student_year
  @student_year
end

#with_seatObject

passenger0withSeat…passengerNwithSeat (не обязательный), boolean Признак обязательного предоставления места пассажиру с порядковым номером 0…N. По-умолчанию false. Если true, то пассажиру будет подобран тариф с предоставлением места, если такой имеется.



31
32
33
# File 'lib/gillbus/structs/passenger_discount.rb', line 31

def with_seat
  @with_seat
end

Class Method Details

.wrap(passenger_or_params) ⇒ Object



5
6
7
8
# File 'lib/gillbus/structs/passenger_discount.rb', line 5

def self.wrap(passenger_or_params)
  return passenger_or_params if passenger_or_params.is_a? self
  new(passenger_or_params)
end

Instance Method Details

#params(prefix = '') ⇒ Object



33
34
35
36
37
38
39
40
41
# File 'lib/gillbus/structs/passenger_discount.rb', line 33

def params(prefix = '')
  compact(
    birthday: date(birthday),
    studentTicket: student_ticket,
    studentYear: student_year,
    ISIC: isic,
    withSeat: bool(with_seat),
  ).map { |k, v| [:"#{prefix}#{k}", v] }.to_h
end