Sha256: c1b565232395581cc4a0fab8f89c2a887c78d990b2df4e96e3dd3df99c4581ac

Contents?: true

Size: 396 Bytes

Versions: 16

Compression:

Stored size: 396 Bytes

Contents

# frozen_string_literal: true

class Valvat
  module Checksum
    class NL < Base
      def validate
        vat.to_s.gsub(/[A-Z]/) { |let| (let.ord - 55).to_s }.to_i % 97 == 1 ||
          super
      end

      def check_digit
        sum_figures_by do |fig, i|
          fig * (i + 2)
        end.modulo(11)
      end

      def str_wo_country
        super[0..-4]
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
valvat-2.0.1 lib/valvat/checksum/nl.rb
valvat-2.0.0 lib/valvat/checksum/nl.rb
valvat-1.4.4 lib/valvat/checksum/nl.rb
valvat-1.4.3 lib/valvat/checksum/nl.rb
valvat-1.4.2 lib/valvat/checksum/nl.rb
valvat-1.4.1 lib/valvat/checksum/nl.rb
valvat-1.4.0 lib/valvat/checksum/nl.rb
valvat-1.3.0 lib/valvat/checksum/nl.rb
valvat-1.2.1 lib/valvat/checksum/nl.rb
valvat-1.2.0 lib/valvat/checksum/nl.rb
valvat-1.1.5 lib/valvat/checksum/nl.rb
valvat-1.1.4 lib/valvat/checksum/nl.rb
valvat-1.1.3 lib/valvat/checksum/nl.rb
valvat-1.1.2 lib/valvat/checksum/nl.rb
valvat-1.1.1 lib/valvat/checksum/nl.rb
valvat-1.1.0 lib/valvat/checksum/nl.rb