Printed Bill PDF
- Dominant language
- Vue
- Stars
- 0
- Forks
- 0
- Avg merge
- 27m
- Merged PRs (30d)
- 8
Description
## Parent
[Map: BSR member platform MVP](https://github.com/fkeenv/bsr/issues/1)
## What to build
Officers generate on-demand Printed Bills (ADR-0012 / prototype `prototype/printable-bill` Variant A plus print chrome): A4 one page per Property for a chosen Billing Period — letterhead, Bill-to (recorded-owner or Block+Lot), that period’s Fee Type lines, balance forward, Amount due = live Outstanding Balance. Print one Property or batch every Property with Outstanding Balance > ₱0. Plain paper (no QR). Letterhead and how-to-pay channels are Officer-editable settings with seeded defaults. Use `spatie/laravel-pdf` with Cloudflare driver in production (local-safe outside production per ADR-0008).
## Acceptance criteria
- [ ] Officer can generate a single-Property A4 PDF for a selected Billing Period
- [ ] Officer can batch-print unpaid Properties into one stacked PDF
- [ ] Amount due equals Outstanding Balance; layout matches ADR-0012 decisions
- [ ] Letterhead and pay-to settings are editable by Officers with seeded defaults
- [ ] PDF generation works in non-production without requiring Cloudflare; production config uses Cloudflare driver
- [ ] Feature tests cover single and batch generation authorization and content essentials
## Blocked by
- [Payment declaration, confirmation, and allocation](https://github.com/fkeenv/bsr/issues/22)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with ADR-0012 and prototype/printable-bill Variant A, then read ADR-0008 and the blocked payment issue. Trace the existing Property, Billing Period, Fee Type, Outstanding Balance, and Officer settings entry points before planning the feature tests. Done means the listed single and batch PDF flows, authorization and content checks, editable seeded settings, and non-production PDF generation all work.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- laravel, php
- Domain
- full-stack
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100