Class: InstantQuote::DecisionParsers::IwocaV2Translator

Inherits:
Object
  • Object
show all
Defined in:
lib/instant_quote/decision_parsers/iwoca_v2_translator.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(v1_json) ⇒ IwocaV2Translator

Returns a new instance of IwocaV2Translator.



11
12
13
# File 'lib/instant_quote/decision_parsers/iwoca_v2_translator.rb', line 11

def initialize(v1_json)
  @decision = InstantQuote::DecisionParsers::IwocaV1.new(v1_json)
end

Class Method Details

.translate(decision) ⇒ Object



15
16
17
# File 'lib/instant_quote/decision_parsers/iwoca_v2_translator.rb', line 15

def self.translate(decision)
  new(decision).translate
end

Instance Method Details

#translateObject

Translates the v1 JSON into v2 format.



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/instant_quote/decision_parsers/iwoca_v2_translator.rb', line 20

def translate
  {
    status: {
      status: translate_status(@decision.status),
      requests: [
        {
          suggested_product: {
            amount: @decision.amount_unformatted,
            duration: {
              unit: translate_interval(@decision.credit_interval),
              amount: @decision.credit_duration
            }
          }
        }
      ]
    },
    offers: [
      {
        interest_rate: @decision.monthly_interest_rate
      }
    ]
  }
end