Fix nav scoping across admin/warehouse/kiosk pages and redesign reporting
Summary
Redesigns the reporting dashboard with per-station KPI boxes and fixes navigation scoping across admin, warehouse, and kiosk pages.
Changes
-
KPI/report services (
kpi_service.py,report_service.py): per-station processing time, throughput, waiting time (skipped for each job's entry station), plus per-job output viaget_job_output_counts(). -
Routes:
admin_reportingnow passesjob_outputs; added report preview/download/delete routes; kiosk route records scan-arrival events for KPI timing. -
Reporting template: rebuilt into an Overall box (Throughput + Output) and one box per station (Processing Time, Throughput, Output, Waiting Time). Job selection is now a searchable table (
Job | Output | Include) instead of a checkbox list. -
Nav fix: admin pages link only to each other;
transfer_requests.htmland individual kiosk pages have no nav (reverted);kiosk_index.htmlkeeps the full hub nav. -
Tests: added
test_reporting_feature.pyfor cutoff/timestamp/discard-exclusion behavior.
Testing
All 61 tests pass (python -m pytest -v). Manually verified nav scoping and the new reporting layout in-browser.