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.
14379 14380 14381 14382 14383 14384 14385 14386 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14379 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.
14377 14378 14379 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14377 def email @email end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
14377 14378 14379 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14377 def name @name end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
14377 14378 14379 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14377 def number @number end |
#phone ⇒ Object (readonly)
Returns the value of attribute phone.
14377 14378 14379 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14377 def phone @phone end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
14392 14393 14394 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14392 def copy(incoming={}) Customer.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
14396 14397 14398 14399 14400 14401 14402 14403 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14396 def to_hash { :name => name.to_hash, :number => number, :phone => phone, :email => email } end |
#to_json ⇒ Object
14388 14389 14390 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14388 def to_json JSON.dump(to_hash) end |