Class: Io::Flow::V0::Models::Customer
- Inherits:
-
Object
- Object
- Io::Flow::V0::Models::Customer
- 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
-
#email ⇒ Object
readonly
Returns the value of attribute email.
-
#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 = {}) ⇒ Customer
constructor
A new instance of Customer.
- #to_hash ⇒ Object
- #to_json ⇒ Object
Constructor Details
#initialize(incoming = {}) ⇒ Customer
Returns a new instance of Customer.
14590 14591 14592 14593 14594 14595 14596 14597 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14590 def initialize(incoming={}) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:name], 'Customer') @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)) end |
Instance Attribute Details
#email ⇒ Object (readonly)
Returns the value of attribute email.
14588 14589 14590 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14588 def email @email end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
14588 14589 14590 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14588 def name @name end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
14588 14589 14590 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14588 def number @number end |
#phone ⇒ Object (readonly)
Returns the value of attribute phone.
14588 14589 14590 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14588 def phone @phone end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
14603 14604 14605 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14603 def copy(incoming={}) Customer.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
14607 14608 14609 14610 14611 14612 14613 14614 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14607 def to_hash { :name => name.to_hash, :number => number, :phone => phone, :email => email } end |
#to_json ⇒ Object
14599 14600 14601 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14599 def to_json JSON.dump(to_hash) end |