Class: Io::Flow::V0::Models::OrderCustomer
- Inherits:
-
Object
- Object
- Io::Flow::V0::Models::OrderCustomer
- Defined in:
- lib/flow_commerce/flow_api_v0_client.rb
Overview
A customer represents the actual person purchasing from you. This information is needed primarily to support logistics (delivery to this person), fraud management (verification of who the person is), and reporting. We also recommend including your customer number whenever possible as doing so will allow Flow to link up transactions for this customer making customer service easier.
Instance Attribute Summary collapse
-
#address ⇒ Object
readonly
Returns the value of attribute address.
-
#email ⇒ Object
readonly
Returns the value of attribute email.
-
#invoice ⇒ Object
readonly
Returns the value of attribute invoice.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#number ⇒ Object
readonly
Returns the value of attribute number.
-
#phone ⇒ Object
readonly
Returns the value of attribute phone.
Instance Method Summary collapse
- #copy(incoming = {}) ⇒ Object
-
#initialize(incoming = {}) ⇒ OrderCustomer
constructor
A new instance of OrderCustomer.
- #to_hash ⇒ Object
- #to_json ⇒ Object
Constructor Details
#initialize(incoming = {}) ⇒ OrderCustomer
Returns a new instance of OrderCustomer.
38606 38607 38608 38609 38610 38611 38612 38613 38614 38615 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38606 def initialize(incoming={}) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:name], 'OrderCustomer') @name = (x = opts.delete(:name); x.is_a?(::Io::Flow::V0::Models::Name) ? x : ::Io::Flow::V0::Models::Name.new(x)) @number = (x = opts.delete(:number); x.nil? ? nil : HttpClient::Preconditions.assert_class('number', x, String)) @phone = (x = opts.delete(:phone); x.nil? ? nil : HttpClient::Preconditions.assert_class('phone', x, String)) @email = (x = opts.delete(:email); x.nil? ? nil : HttpClient::Preconditions.assert_class('email', x, String)) @address = (x = opts.delete(:address); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::BillingAddress) ? x : ::Io::Flow::V0::Models::BillingAddress.new(x))) @invoice = (x = opts.delete(:invoice); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::CustomerInvoice) ? x : ::Io::Flow::V0::Models::CustomerInvoice.new(x))) end |
Instance Attribute Details
#address ⇒ Object (readonly)
Returns the value of attribute address.
38604 38605 38606 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38604 def address @address end |
#email ⇒ Object (readonly)
Returns the value of attribute email.
38604 38605 38606 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38604 def email @email end |
#invoice ⇒ Object (readonly)
Returns the value of attribute invoice.
38604 38605 38606 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38604 def invoice @invoice end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
38604 38605 38606 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38604 def name @name end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
38604 38605 38606 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38604 def number @number end |
#phone ⇒ Object (readonly)
Returns the value of attribute phone.
38604 38605 38606 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38604 def phone @phone end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
38621 38622 38623 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38621 def copy(incoming={}) OrderCustomer.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
38625 38626 38627 38628 38629 38630 38631 38632 38633 38634 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38625 def to_hash { :name => name.to_hash, :number => number, :phone => phone, :email => email, :address => address.nil? ? nil : address.to_hash, :invoice => invoice.nil? ? nil : invoice.to_hash } end |
#to_json ⇒ Object
38617 38618 38619 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 38617 def to_json JSON.dump(to_hash) end |