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.
13160 13161 13162 13163 13164 13165 13166 13167 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13160 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.
13158 13159 13160 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13158 def email @email end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
13158 13159 13160 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13158 def name @name end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
13158 13159 13160 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13158 def number @number end |
#phone ⇒ Object (readonly)
Returns the value of attribute phone.
13158 13159 13160 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13158 def phone @phone end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
13173 13174 13175 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13173 def copy(incoming={}) Customer.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
13177 13178 13179 13180 13181 13182 13183 13184 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13177 def to_hash { :name => name.to_hash, :number => number, :phone => phone, :email => email } end |
#to_json ⇒ Object
13169 13170 13171 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13169 def to_json JSON.dump(to_hash) end |