aboutsummaryrefslogtreecommitdiffstats
path: root/src/expense/tracker/details.py
blob: 3849a8177532bff1dfa9b9ed6a3a2848d67d94b5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
from flask import (
    render_template,
)
from flask_login import current_user, login_required
from sqlalchemy import func
from .blueprint import tracker
from ..model import Expense
from .. import db


@tracker.route("/details")
@login_required
def details() -> str:
    """
    The detail table of all the expenses
    """
    total = db.session.scalars(
        db.select(func.coalesce(func.sum(Expense.amount), 0)).where(
            Expense.user == current_user
        )
    ).all()
    return render_template("tracker/details.html", total=total)