doc: document configuration and application routes
Co-authored-by: OpenAI/GPT-5.6-Terra <vibecoder@antoineve.me> Co-authored-by: Google/Gemini-3.5-Flash <vibecoder@antoineve.me> Co-authored-by: DeepSeek/DeepSeek-v4-Flash <vibecoder@antoineve.me>
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
"""Blueprint des routes du tableau de bord principal.
|
||||
|
||||
Ce module gère l'affichage de la page d'accueil (le tableau de bord). Il calcule et rassemble
|
||||
les statistiques clés de la semaine courante et du mois en cours, ainsi que le solde des congés
|
||||
et RTT pour l'année civile.
|
||||
"""
|
||||
|
||||
from datetime import date, timedelta
|
||||
|
||||
import sqlalchemy as sa
|
||||
@@ -15,6 +22,27 @@ bp = Blueprint("dashboard", __name__)
|
||||
|
||||
@bp.route("/")
|
||||
def index():
|
||||
"""Affiche le tableau de bord principal de l'utilisateur.
|
||||
|
||||
Cette route effectue les opérations suivantes :
|
||||
1. Détermine la date du jour et calcule les limites de la semaine courante (du lundi au dimanche).
|
||||
2. Récupère toutes les entrées de temps (`WorkEntry`) de la semaine courante pour calculer :
|
||||
- Le temps de travail effectif cumulé (`week_actual`).
|
||||
- Le temps de travail de référence théorique (`week_ref`) selon le type de chaque journée.
|
||||
- Le solde d'heures de la semaine (`week_balance` = effectif - référence).
|
||||
3. Récupère toutes les entrées de temps du mois en cours (du 1er jour du mois jusqu'à aujourd'hui) pour calculer :
|
||||
- Les distances parcourues par véhicule (`month_km`) à partir des profils de trajets associés.
|
||||
- Les émissions de CO2 correspondantes (`month_co2`).
|
||||
4. Récupère ou initialise le solde annuel des congés et RTT (`balance`) et calcule les jours posés/utilisés (`used`).
|
||||
5. Vérifie s'il existe déjà une entrée de temps pour la journée d'aujourd'hui (`today_entry`).
|
||||
6. Rend le template `dashboard.html` avec l'ensemble de ces données de contexte.
|
||||
|
||||
Méthode HTTP :
|
||||
GET
|
||||
|
||||
Retourne:
|
||||
str: Le rendu HTML de la page du tableau de bord (`dashboard.html`).
|
||||
"""
|
||||
today = date.today()
|
||||
year = today.year
|
||||
|
||||
|
||||
Reference in New Issue
Block a user