[feat] Adoption filtres — Compare + Budget (temporel inchange + filtre compte) #276

Closed
opened 2026-07-09 00:37:57 +00:00 by maximus · 0 comments
Owner

Brancher le multi-select comptes dans Compare et Budget via <FilterPanel> avec leur controle temporel injecte (temporel inchange), et passer accountIds aux services. Epic #260.

Fichiers concernes

  • src/pages/ReportsComparePage.tsx
  • src/components/reports/CompareBudgetView.tsx (@:20 — appelle getBudgetVsActualData sans compte)
  • src/hooks/useCompare.ts
  • src/pages/BudgetPage.tsx
  • src/hooks/useBudget.ts

Depends on

Criteres d'acceptation

  • Compare : <FilterPanel temporalControl={<CompareReferenceMonthPicker/>}>, accountIds passe a getCompareMonthOverMonth/getCompareYearOverYear (via useCompare) et au sous-onglet budget CompareBudgetViewgetBudgetVsActualData
  • Budget : <FilterPanel temporalControl={<YearNavigator/>}>, accountIds passe a getBudgetVsActualData (via useBudget)
  • Temporel (mois-ref compare / annee budget) inchange
  • Sans filtre → inchange (regression)
  • build + npm test verts

Review caveats

  • 🟡 (Tech) : CompareBudgetView.tsx:20 appelle getBudgetVsActualData(year, month) sans compte → threader accountIds en prop sinon ce sous-onglet ignore le filtre pendant que le reste de la page le respecte.

Decisions prises

  • Temporel non migre : compare garde CompareReferenceMonthPicker + reducer local, budget garde YearNavigator — seul le compte est ajoute.

Spec source

spec-plan-rapports-uniformes-suite.md

Brancher le **multi-select comptes** dans **Compare** et **Budget** via `<FilterPanel>` avec leur controle temporel injecte (temporel inchange), et passer `accountIds` aux services. Epic #260. ## Fichiers concernes - `src/pages/ReportsComparePage.tsx` - `src/components/reports/CompareBudgetView.tsx` (@:20 — appelle `getBudgetVsActualData` sans compte) - `src/hooks/useCompare.ts` - `src/pages/BudgetPage.tsx` - `src/hooks/useBudget.ts` ## Depends on - #272, #273, #274 ## Criteres d'acceptation - [ ] Compare : `<FilterPanel temporalControl={<CompareReferenceMonthPicker/>}>`, `accountIds` passe a `getCompareMonthOverMonth`/`getCompareYearOverYear` (via `useCompare`) **et** au sous-onglet budget `CompareBudgetView` → `getBudgetVsActualData` - [ ] Budget : `<FilterPanel temporalControl={<YearNavigator/>}>`, `accountIds` passe a `getBudgetVsActualData` (via `useBudget`) - [ ] Temporel (mois-ref compare / annee budget) **inchange** - [ ] Sans filtre → inchange (regression) - [ ] build + `npm test` verts ## Review caveats - 🟡 (Tech) : `CompareBudgetView.tsx:20` appelle `getBudgetVsActualData(year, month)` sans compte → threader `accountIds` en prop sinon ce sous-onglet ignore le filtre pendant que le reste de la page le respecte. ## Decisions prises - Temporel non migre : compare garde `CompareReferenceMonthPicker` + reducer local, budget garde `YearNavigator` — seul le compte est ajoute. ## Spec source spec-plan-rapports-uniformes-suite.md
maximus added this to the overnight-2026-07-08-filtres-fondation milestone 2026-07-09 00:37:57 +00:00
maximus added the
status:ready
type:feature
source:human
labels 2026-07-09 00:37:57 +00:00
maximus added
status:review
and removed
status:ready
labels 2026-07-11 19:53:06 +00:00
maximus added
status:approved
and removed
status:review
labels 2026-07-11 20:32:03 +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#276
No description provided.