Skip to content

feat(export): Sheet 2 — Budget vs. Report Dashboard - #336

Merged
arutsh merged 1 commit into
mainfrom
Budget/feat/Issue-318/excel-export-group2
Sep 23, 2026
Merged

arutsh merged 1 commit into
mainfrom
Budget/feat/Issue-318/excel-export-group2

Conversation

@arutsh

@arutsh arutsh commented Sep 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • Refactors Sheet 1's free functions into an OriginalBudgetSheet(_SheetWriter) subclass and introduces a shared _SheetWriter base for cell-writing helpers (pure refactor, no output change to Sheet 1).
  • Adds excel_export_crud.py with a per-budget-line rollup query joining budget_lines → report_lines, and a converted-expense calculation blending real per-allocation conversion rates with the estimated rate for any unsatisfied remainder (flagged with estimate styling when a remainder exists).
  • Implements DashboardSheet (Sheet 2): donor-currency-first layout with a funding ledger (receipts + conversions), a report summary, and per-line/category-subtotal detail rows — revised against a hand-edited reference workbook per design.md Decision 13.

Test plan

  • pytest services/budget/tests/test_excel_export_service.py services/budget/tests/test_excel_export_crud.py — all passing
  • black --check, mypy, flake8 clean (pre-push hooks passed)
  • Sheet 1 output unchanged after the _SheetWriter refactor (existing Sheet 1 tests pass unchanged)

Closes #318

🤖 Generated with Claude Code

…nor-currency-first layout

Refactors Sheet 1 into an OriginalBudgetSheet(_SheetWriter) subclass and adds
DashboardSheet with a funding ledger, report summary, and per-line detail
section blending real per-allocation conversion rates with the estimated
rate for any unsatisfied remainder (flagged with estimate styling).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Sep 23, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
grant-flow Ready Ready Preview Sep 23, 2026 4:48pm UTC

@arutsh
arutsh merged commit c7e5f8b into main Sep 23, 2026
25 of 27 checks passed
@arutsh
arutsh deleted the Budget/feat/Issue-318/excel-export-group2 branch September 23, 2026 17:10

This branch was successfully deployed

1 active deployment
Preview — 6287f271 Deployed Sep 23, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

excel-export: Sheet 2 — Budget vs. Report Dashboard — depends on 1 (group 2)

1 participant