Sha256: d8ae8eba14196c31d080e7e968277256695266cca0ee32d42df8be199801d856

Contents?: true

Size: 571 Bytes

Versions: 1

Compression:

Stored size: 571 Bytes

Contents

# frozen_string_literal: true

module BAI2
  class Group
    attr_reader :header, :accounts, :trailer

    def initialize(header, accounts, trailer = nil)
      @header = header
      @accounts = accounts
      @trailer = trailer
    end

    def set_trailer(trailer)
      raise BAI2::Error, "Trailer has already been set" if @trailer

      @trailer = trailer
    end

    def total_credits
      accounts.sum(&:total_credits)
    end

    def total_debits
      accounts.sum(&:total_debits)
    end

    def net_total
      accounts.sum(&:net_total)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bai2_ruby-0.1.0 lib/bai2_ruby/group.rb