Sha256: e28f96ae0cdb5b168ab05f4a1c8293dc2302fc477ca9a5f95422b8b8baf36ae0

Contents?: true

Size: 526 Bytes

Versions: 1

Compression:

Stored size: 526 Bytes

Contents

# frozen_string_literal: true

module BAI2
  class File
    attr_reader :header, :groups, :trailer

    def initialize(header, groups, trailer)
      @header = header
      @groups = groups
      @trailer = trailer
    end

    def total_credits
      groups.sum(&:total_credits)
    end

    def total_debits
      groups.sum(&:total_debits)
    end

    def net_total
      groups.sum(&:net_total)
    end

    def all_transactions
      groups.flat_map { |group| group.accounts.flat_map(&:transactions) }
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

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