Commit Graph

8 Commits

Author SHA1 Message Date
Developer
cfb09fd5fb feat: add void and delete endpoints for qr batches, fix batch list status counts 2026-06-30 15:03:25 +08:00
Super Admin
31b9bbb026 feat: Implement tabbed slide-over edit modal for households 2026-06-29 19:42:16 +08:00
Developer
7dc074e3c3 Implement household, QR sale, team helpers assignment, and helper endpoints 2026-06-29 16:56:33 +08:00
Developer
b85fc255cf feat: implement barangay and household management with associated tests 2026-06-29 15:02:52 +08:00
ramram1515
91df4d05f0 fix: increase per_page validation limit to 500 across all remaining admin endpoints 2026-06-29 12:26:37 +08:00
Developer
167abdc6ad fix: resolve super_admin login, echo crash and GD extension test failures 2026-06-29 11:43:40 +08:00
cec29a2fc9 feat(web): full admin shell with sidebar + working pages
Sidebar with all 8 nav groups (Operations / Planning / People / QR /
Areas / Finance / Reports / Settings) per the admin-panel-flow spec.
Disabled items show "Soon" and toast on click.

Working pages (real API):
- Dashboard with live stat cards + recent verification queue
- Households (filter, approve, reject with reason)
- Service Areas (CRUD via slide-over)
- QR Batches (generate, mark printed, link to print PDF)
- QR Code Search (lifecycle lookup by serial)
- Drop-off Points (filter + create)
- Dumpsites, Routes, All Users (filterable lists)

Shared helpers on window.Verde — apiFetch, requireAuth, logout, toast,
escapeHtml, formatDate. Tailwind brand tokens, table/card/badge classes,
slide-over panels.

GenerateBatchRequest now accepts target_area_id by uuid for consistency
with the rest of the public API.

139 tests passing.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 02:45:56 +08:00
d458e74301 feat(backend): complete Module 7 — QR code system (core)
qr_code_batches + qr_codes tables. State machine via
spatie/laravel-model-states (unassigned → allocated → active → used,
plus expired/voided). Serial format PH-{area}-{YYMM}-{batch}-{code}-
{checksum} with 2-char SHA-256-derived checksum. BatchGenerator
bulk-inserts in chunks. QrAllocator allocates free codes to verified
households (prefers area-targeted batch, falls back to any). Real
HouseholdVerified listener replaces the placeholder. QrBalanceLow
event for Module 11.

Admin: batch CRUD, mark-printed, void code, lifecycle search, PDF
print sheet (24/A4 via dompdf + endroid/qr-code + picqer/barcode).
Resident: list own codes, balance with low_balance flag, activate
allocated codes.

Removed explicit Event::listen for HouseholdVerified — Laravel 11
auto-discovers it via handle() type-hint, and double-registering was
causing double-dispatch.

130 feature tests passing.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 02:12:41 +08:00