Sha256: b5e156f64786f8ad79f25143ae6340ff8dea0850cc958766f218e68e920bddf6

Contents?: true

Size: 1004 Bytes

Versions: 15

Compression:

Stored size: 1004 Bytes

Contents

require 'pina/models/sales_item'
require 'pina/models/sales_order'
require 'pina/collections/sales_order'

module Pina
  class SalesOrder
    class << self
      def new(params = nil)
        Pina::Models::SalesOrder.new(params)
      end

      def find(id)
        response = Pina::RestAdapter.get(:sales_orders, id)

        return Pina::Models::SalesOrder.new(attributes(response)) if
          response.ok?

        response
      end

      def where(hash, page = nil)
        response = Pina::RestAdapter.get(:sales_orders, hash)

        return Pina::Collections::SalesOrder.new(attributes(response)) if
          response.ok?

        response
      end

      def all(page = nil)
        response = Pina::RestAdapter.get(:sales_orders, page)

        return Pina::Collections::SalesOrder.new(attributes(response)) if
          response.ok?

        response
      end

      private

      def attributes(response)
        response.to_hash.merge(response: response)
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
pina-0.14.0 lib/pina/sales_order.rb
pina-0.13.0 lib/pina/sales_order.rb
pina-0.12.3 lib/pina/sales_order.rb
pina-0.12.2 lib/pina/sales_order.rb
pina-0.12.1 lib/pina/sales_order.rb
pina-0.12.0 lib/pina/sales_order.rb
pina-0.11.2 lib/pina/sales_order.rb
pina-0.11.1 lib/pina/sales_order.rb
pina-0.11.0 lib/pina/sales_order.rb
pina-0.10.1 lib/pina/sales_order.rb
pina-0.9.1 lib/pina/sales_order.rb
pina-0.8.1 lib/pina/sales_order.rb
pina-0.7.1 lib/pina/sales_order.rb
pina-0.6.1 lib/pina/sales_order.rb
pina-0.5.1 lib/pina/sales_order.rb