dear-inventory-ruby 0.1.5 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/Gemfile +1 -1
  4. data/README.md +32 -9
  5. data/dear-inventory-ruby.gemspec +1 -1
  6. data/docs/Account.md +45 -0
  7. data/docs/Accounts.md +21 -0
  8. data/docs/Address.md +11 -11
  9. data/docs/Contact.md +14 -10
  10. data/docs/Customer.md +40 -38
  11. data/docs/Customers.md +3 -3
  12. data/docs/DimensionsUnit.md +16 -0
  13. data/docs/Error.md +2 -2
  14. data/docs/InventoryApi.md +788 -26
  15. data/docs/Me.md +29 -0
  16. data/docs/PaymentTerm.md +27 -0
  17. data/docs/PaymentTerms.md +21 -0
  18. data/docs/Success.md +17 -0
  19. data/docs/Tax.md +33 -0
  20. data/docs/TaxComponent.md +23 -0
  21. data/docs/Taxes.md +21 -0
  22. data/docs/WeightUnit.md +16 -0
  23. data/lib/dear-inventory-ruby.rb +12 -1
  24. data/lib/dear-inventory-ruby/api/inventory_api.rb +827 -44
  25. data/lib/dear-inventory-ruby/api_client.rb +8 -6
  26. data/lib/dear-inventory-ruby/api_error.rb +1 -1
  27. data/lib/dear-inventory-ruby/configuration.rb +1 -1
  28. data/lib/dear-inventory-ruby/models/account.rb +477 -0
  29. data/lib/dear-inventory-ruby/models/accounts.rb +229 -0
  30. data/lib/dear-inventory-ruby/models/address.rb +11 -1
  31. data/lib/dear-inventory-ruby/models/contact.rb +34 -5
  32. data/lib/dear-inventory-ruby/models/currency_code.rb +1 -1
  33. data/lib/dear-inventory-ruby/models/customer.rb +56 -5
  34. data/lib/dear-inventory-ruby/models/customers.rb +1 -1
  35. data/lib/dear-inventory-ruby/models/dimensions_unit.rb +42 -0
  36. data/lib/dear-inventory-ruby/models/error.rb +1 -1
  37. data/lib/dear-inventory-ruby/models/me.rb +264 -0
  38. data/lib/dear-inventory-ruby/models/payment_term.rb +319 -0
  39. data/lib/dear-inventory-ruby/models/payment_terms.rb +229 -0
  40. data/lib/dear-inventory-ruby/models/success.rb +207 -0
  41. data/lib/dear-inventory-ruby/models/tax.rb +360 -0
  42. data/lib/dear-inventory-ruby/models/tax_component.rb +306 -0
  43. data/lib/dear-inventory-ruby/models/taxes.rb +229 -0
  44. data/lib/dear-inventory-ruby/models/weight_unit.rb +39 -0
  45. data/lib/dear-inventory-ruby/version.rb +2 -2
  46. data/spec/api/inventory_api_spec.rb +160 -5
  47. data/spec/api_client_spec.rb +2 -2
  48. data/spec/configuration_spec.rb +1 -1
  49. data/spec/models/account_spec.rb +129 -0
  50. data/spec/models/accounts_spec.rb +53 -0
  51. data/spec/models/address_spec.rb +1 -1
  52. data/spec/models/contact_spec.rb +13 -1
  53. data/spec/models/currency_code_spec.rb +1 -1
  54. data/spec/models/customer_spec.rb +7 -1
  55. data/spec/models/customers_spec.rb +1 -1
  56. data/spec/models/dimensions_unit_spec.rb +35 -0
  57. data/spec/models/error_spec.rb +1 -1
  58. data/spec/models/me_spec.rb +77 -0
  59. data/spec/models/payment_term_spec.rb +75 -0
  60. data/spec/models/payment_terms_spec.rb +53 -0
  61. data/spec/models/success_spec.rb +41 -0
  62. data/spec/models/tax_component_spec.rb +59 -0
  63. data/spec/models/tax_spec.rb +89 -0
  64. data/spec/models/taxes_spec.rb +53 -0
  65. data/spec/models/weight_unit_spec.rb +35 -0
  66. data/spec/spec_helper.rb +1 -1
  67. metadata +59 -15
