Sha256: 9cc401b9aa90b272d718fc51815823b59b5281a83b66df42e9bd6d45ea9315c3

Contents?: true

Size: 1 KB

Versions: 3

Compression:

Stored size: 1 KB

Contents

module CarrierBotAPI
  class Fulfillment
    attr_reader :ordered_at, :fulfilled_at, :total_price, :service_code, :shipping_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]
      @shipping_code = data[:shipping_code]
      @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,
        'shipping_code': self.shipping_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

3 entries across 3 versions & 1 rubygems

Version Path
carrierbot_api-0.5.3 lib/carrierbot_api/fulfillment.rb
carrierbot_api-0.5.2 lib/carrierbot_api/fulfillment.rb
carrierbot_api-0.5.1 lib/carrierbot_api/fulfillment.rb