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.
11376 11377 11378 11379 11380 11381 11382 11383 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11376 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.
11374 11375 11376 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11374 def email @email end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
11374 11375 11376 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11374 def name @name end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
11374 11375 11376 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11374 def number @number end |
#phone ⇒ Object (readonly)
Returns the value of attribute phone.
11374 11375 11376 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11374 def phone @phone end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
11389 11390 11391 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11389 def copy(incoming={}) Customer.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
11393 11394 11395 11396 11397 11398 11399 11400 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11393 def to_hash { :name => name.to_hash, :number => number, :phone => phone, :email => email } end |
#to_json ⇒ Object
11385 11386 11387 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11385 def to_json JSON.dump(to_hash) end |