Class: Doconomy::Api::Calculation
- Defined in:
- lib/doconomy/api/calculation.rb
Instance Attribute Summary collapse
-
#transactions ⇒ Object
Returns the value of attribute transactions.
Attributes inherited from Base
Class Method Summary collapse
-
.create(payload = {}) ⇒ Array<Doconomy::Api::Calculation>
Create the calculations.
Instance Method Summary collapse
-
#initialize(attributes = {}) ⇒ Calculation
constructor
A new instance of Calculation.
Methods inherited from Base
Constructor Details
#initialize(attributes = {}) ⇒ Calculation
Returns a new instance of Calculation.
8 9 10 11 12 13 |
# File 'lib/doconomy/api/calculation.rb', line 8 def initialize(attributes = {}) @attributes = attributes.deep_symbolize_keys @transactions = @attributes[:transactions].map do |attrs| attrs.is_a?(Hash) ? Transaction.new(attrs) : attrs end if @attributes[:transactions] end |
Instance Attribute Details
#transactions ⇒ Object
Returns the value of attribute transactions.
6 7 8 |
# File 'lib/doconomy/api/calculation.rb', line 6 def transactions @transactions end |
Class Method Details
.create(payload = {}) ⇒ Array<Doconomy::Api::Calculation>
Create the calculations
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/doconomy/api/calculation.rb', line 23 def create(payload = {}) payload.deep_symbolize_keys! response = client.post("/aland-index/#{Doconomy::Api.configuration.api_version}/calculations", payload.to_json) transactions_attributes = {} payload[:cardTransactions].each do |item| transactions_attributes[item[:reference]] = item.symbolize_keys end response[:transaction_footprints].each do |item| transactions_attributes[item[:reference]] ||= {} transactions_attributes[item[:reference]].merge!(item.symbolize_keys) end new(transactions: transactions_attributes.values, errors: response[:errors]) end |