@@ -0,0 +1,229 @@
1
+ =begin
2
+ #DEAR Inventory API
3
+
4
+ #This specifing endpoints for DEAR Inventory API
5
+
6
+ The version of the OpenAPI document: 2.0.0
7
+ Contact: nnhansg@gmail.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module DearInventoryRuby
16
+ class Accounts
17
+ # Total
18
+ attr_accessor :total
19
+
20
+ # Page
21
+ attr_accessor :page
22
+
23
+ # Array of Accounts
24
+ attr_accessor :accounts_list
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'total' => :'Total',
30
+ :'page' => :'Page',
31
+ :'accounts_list' => :'AccountsList'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ def self.openapi_types
37
+ {
38
+ :'total' => :'String',
39
+ :'page' => :'String',
40
+ :'accounts_list' => :'Array<Account>'
41
+ }
42
+ end
43
+
44
+ # List of attributes with nullable: true
45
+ def self.openapi_nullable
46
+ Set.new([
47
+ ])
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param [Hash] attributes Model attributes in the form of hash
52
+ def initialize(attributes = {})
53
+ if (!attributes.is_a?(Hash))
54
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DearInventoryRuby::Accounts` initialize method"
55
+ end
56
+
57
+ # check to see if the attribute exists and convert string to symbol for hash key
58
+ attributes = attributes.each_with_object({}) { |(k, v), h|
59
+ if (!self.class.attribute_map.key?(k.to_sym))
60
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DearInventoryRuby::Accounts`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
61
+ end
62
+ h[k.to_sym] = v
63
+ }
64
+
65
+ if attributes.key?(:'total')
66
+ self.total = attributes[:'total']
67
+ end
68
+
69
+ if attributes.key?(:'page')
70
+ self.page = attributes[:'page']
71
+ end
72
+
73
+ if attributes.key?(:'accounts_list')
74
+ if (value = attributes[:'accounts_list']).is_a?(Array)
75
+ self.accounts_list = value
76
+ end
77
+ end
78
+ end
79
+
80
+ # Show invalid properties with the reasons. Usually used together with valid?
81
+ # @return Array for valid properties with the reasons
82
+ def list_invalid_properties
83
+ invalid_properties = Array.new
84
+ invalid_properties
85
+ end
86
+
87
+ # Check to see if the all the properties in the model are valid
88
+ # @return true if the model is valid
89
+ def valid?
90
+ true
91
+ end
92
+
93
+ # Checks equality by comparing each attribute.
94
+ # @param [Object] Object to be compared
95
+ def ==(o)
96
+ return true if self.equal?(o)
97
+ self.class == o.class &&
98
+ total == o.total &&
99
+ page == o.page &&
100
+ accounts_list == o.accounts_list
101
+ end
102
+
103
+ # @see the `==` method
104
+ # @param [Object] Object to be compared
105
+ def eql?(o)
106
+ self == o
107
+ end
108
+
109
+ # Calculates hash code according to all attributes.
110
+ # @return [Integer] Hash code
111
+ def hash
112
+ [total, page, accounts_list].hash
113
+ end
114
+
115
+ # Builds the object from hash
116
+ # @param [Hash] attributes Model attributes in the form of hash
117
+ # @return [Object] Returns the model itself
118
+ def self.build_from_hash(attributes)
119
+ new.build_from_hash(attributes)
120
+ end
121
+
122
+ # Builds the object from hash
123
+ # @param [Hash] attributes Model attributes in the form of hash
124
+ # @return [Object] Returns the model itself
125
+ def build_from_hash(attributes)
126
+ return nil unless attributes.is_a?(Hash)
127
+ self.class.openapi_types.each_pair do |key, type|
128
+ if type =~ /\AArray<(.*)>/i
129
+ # check to ensure the input is an array given that the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
132
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
133
+ end
134
+ elsif !attributes[self.class.attribute_map[key]].nil?
135
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
136
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
137
+ end
138
+
139
+ self
140
+ end
141
+
142
+ # Deserializes the data based on type
143
+ # @param string type Data type
144
+ # @param string value Value to be deserialized
145
+ # @return [Object] Deserialized data
146
+ def _deserialize(type, value)
147
+ case type.to_sym
148
+ when :DateTime
149
+ DateTime.parse(value)
150
+ when :Date
151
+ Date.parse(value)
152
+ when :String
153
+ value.to_s
154
+ when :Integer
155
+ value.to_i
156
+ when :Float
157
+ value.to_f
158
+ when :Boolean
159
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
160
+ true
161
+ else
162
+ false
163
+ end
164
+ when :Object
165
+ # generic object (usually a Hash), return directly
166
+ value
167
+ when /\AArray<(?<inner_type>.+)>\z/
168
+ inner_type = Regexp.last_match[:inner_type]
169
+ value.map { |v| _deserialize(inner_type, v) }
170
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
171
+ k_type = Regexp.last_match[:k_type]
172
+ v_type = Regexp.last_match[:v_type]
173
+ {}.tap do |hash|
174
+ value.each do |k, v|
175
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
176
+ end
177
+ end
178
+ else # model
179
+ DearInventoryRuby.const_get(type).build_from_hash(value)
180
+ end
181
+ end
182
+
183
+ # Returns the string representation of the object
184
+ # @return [String] String presentation of the object
185
+ def to_s
186
+ to_hash.to_s
187
+ end
188
+
189
+ # to_body is an alias to to_hash (backward compatibility)
190
+ # @return [Hash] Returns the object in the form of hash
191
+ def to_body
192
+ to_hash
193
+ end
194
+
195
+ # Returns the object in the form of hash
196
+ # @return [Hash] Returns the object in the form of hash
197
+ def to_hash
198
+ hash = {}
199
+ self.class.attribute_map.each_pair do |attr, param|
200
+ value = self.send(attr)
201
+ if value.nil?
202
+ is_nullable = self.class.openapi_nullable.include?(attr)
203
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
204
+ end
205
+
206
+ hash[param] = _to_hash(value)
207
+ end
208
+ hash
209
+ end
210
+
211
+ # Outputs non-array value in the form of hash
212
+ # For object, use to_hash. Otherwise, just return the value
213
+ # @param [Object] value Any valid value
214
+ # @return [Hash] Returns the value in the form of hash
215
+ def _to_hash(value)
216
+ if value.is_a?(Array)
217
+ value.compact.map { |v| _to_hash(v) }
218
+ elsif value.is_a?(Hash)
219
+ {}.tap do |hash|
220
+ value.each { |k, v| hash[k] = _to_hash(v) }
221
+ end
222
+ elsif value.respond_to? :to_hash
223
+ value.to_hash
224
+ else
225
+ value
226
+ end
227
+ end
228
+ end
229
+ end
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 2.0.0
7
7
  Contact: nnhansg@gmail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.3
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -177,6 +177,14 @@ module DearInventoryRuby
177
177
  invalid_properties.push('invalid value for "post_code", the character length must be smaller than or equal to 20.')
