Class: Genba::Client::Orders

Inherits:
Object
  • Object
show all
Defined in:
lib/genba/client/orders.rb

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Orders

Returns a new instance of Orders.



6
7
8
# File 'lib/genba/client/orders.rb', line 6

def initialize(client)
  @client = client
end

Instance Method Details

#get(order_id, headers: {}) ⇒ Object

Retrieve an order



19
20
21
# File 'lib/genba/client/orders.rb', line 19

def get(order_id, headers: {})
  @client.rest_get_with_token("/orders/#{order_id}", {}, headers)
end

#get_by_ctid(ctid, headers: {}) ⇒ Object

Retrieve and order based on your Client transaction ID



32
33
34
# File 'lib/genba/client/orders.rb', line 32

def get_by_ctid(ctid, headers: {})
  @client.rest_get_with_token("/orders/ctid/#{ctid}", {}, headers)
end

#perform(order_request, headers: {}, options: {}) ⇒ Object

Order a product key



11
12
13
14
15
16
# File 'lib/genba/client/orders.rb', line 11

def perform(order_request, headers: {}, options: {})
  errors = Genba::OrderRequest.new.call(order_request).messages
  raise errors.inspect unless errors.empty?

  @client.rest_post_with_token('/orders', order_request, headers, options)
end

#perform_action(order_id, action_request, headers: {}, options: {}) ⇒ Object

Perform an action on a product, like ‘Return’



24
25
26
27
28
29
# File 'lib/genba/client/orders.rb', line 24

def perform_action(order_id, action_request, headers: {}, options: {})
  errors = Genba::ActionRequest.new.call(action_request).messages
  raise errors.inspect unless errors.empty?

  @client.rest_post_with_token("/orders/#{order_id}", action_request, headers)
end