[#3] Rapport Faits saillants + transformation en hub #71
Labels
No labels
source:analyste
source:defenseur
source:human
source:medic
status:approved
status:blocked
status:in-progress
status:needs-fix
status:ready
status:review
status:triage
type:bug
type:feature
type:infra
type:refactor
type:schema
type:security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: maximus/Simpl-Resultat#71
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Objectif
Implémenter le rapport faits saillants (solde mois courant, solde YTD, top mouvements, top transactions récentes) et transformer
/reportsen hub avec 4 cartes de navigation vers les sous-rapports.Spec :
spec-refonte-rapports.mdDépend de #70
Tâches
Service
reportService.getHighlights(from, to)— SQL strictement paramétré{ netBalanceCurrent, netBalanceYtd, monthlyBalanceSeries, topMovers: { categoryId, categoryName, categoryColor, deltaAbs, deltaPct }[], topTransactions: Transaction[] }ORDER BY ABS(delta) DESC LIMIT Nvs mois précédentORDER BY ABS(amount) DESC LIMIT 10sur les 30 derniers jours (configurable 30/60/90)Hook
src/hooks/useHighlights.tsavec reducer + fetch + loading/errorTuiles du hub (plat dans
src/components/reports/, préfixes)HubNetBalanceTile.tsx— grande tuile chiffre + sparkline 12 mois, s'appuie surSparkline(créé en #69)HubTopMoversTile.tsx— top 3 movers, bascule$/%, couleurs de catégorieHubTopTransactionsTile.tsx— liste condensée top 5HubHighlightsPanel.tsx— compose les 3 tuiles, layout responsiveHubReportNavCard.tsx— tuile de navigation (icône + titre + description), menant à une sous-pageRefonte
/reportsen hubsrc/pages/ReportsPage.tsx: retirer l'ancienne UI à tabs, afficherPageHeader+ sélecteur période global (viauseReportsPeriod) +HubHighlightsPanel+ grille de 4HubReportNavCard(Faits saillants, Tendances, Comparables, Analyse par catégorie)Version détaillée
/reports/highlightssrc/pages/ReportsHighlightsPage.tsxpar la vue détailléeHighlightsTopMoversTable.tsx— tableau triable (catégorie, précédent, courant, écart $, écart %)HighlightsTopMoversChart.tsx— diverging bar chart horizontal centré sur 0, couleurs + patterns SVG viachartPatterns.tsxHighlightsTopTransactionsList.tsx— liste détaillée 10–30 entrées, selector de fenêtre 30/60/90 joursViewModeToggleintégré, storage keyreports-viewmode-highlightsi18n
reports.highlights.*en FR et EN (netBalanceCurrent, netBalanceYtd, topMovers, topTransactions, variationAbs, variationPct, vsLastMonth, windowDays30/60/90, etc.)Vérifications
/reportsaffiche le hub avec les faits saillants live + 4 cartes/reports/highlightsaffiche la version détaillée/reports/highlightsvia query stringnpm run build+cargo checkvertsCritères d'acceptation
/reportsest le hub : panneau faits saillants + 4 cartes de navigation/reports/highlightsaffiche la version détaillée