Module: Skr::Concerns::HasSkuLocLines::InstanceMethods

Defined in:
lib/skr/concerns/has_sku_loc_lines.rb

Instance Method Summary collapse

Instance Method Details

#totalObject



10
11
12
13
14
15
16
17
18
# 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