178
178
  end
179
179
 
180
+ if @country.nil?
181
+ invalid_properties.push('invalid value for "country", country cannot be nil.')
182
+ end
183
+
184
+ if @type.nil?
185
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
186
+ end
187
+
180
188
  invalid_properties
181
189
  end
182
190
 
@@ -188,6 +196,8 @@ module DearInventoryRuby
188
196
  return false if !@city.nil? && @city.to_s.length > 256
189
197
  return false if !@state.nil? && @state.to_s.length > 256
190
198
  return false if !@post_code.nil? && @post_code.to_s.length > 20
199
+ return false if @country.nil?
200
+ return false if @type.nil?
191
201
  type_validator = EnumAttributeValidator.new('String', ["Billing", "Business", "Shipping"])
192
202
  return false unless type_validator.valid?(@type)
193
203
  true
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 2.0.0
7
7
  Contact: nnhansg@gmail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.3
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -20,9 +20,15 @@ module DearInventoryRuby
20
20
  # Name of Contact
21
21
  attr_accessor :name
22
22
 
23
+ # Job Title
24
+ attr_accessor :job_title
25
+
23
26
  # Phone
24
27
  attr_accessor :phone
25
28
 
29
+ # Mobile Phone
30
+ attr_accessor :mobile_phone
31
+
26
32
  # Fax
27
33
  attr_accessor :fax
28
34
 
