Sha256: 4bf637141a5899866ab987d50ad01206da967460459d5ecde4dbb6ddb444c860

Contents?: true

Size: 752 Bytes

Versions: 5

Compression:

Stored size: 752 Bytes

Contents

module ShipCompliant
  # === ShipCompliant::SearchSalesOrderSummary
  #
  # Wraps the +SalesOrderSummary+ hash with a simple DSL
  # to provide easy access to various keys.
  class SearchSalesOrderSummary < Struct.new(:data)

    # Returns a +DateTime+ from the order +purchase_date+
    def purchase_date
      data[:purchase_date]
    end

    # Returns the +sales_order_key+
    def order_key
      data[:sales_order_key]
    end
    alias_method :sales_order_key, :order_key

    # Returns the parsed hash from the +ShipmentSummary+ element.
    #
    #   {
    #     compliance: 'ValueHere',
    #     requested_ship_date: DateTime,
    #     # etc...
    #   }
    def shipment_summary
      data[:shipments][:shipment_summary]
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ship_compliant-0.2.1 lib/ship_compliant/search_sales_order_summary.rb
ship_compliant-0.2.0 lib/ship_compliant/search_sales_order_summary.rb
ship_compliant-0.1.2 lib/ship_compliant/search_sales_order_summary.rb
ship_compliant-0.1.1 lib/ship_compliant/search_sales_order_summary.rb
ship_compliant-0.1.0 lib/ship_compliant/search_sales_order_summary.rb