module Skr::Concerns::HasSkuLocLines::InstanceMethods

Public Instance Methods

total() click to toggle source
# File lib/skr/concerns/has_sku_loc_lines.rb, line 10
def total
    if total = self.read_attribute('total')
        BigDecimal.new(total)
    elsif self.new_record? || self.association(:lines).loaded?
        self.lines.inject( BigDecimal.new('0') ){|sum,line| sum += line.extended_price }
    else
        BigDecimal.new( self.lines.sum('price*qty') )
    end
end