@@ -46,7 +52,9 @@ module DearInventoryRuby
46
52
  {
47
53
  :'id' => :'ID',
48
54
  :'name' => :'Name',
55
+ :'job_title' => :'JobTitle',
49
56
  :'phone' => :'Phone',
57
+ :'mobile_phone' => :'MobilePhone',
50
58
  :'fax' => :'Fax',
51
59
  :'email' => :'Email',
52
60
  :'website' => :'Website',
@@ -61,7 +69,9 @@ module DearInventoryRuby
61
69
  {
62
70
  :'id' => :'String',
63
71
  :'name' => :'String',
72
+ :'job_title' => :'String',
64
73
  :'phone' => :'String',
74
+ :'mobile_phone' => :'String',
65
75
  :'fax' => :'String',
66
76
  :'email' => :'String',
67
77
  :'website' => :'String',
@@ -100,10 +110,18 @@ module DearInventoryRuby
100
110
  self.name = attributes[:'name']
101
111
  end
102
112
 
113
+ if attributes.key?(:'job_title')
114
+ self.job_title = attributes[:'job_title']
115
+ end
116
+
103
117
  if attributes.key?(:'phone')
104
118
  self.phone = attributes[:'phone']
105
119
  end
106
120
 
121
+ if attributes.key?(:'mobile_phone')
122
+ self.mobile_phone = attributes[:'mobile_phone']
123
+ end
124
+
107
125
  if attributes.key?(:'fax')
108
126
  self.fax = attributes[:'fax']
109
127
  end
@@ -137,7 +155,11 @@ module DearInventoryRuby
137
155
  # @return Array for valid properties with the reasons
138
156
  def list_invalid_properties
139
157
  invalid_properties = Array.new
140
- if !@name.nil? && @name.to_s.length > 256
158
+ if @name.nil?
159
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
160
+ end
161
+
162
+ if @name.to_s.length > 256
141
163
  invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 256.')
142
164
  end
143
165
 
@@ -167,7 +189,8 @@ module DearInventoryRuby
167
189
  # Check to see if the all the properties in the model are valid
168
190
  # @return true if the model is valid
169
191
  def valid?
170
- return false if !@name.nil? && @name.to_s.length > 256
192
+ return false if @name.nil?
193
+ return false if @name.to_s.length > 256
171
194
  return false if !@phone.nil? && @phone.to_s.length > 50
172
195
  return false if !@fax.nil? && @fax.to_s.length > 50
173
196
  return false if !@email.nil? && @email.to_s.length > 256
@@ -179,7 +202,11 @@ module DearInventoryRuby
179
202
  # Custom attribute writer method with validation
180
203
  # @param [Object] name Value to be assigned
181
204
  def name=(name)
182
- if !name.nil? && name.to_s.length > 256
205
+ if name.nil?
206
+ fail ArgumentError, 'name cannot be nil'
207
+ end
208
+
209
+ if name.to_s.length > 256
183
210
  fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 256.'
184
211
  end
185
212
 
@@ -243,7 +270,9 @@ module DearInventoryRuby
243
270
  self.class == o.class &&
244
271
  id == o.id &&
245
272
  name == o.name &&
273
+ job_title == o.job_title &&
246
274
  phone == o.phone &&
275
+ mobile_phone == o.mobile_phone &&
247
276
  fax == o.fax &&
248
277
  email == o.email &&
249
278
  website == o.website &&
@@ -261,7 +290,7 @@ module DearInventoryRuby
261
290
  # Calculates hash code according to all attributes.
262
291
  # @return [Integer] Hash code
263
292
  def hash
264
- [id, name, phone, fax, email, website, comment, default, include_in_email].hash
293
+ [id, name, job_title, phone, mobile_phone, fax, email, website, comment, default, include_in_email].hash
265
294
  end
266
295
 
267
296
  # Builds the object from hash
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 2.0.0
7
7
  Contact: nnhansg@gmail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.3
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 2.0.0
7
7
  Contact: nnhansg@gmail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.2.3
9
+ OpenAPI Generator version: 4.3.1
10
10
 
11
11
  =end
12
12
 
@@ -61,6 +61,9 @@ module DearInventoryRuby
61
61
  # Credit limit
62
62
  attr_accessor :credit_limit
63
63
 
64
+ # boolean to indicate if a customer is on credit hold
65
+ attr_accessor :is_on_credit_hold
66
+
64
67
  # Tags string
65
68
  attr_accessor :tags
66
69
 
@@ -147,6 +150,7 @@ module DearInventoryRuby
147
150
  :'comments' => :'Comments',
148
151
  :'tax_number' => :'TaxNumber',
149
152
  :'credit_limit' => :'CreditLimit',
153
+ :'is_on_credit_hold' => :'IsOnCreditHold',
150
154
  :'tags' => :'Tags',
151
155
  :'attribute_set' => :'AttributeSet',
152
156
  :'additional_attribute1' => :'AdditionalAttribute1',
@@ -184,6 +188,7 @@ module DearInventoryRuby
184
188
  :'comments' => :'String',
185
189
  :'tax_number' => :'String',
186
190
  :'credit_limit' => :'Float',
191
+ :'is_on_credit_hold' => :'Boolean',
187
192
  :'tags' => :'String',
188
193
  :'attribute_set' => :'String',
189
194
  :'additional_attribute1' => :'String',
@@ -287,6 +292,12 @@ module DearInventoryRuby
287
292
  self.credit_limit = attributes[:'credit_limit']
288
293
  end
289
294
 
295
+ if attributes.key?(:'is_on_credit_hold')
296
+ self.is_on_credit_hold = attributes[:'is_on_credit_hold']
297
+ else
298
+ self.is_on_credit_hold = false
299
+ end
300
+
290
301
  if attributes.key?(:'tags')
291
302
  self.tags = attributes[:'tags']
292
303
  end
@@ -356,10 +367,38 @@ module DearInventoryRuby
356
367
  # @return Array for valid properties with the reasons
357
368
  def list_invalid_properties
358
369
  invalid_properties = Array.new
359
- if !@name.nil? && @name.to_s.length > 256
370
+ if @name.nil?
371
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
372
+ end
373
+
374
+ if @name.to_s.length > 256
360
375
  invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 256.')
361
376
  end
362
377
 
378
+ if @status.nil?
379
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
380
+ end
381
+
382
+ if @currency.nil?
383
+ invalid_properties.push('invalid value for "currency", currency cannot be nil.')
384
+ end
385
+
386
+ if @payment_term.nil?
387
+ invalid_properties.push('invalid value for "payment_term", payment_term cannot be nil.')
388
+ end
389
+
390
+ if @account_receivable.nil?
391
+ invalid_properties.push('invalid value for "account_receivable", account_receivable cannot be nil.')
392
+ end
393
+
394
+ if @revenue_account.nil?
395
+ invalid_properties.push('invalid value for "revenue_account", revenue_account cannot be nil.')
396
+ end
397
+
398
+ if @tax_rule.nil?
399
+ invalid_properties.push('invalid value for "tax_rule", tax_rule cannot be nil.')
400
+ end
401
+
363
402
  if !@comments.nil? && @comments.to_s.length > 256
364
403
  invalid_properties.push('invalid value for "comments", the character length must be smaller than or equal to 256.')
365
404
  end
@@ -370,9 +409,16 @@ module DearInventoryRuby
370
409
  # Check to see if the all the properties in the model are valid
371
410
  # @return true if the model is valid
372
411
  def valid?
373
- return false if !@name.nil? && @name.to_s.length > 256
412
+ return false if @name.nil?
413
+ return false if @name.to_s.length > 256
414
+ return false if @status.nil?
374
415
  status_validator = EnumAttributeValidator.new('String', ["Active", "Deprecated"])
375
416
  return false unless status_validator.valid?(@status)
417
+ return false if @currency.nil?
418
+ return false if @payment_term.nil?
419
+ return false if @account_receivable.nil?
420
+ return false if @revenue_account.nil?
421
+ return false if @tax_rule.nil?
376
422
  return false if !@comments.nil? && @comments.to_s.length > 256
377
423
  true
378
424
  end
@@ -380,7 +426,11 @@ module DearInventoryRuby
380
426
  # Custom attribute writer method with validation
381
427
  # @param [Object] name Value to be assigned
382
428
  def name=(name)
383
- if !name.nil? && name.to_s.length > 256
429
+ if name.nil?
430
+ fail ArgumentError, 'name cannot be nil'
431
+ end
432
+
433
+ if name.to_s.length > 256
384
434
  fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 256.'
385
435
  end
386
436
 
@@ -428,6 +478,7 @@ module DearInventoryRuby
428
478
  comments == o.comments &&
429
479
  tax_number == o.tax_number &&
430
480
  credit_limit == o.credit_limit &&
481
+ is_on_credit_hold == o.is_on_credit_hold &&
431
482
  tags == o.tags &&
432
483
  attribute_set == o.attribute_set &&
433
484
  additional_attribute1 == o.additional_attribute1 &&
@@ -454,7 +505,7 @@ module DearInventoryRuby
454
505
  # Calculates hash code according to all attributes.
455
506
  # @return [Integer] Hash code
456
507
  def hash
457
- [id, name, status, currency, payment_term, account_receivable, revenue_account, tax_rule, price_tier, carrier, sales_representative, location, discount, comments, tax_number, credit_limit, tags, attribute_set, additional_attribute1, additional_attribute2, additional_attribute3, additional_attribute4, additional_attribute5, additional_attribute6, additional_attribute7, additional_attribute8, additional_attribute9, additional_attribute10, last_modified_on, addresses, contacts].hash
508
+ [id, name, status, currency, payment_term, account_receivable, revenue_account, tax_rule, price_tier, carrier, sales_representative, location, discount, comments, tax_number, credit_limit, is_on_credit_hold, tags, attribute_set, additional_attribute1, additional_attribute2, additional_attribute3, additional_attribute4, additional_attribute5, additional_attribute6, additional_attribute7, additional_attribute8, additional_attribute9, additional_attribute10, last_modified_on, addresses, contacts].hash
458
509
  end
459
510
 
460
511
  # Builds the object from hash