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.
12243 12244 12245 12246 12247 12248 12249 12250 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12243 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.
12241 12242 12243 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12241 def email @email end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
12241 12242 12243 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12241 def name @name end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
12241 12242 12243 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12241 def number @number end |
#phone ⇒ Object (readonly)
Returns the value of attribute phone.
12241 12242 12243 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12241 def phone @phone end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12256 12257 12258 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12256 def copy(incoming={}) Customer.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12260 12261 12262 12263 12264 12265 12266 12267 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12260 def to_hash { :name => name.to_hash, :number => number, :phone => phone, :email => email } end |
#to_json ⇒ Object
12252 12253 12254 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12252 def to_json JSON.dump(to_hash) end |