Class: AuLoanCalculations::Parse

Inherits:
Object
  • Object
show all
Defined in:
lib/au_loan_calculations/parse.rb

Class Method Summary collapse

Class Method Details

.convert_amount(amount, frequency, convert_to) ⇒ Object

the amount to be converted. the current frequency - allowed values: weekly, fortnightly, monthly, yearly the frequency the amount should be converted - allowed values: weekly, fortnightly, monthly, yearly



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# File 'lib/au_loan_calculations/parse.rb', line 7

def self.convert_amount(amount, frequency, convert_to)
  value = case convert_to
  when 'weekly'
    case frequency
    when 'fortnightly'
      amount / 2
    when 'monthly'
      (amount * 12) / 52
    when 'yearly'
      amount / 52
    else
      amount
    end

  when 'fortnightly'
    case frequency
    when 'weekly'
      amount * 2
    when 'monthly'
      (amount * 12) / 26
    when 'yearly'
      amount / 26
    else
      amount
    end

  when 'monthly'
    case frequency
    when 'weekly'
      (amount * 52) / 12
    when 'fortnightly'
      (amount * 26) / 12
    when 'yearly'
      amount / 12
    else
      amount
    end

  when 'yearly'
    case frequency
    when 'weekly'
      amount * 52
    when 'fortnightly'
      amount * 26
    when 'monthly'
      amount * 12
    else
      amount
    end
  end

  value.round(2)
end