Sha256: e3214f0fa6d72347a7fe0a903ccda57a5cd4a594dc1c99f75f83651352089a92

Contents?: true

Size: 670 Bytes

Versions: 5

Compression:

Stored size: 670 Bytes

Contents

module Tax

  # 消費税区分
  TAX_TYPES = {
    TAX_TYPE_NONTAXABLE = 1 => '非課税',
    TAX_TYPE_INCLUSIVE = 2 => '内税',
    TAX_TYPE_EXCLUSIVE = 3 => '外税',
  }

  RATE_3 = Date.parse('1989-04-01');
  RATE_5 = Date.parse('1997-04-01');
  RATE_8 = Date.parse('2014-04-01');

  def self.get_rate_on(date, options = {})
    if (date.is_a?(String))
      date = Date.parse(date)
    end

    if (date >= RATE_3 && date < RATE_5)
      ret = 0.03;
    elsif (date >= RATE_5 && date < RATE_8)
      ret = 0.05;
    elsif (date >= RATE_8)
      ret = 0.08;
    else
      ret = 0
    end

    if options[:percent]
      ret *= 100
    end
    
    ret
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
daddy-0.3.10 lib/tax.rb
daddy-0.3.9 lib/tax.rb
daddy-0.3.8 lib/tax.rb
daddy-0.3.7 lib/tax.rb
daddy-0.3.6 lib/tax.rb