Class: DigiwinDsp::Resources::Order

Inherits:
Object
  • Object
show all
Defined in:
lib/digiwin_dsp/resources/order.rb

Constant Summary collapse

PATH =
"/v1/SalesOrder/add"

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client = Client.new) ⇒ Order

Returns a new instance of Order.



12
13
14
# File 'lib/digiwin_dsp/resources/order.rb', line 12

def initialize(client = Client.new)
  @client = client
end

Class Method Details

.create(records, idempotency_key: nil, digi_header: nil) ⇒ Object



8
9
10
# File 'lib/digiwin_dsp/resources/order.rb', line 8

def self.create(records, idempotency_key: nil, digi_header: nil)
  new.create(records, idempotency_key: idempotency_key, digi_header: digi_header)
end

Instance Method Details

#create(records, idempotency_key: nil, digi_header: nil) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/digiwin_dsp/resources/order.rb', line 16

def create(records, idempotency_key: nil, digi_header: nil)
  body = Serializers::SalesOrderSerializer.serialize(records, digi_header: digi_header)
  response = @client.post(PATH, body, idempotency_key: idempotency_key)
  response.fetch("response_detail") do
    raise DigiwinDsp::ServerError, "DSP returned Status=Success without response_detail"
  end
end