Class: Skr::ExpenseEntry

Inherits:
Model
  • Object
show all
Defined in:
lib/skr/models/expense_entry.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.access_limits_for_query(query, user, params) ⇒ Object



29
30
31
32
33
34
35
# File 'lib/skr/models/expense_entry.rb', line 29

def self.access_limits_for_query(query, user, params)
    if user.roles.include?('accounting') && (params['id'] || params['review'] == 'true')
        query
    else
        query.where(created_by_id: user.id)
    end
end

Instance Method Details

#amountObject



48
49
50
# File 'lib/skr/models/expense_entry.rb', line 48

def amount
    categories.total
end

#approve!(bank, location: Location.default) ⇒ Object



52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/skr/models/expense_entry.rb', line 52

def approve!(bank, location: Location.default)
    debit = bank.
    glt = GlTransaction.record(
        location: location, description: "Expenses"
    ) do | transaction |
        transaction.source = self
        categories.each do |  |
            GlTransaction.push_or_save(
                owner: self, amount: .amount,
                debit: debit, credit: .category.
            )
        end
    end
end