Added absolute values

This commit is contained in:
JKuijperM 2026-01-23 22:49:07 +01:00
parent ff87956fd5
commit 587152b001
2 changed files with 21 additions and 14 deletions

View File

@ -21,6 +21,8 @@
<a href="{% url 'dashboard' %}?period=this_year">Este año</a> <a href="{% url 'dashboard' %}?period=this_year">Este año</a>
</div> </div>
<br>
<form method="get" class="filters"> <form method="get" class="filters">
<label> <label>
Año: Año:
@ -107,7 +109,7 @@
{% if kpi_trend == "up" %} {% if kpi_trend == "up" %}
<span style="color:red;">▲ {{ kpi_difference|floatformat:2 }}€</span> <span style="color:red;">▲ {{ kpi_difference|floatformat:2 }}€</span>
{% elif kpi_trend == "down" %} {% elif kpi_trend == "down" %}
<span style="color:green;">▼ {{ kpi_difference|floatformat:2 }}€</span> <span style="color:green;">▼ {{ kpi_difference_abs|floatformat:2 }}€</span>
{% else %} {% else %}
<span>0€</span> <span>0€</span>
{% endif %} {% endif %}
@ -175,7 +177,7 @@
{% if row.difference > 0 %} {% if row.difference > 0 %}
<span style="color:red;">▲ {{ row.difference }}</span> <span style="color:red;">▲ {{ row.difference }}</span>
{% elif row.difference < 0 %} {% elif row.difference < 0 %}
<span style="color:green;">▼ {{ row.difference }}</span> <span style="color:green;">▼ {{ row.difference_abs }}</span>
{% else %} {% else %}
= =
{% endif %} {% endif %}

View File

@ -224,9 +224,11 @@ def dashboard(request):
# ----------------- # -----------------
previous_total = None previous_total = None
difference = None kpi_difference = None
percentage = None percentage = None
category_comparison = None category_comparison = None
kpi_trend = None
kpi_difference_abs = None
if compare_enabled: if compare_enabled:
previous_expenses = Expense.objects.filter(owner=request.user) previous_expenses = Expense.objects.filter(owner=request.user)
@ -255,19 +257,20 @@ def dashboard(request):
previous_expenses.aggregate(total=Sum('amount'))['total'] or 0 previous_expenses.aggregate(total=Sum('amount'))['total'] or 0
) )
difference = total_amount - previous_total kpi_difference = total_amount - previous_total
if previous_total: if previous_total:
percentage = (difference / previous_total) * 100 percentage = (kpi_difference / previous_total) * 100
kpi_trend = None kpi_trend = None
if difference is not None: if kpi_difference is not None:
if difference > 0: if kpi_difference > 0:
kpi_trend = 'up' kpi_trend = 'up'
elif difference < 0: elif kpi_difference < 0:
kpi_trend = 'down' kpi_trend = 'down'
else: else:
kpi_trend = 'equal' kpi_trend = 'equal'
kpi_difference_abs = abs(kpi_difference) if kpi_difference is not None else None
# ------------------ # ------------------
# Previous expenses by category # Previous expenses by category
@ -303,6 +306,7 @@ def dashboard(request):
'current': current_total, 'current': current_total,
'previous': previous_total_cat, 'previous': previous_total_cat,
'difference': difference, 'difference': difference,
'difference_abs': abs(difference),
}) })
# Send the data to the dashboard # Send the data to the dashboard
@ -320,7 +324,8 @@ def dashboard(request):
'kpi_categories': category_count, 'kpi_categories': category_count,
'compare_enabled': compare_enabled, 'compare_enabled': compare_enabled,
'kpi_previous_total': previous_total, 'kpi_previous_total': previous_total,
'kpi_difference': difference, 'kpi_difference': kpi_difference,
'kpi_difference_abs': kpi_difference_abs,
'kpi_percentage': percentage, 'kpi_percentage': percentage,
'category_comparison': category_comparison, 'category_comparison': category_comparison,
'kpi_trend': kpi_trend, 'kpi_trend': kpi_trend,