Sha256: 7df667184d6aae1ff01512caabb8b8e3232842e2e6d0afe4da086246fd06a0d4

Contents?: true

Size: 922 Bytes

Versions: 2

Compression:

Stored size: 922 Bytes

Contents

module CarrierBotAPI
  class Fulfillment
    attr_reader :ordered_at, :fulfilled_at, :total_price, :service_code, :order_id, :fulfillment_id, :destination, :items

    def initialize(data)
      @ordered_at = data[:ordered_at]
      @fulfilled_at = data[:fulfilled_at]
      @total_price = data[:total_price]
      @service_code = data[:service_code]
      @order_id = data[:order_id]
      @fulfillment_id = data[:fulfillment_id]
      @destination = data[:destination]
      @items = data[:items]
    end

    def to_json
      {
        'ordered_at': self.ordered_at,
        'fulfilled_at': self.fulfilled_at,
        'total_price': self.total_price,
        'service_code': self.service_code,
        'order_id': self.order_id,
        'fulfillment_id': self.fulfillment_id,
        'destination': self.destination&.to_json,
        'items': self.items.map(&:to_json)
      }
    end
  end
end # module CarrierBotAPI

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
carrierbot_api-0.5.0 lib/carrierbot_api/fulfillment.rb
carrierbot_api-0.4.0 lib/carrierbot_api/fulfillment.rb