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.
13766 13767 13768 13769 13770 13771 13772 13773 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13766 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.
13764 13765 13766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13764 def email @email end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
13764 13765 13766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13764 def name @name end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
13764 13765 13766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13764 def number @number end |
#phone ⇒ Object (readonly)
Returns the value of attribute phone.
13764 13765 13766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13764 def phone @phone end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
13779 13780 13781 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13779 def copy(incoming={}) Customer.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
13783 13784 13785 13786 13787 13788 13789 13790 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13783 def to_hash { :name => name.to_hash, :number => number, :phone => phone, :email => email } end |
#to_json ⇒ Object
13775 13776 13777 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13775 def to_json JSON.dump(to_hash) end |