Sha256: d99884b542f24e2e3dfac98b2145d67c678d43ebc8052ff2d22a4623262fc866

Contents?: true

Size: 524 Bytes

Versions: 47

Compression:

Stored size: 524 Bytes

Contents

module Xeroizer
  module Record
    class LineItemSum
      def self.total(line_items)
        sub_total(line_items) + total_tax(line_items)
      end

      def self.sub_total(line_items)
        line_items.inject(BigDecimal("0")) do |sum, item|
          sum += BigDecimal(item.line_amount.to_s).round(2)
        end
      end

      def self.total_tax(line_items)
        line_items.inject(BigDecimal("0")) do |sum, item|
          sum += BigDecimal(item.tax_amount.to_s).round(2)
        end
      end
    end
  end
end

Version data entries

47 entries across 47 versions & 3 rubygems

Version Path
xeroizer-0.5.1 lib/xeroizer/models/line_item_sum.rb
xeroizer-0.5.0 lib/xeroizer/models/line_item_sum.rb
xeroizer-0.4.4 lib/xeroizer/models/line_item_sum.rb
xeroizer-0.4.3 lib/xeroizer/models/line_item_sum.rb
xeroizer-0.4.2 lib/xeroizer/models/line_item_sum.rb
xeroizer-0.4.1 lib/xeroizer/models/line_item_sum.rb
xeroizer-0.4.0 lib/xeroizer/models/line_item_sum.rb