Method: Deliveries::Couriers::MondialRelayDual.create_pickup

Defined in:
lib/deliveries/couriers/mondial_relay_dual.rb

.create_pickup(sender:, receiver:, parcels:, reference_code:, pickup_date: nil, remarks: nil, language: nil) ⇒ Object



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'lib/deliveries/couriers/mondial_relay_dual.rb', line 61

def create_pickup(sender:, receiver:, parcels:, reference_code:,
                  pickup_date: nil, remarks: nil, language: nil)
  params = Pickups::Create::FormatParams.new(
    sender: sender,
    receiver: receiver,
    parcels: parcels,
    reference_code: reference_code,
    remarks: remarks,
    language: language
  ).execute

  tracking_code, pdf_url = Shipments::Create.new(
    params: params
  ).execute.values_at(:tracking_code, :pdf_url)

  Deliveries::Pickup.new(
    courier_id: 'mondial_relay_dual',
    sender: sender,
    receiver: receiver,
    parcels: parcels,
    reference_code: reference_code,
    tracking_code: tracking_code,
    pickup_date: pickup_date,
    label: Label.new(url: pdf_url)
  )
end