feat(reports/highlights): default to previous month + current-year YTD, user-changeable #106

Closed
opened 2026-04-19 00:27:02 +00:00 by maximus · 0 comments
Owner

Contexte

Sur /reports/highlights, l'UX actuelle utilise useReportsPeriod (query string ?from=...&to=...) avec comme défaut l'année civile en cours. Les tuiles "Solde du mois" et "Top mouvements vs mois précédent" dépendent implicitement de la période mais ne permettent pas de choisir un mois de référence distinct.

Demande utilisateur

Par défaut, le rapport Faits saillants doit :

  1. Afficher un mois de référence = mois précédent (comme le rapport Cartes, via defaultCartesReferencePeriod).
  2. Afficher les résultats YTD de l'année en cours (cumulatif).
  3. Permettre à l'utilisateur de changer le mois de référence via un CompareReferenceMonthPicker (déjà existant).

Autrement dit : le mois de référence pilote les tuiles "Solde du mois" et "Top mouvements", pendant que la période YTD reste calée sur l'année civile en cours (ou est modifiable via le PeriodSelector existant).

Fichiers concernés

  • src/hooks/useHighlights.ts — ajouter un state referenceYear / referenceMonth initialisé via defaultCartesReferencePeriod (extraire cette fonction dans src/utils/ pour la partager).
  • src/services/reportService.tsgetHighlights doit accepter un mois de référence explicite plutôt que d'inférer depuis from/to.
  • src/pages/ReportsHighlightsPage.tsx — ajouter un CompareReferenceMonthPicker à côté du PeriodSelector.
  • Possiblement HubHighlightsPanel sur /reports (hub) — même défaut.

Critères d'acceptation

  • À l'ouverture de /reports/highlights, le mois de référence affiché est le mois précédent la date courante (avec bascule en décembre de l'année précédente si on est en janvier).
  • Le YTD courant affiche le cumul de l'année civile en cours jusqu'au mois de référence inclus.
  • Un picker permet à l'utilisateur de modifier le mois de référence ; le changement persiste dans l'URL (?refY=...&refM=... ou réutilisation du query string existant).
  • Le hub /reports applique le même défaut si le panneau Faits saillants y est présent.
  • Traductions FR/EN du libellé du picker si nouveau.
  • CHANGELOG mis à jour.
## Contexte Sur `/reports/highlights`, l'UX actuelle utilise `useReportsPeriod` (query string `?from=...&to=...`) avec comme défaut l'année civile en cours. Les tuiles "Solde du mois" et "Top mouvements vs mois précédent" dépendent implicitement de la période mais ne permettent pas de choisir un mois de référence distinct. ## Demande utilisateur Par défaut, le rapport Faits saillants doit : 1. Afficher un **mois de référence = mois précédent** (comme le rapport Cartes, via `defaultCartesReferencePeriod`). 2. Afficher les résultats **YTD de l'année en cours** (cumulatif). 3. Permettre à l'utilisateur de changer le mois de référence via un `CompareReferenceMonthPicker` (déjà existant). Autrement dit : le mois de référence pilote les tuiles "Solde du mois" et "Top mouvements", pendant que la période YTD reste calée sur l'année civile en cours (ou est modifiable via le `PeriodSelector` existant). ## Fichiers concernés - `src/hooks/useHighlights.ts` — ajouter un state `referenceYear` / `referenceMonth` initialisé via `defaultCartesReferencePeriod` (extraire cette fonction dans `src/utils/` pour la partager). - `src/services/reportService.ts` — `getHighlights` doit accepter un mois de référence explicite plutôt que d'inférer depuis `from`/`to`. - `src/pages/ReportsHighlightsPage.tsx` — ajouter un `CompareReferenceMonthPicker` à côté du `PeriodSelector`. - Possiblement `HubHighlightsPanel` sur `/reports` (hub) — même défaut. ## Critères d'acceptation - [ ] À l'ouverture de `/reports/highlights`, le mois de référence affiché est le mois précédent la date courante (avec bascule en décembre de l'année précédente si on est en janvier). - [ ] Le YTD courant affiche le cumul de l'année civile en cours jusqu'au mois de référence inclus. - [ ] Un picker permet à l'utilisateur de modifier le mois de référence ; le changement persiste dans l'URL (`?refY=...&refM=...` ou réutilisation du query string existant). - [ ] Le hub `/reports` applique le même défaut si le panneau Faits saillants y est présent. - [ ] Traductions FR/EN du libellé du picker si nouveau. - [ ] CHANGELOG mis à jour.
maximus added this to the spec-refonte-rapports milestone 2026-04-19 00:27:02 +00:00
maximus added the
status:approved
type:feature
source:human
labels 2026-04-19 00:27:02 +00:00
maximus added
status:ready
and removed
status:approved
labels 2026-04-19 00:41:41 +00:00
maximus added
status:review
and removed
status:ready
labels 2026-04-19 12:29:48 +00:00
maximus added
status:approved
and removed
status:review
labels 2026-04-19 12:31:23 +00:00
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: maximus/Simpl-Resultat#106
No description provided.