app/views/contracts/interest_average.html.haml
%h1 Berechnung des durchschnittlichen Zinssatz
- sum=AccountingEntry.sum(:amount)
%h3 Aktuelle Summe aller Direktkredite:
%b= currency(sum)
%br/
%h3 Direktkredite nach Kategorie
- categories = Contract.pluck(:category).uniq
%ul
- categories.each do |category|
%li
- contracts_of_category = Contract.where(category: category)
= "Categorie: #{category} - Summe: "
= currency contracts_of_category.map(&:balance).sum
= " - AVG Zinssatz: "
= number_with_precision( contracts_of_category.map(&:last_version).map(&:interest_rate).sum / contracts_of_category.size.to_f)
%h3 Berechnung:
%table.table
%tr
%th Vertrag Nr
%th Name
%th Kontostand
%th Anteil an Gesamtsumme
%th Zinssatz
%th Relativer Zinssatz
- rel_sum = 0
- @contracts.each do |contract|
- last_version = contract.last_version
%tr
%td= link_to contract.number, contract
%td= "#{contract.contact.try(:prename)} #{contract.contact.try(:name)}"
%td= currency(balance=contract.balance)
%td= fraction(sum_fraction=balance/sum)
%td= fraction(last_version.interest_rate)
%td= fraction(rel=sum_fraction * last_version.interest_rate)
- rel_sum+=rel
%br/
%h3 Durchschnittlicher Zinssatz:
%h1= fraction(rel_sum)