Sha256: 4c26de8189102ce1f841561a5ea4eb0af2e920f32f26fe566186c5257d2760a8

Contents?: true

Size: 1.19 KB

Versions: 4

Compression:

Stored size: 1.19 KB

Contents

module SingaporeCharitableDonations
  module Calculators
    module ECF

      # Eurasian Community Fund contribution calculator for the year 2015 onwards.
      module Year2015Calculator
        class << self

          # @param [BigDecimal] total_wage
          # @return [BigDecimal] contribution amount
          def calculate(total_wages)
            case
            when total_wages <= 1_000.00
              BigDecimal "2.00"
            when total_wages <= 1_500.00
              BigDecimal "4.00"
            when total_wages <= 2_500.00
              BigDecimal "6.00"
            when total_wages <= 4_000.00
              BigDecimal "9.00"
            when total_wages <= 7_000.00
              BigDecimal "12.00"
            when total_wages <= 10_000.00
              BigDecimal "16.00"
            else # total_wages > 10_000.00
              BigDecimal "20.00"
            end
          end

          # @param [Date] date to be considered for calculation
          # @param [String] type of charitable contribution
          # @return [TrueClass, FalseClass]
          def applies_to?(date, type)
            date.year >= 2015 && type == 'ECF'
          end

        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
singapore_charitable_donations-1.0.3 lib/singapore_charitable_donations/calculators/ecf/year_2015_calculator.rb
singapore_charitable_donations-1.0.1 lib/singapore_charitable_donations/calculators/ecf/year_2015_calculator.rb
singapore_charitable_donations-1.0.0 lib/singapore_charitable_donations/calculators/ecf/year_2015_calculator.rb
singapore_charitable_donations-0.0.1 lib/singapore_charitable_donations/calculators/ecf/year_2015_calculator.rb