Class: Pacioli::PostingRule
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Pacioli::PostingRule
- Defined in:
- lib/pacioli/posting_rule.rb
Instance Method Summary collapse
- #balanced? ⇒ Boolean
- #credit(account_name, options = {}) ⇒ Object
- #debit(account_name, options = {}) ⇒ Object
- #prepare_rules(account_name, options = {}) ⇒ Object
- #with_name(name) ⇒ Object
Instance Method Details
#balanced? ⇒ Boolean
29 30 31 |
# File 'lib/pacioli/posting_rule.rb', line 29 def balanced? self.rules[:credits].inject(0) { |sum, cr| sum += cr[:percentage] } == self.rules[:debits].inject(0) { |sum, dr| sum += dr[:percentage] } end |
#credit(account_name, options = {}) ⇒ Object
17 18 19 20 21 |
# File 'lib/pacioli/posting_rule.rb', line 17 def credit(account_name, ={}) self.rules ||= {} self.rules[:credits] ||= [] self.rules[:credits] << prepare_rules(account_name, ) end |
#debit(account_name, options = {}) ⇒ Object
11 12 13 14 15 |
# File 'lib/pacioli/posting_rule.rb', line 11 def debit(account_name, ={}) self.rules ||= {} self.rules[:debits] ||= [] self.rules[:debits] << prepare_rules(account_name, ) end |
#prepare_rules(account_name, options = {}) ⇒ Object
23 24 25 26 27 |
# File 'lib/pacioli/posting_rule.rb', line 23 def prepare_rules(account_name, ={}) [:percentage] = 100 if .empty? [:account] = account_name end |
#with_name(name) ⇒ Object
7 8 9 |
# File 'lib/pacioli/posting_rule.rb', line 7 def with_name(name) self.name = name end |