Class: Moltin::Resource::Order

Inherits:
Api::CrudResource show all
Defined in:
lib/moltin/resource/order.rb

Instance Attribute Summary

Attributes inherited from Api::CrudResource

#data

Instance Method Summary collapse

Methods inherited from Api::CrudResource

all, #assign_attributes, attributes, create, #delete, find, find_by, #initialize, #method_missing, #model_name, #persisted?, #respond_to?, #route_key, #save, search, #to_hash, #to_key, #to_model, #to_s

Constructor Details

This class inherits a constructor from Moltin::Api::CrudResource

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Moltin::Api::CrudResource

Instance Method Details

#bill_toObject



19
20
21
# File 'lib/moltin/resource/order.rb', line 19

def bill_to
  Moltin::Resource::Address.new @data['ship_to']['data']
end

#gatewayObject



27
28
29
# File 'lib/moltin/resource/order.rb', line 27

def gateway
  Moltin::Resource::Gateway.new @data['gateway']['data']
end

#ship_toObject



15
16
17
# File 'lib/moltin/resource/order.rb', line 15

def ship_to
  Moltin::Resource::Address.new @data['ship_to']['data']
end

#shippingObject



23
24
25
# File 'lib/moltin/resource/order.rb', line 23

def shipping
  Moltin::Resource::ShippingMethod.new @data['shipping']['data']
end

#to_payObject



31
32
33
34
# File 'lib/moltin/resource/order.rb', line 31

def to_pay
  price = (@data['totals']['raw']['shipping_price'] + @data['totals']['raw']['total']).round(2)
  @data['currency']['data']['format'].gsub('{price}', sprintf('%5.2f', price))
end