obsidian-vault/Infra-Network/SPEC-SYSTEM-DASHBOARD.md
Roger 06acaff8a8 docs: RentCharge 007.2026 money privacy + profile status
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 18:19:56 +00:00

2.9 KiB

SPEC — System Dashboard

Date: 2026-09-09
Status: implemented on VM500 (/)
Language: English UI

Purpose

The Dashboard is the system's presentation and navigation page. It summarizes the complete resident group and does not duplicate the Residents data grid.

Route separation

  • / — consolidated system Dashboard. Do not put the Cash (SA) grid here.
  • /residents — Rent Payments Control: complete resident register and Cash (SA) account grid.
  • /residents/{id} — individual resident account dashboard.
  • The sidebar item Rent Payments Control links to /residents; Dashboard remains /.

Branding

  • The Salvation Army shield (/salvation-army-shield.svg) replaces the red SA badge in the sidebar (white circular background). It is not shown next to the Rent Payments Control page title.

Dashboard content

  • Current statement-week hero: collection rate, cash, due, paid, part-paid and unpaid resident counts.
  • Residents: all records, currently housed, former/no-room records, occupied rooms and complete weekly due.
  • Collections and arrears: expected, cash collected, payment count, collection gap and outstanding balance.
  • Agreements and balances: active agreements, agreement balance, overdue installments and new rent arrears.
  • Data quality: missing SAGE IDs, room conflicts, duplicate names and missing charge bands.
  • System navigation cards: Residents, Account Receivables, Payments MAP WEEK, ROI Finance, Arrears and Reports.

Data contract

  • Totals use the complete API result and are not affected by UI pagination or search filters.
  • Current-week collection figures use the same Payment Map report service as /mapa.
  • Financial values are displayed in full EUR format; counts are displayed as complete integers.
  • Every metric card links to its relevant operational page or report.
  • The Dashboard contains no Cash (SA) transaction table.

Visual language

  • Hero band: donut gauge for the cash collection rate (green track #dcefe5, arc #0f6b4f, end dot), a vertical rule, then icon-chip statistics for total collected and total due.
  • Hero right block: 2x2 tile grid separated by hairlines, each tile with an icon chip — Residents (blue), Paid (green filled check), Part paid (amber clock), Unpaid (red alert).
  • Metric cards: horizontal layout with a rounded 9px tinted icon chip on the left and label, value and note stacked on the right. No corner arrow.
  • Section headers: bold 13px title on the left, muted 10px context note right-aligned.
  • Colour is semantic: green for healthy/collected, amber for review, red for arrears and exceptions, blue for neutral volume.

Money privacy (007.2026)

  • Header and Dashboard toolbars include Show € / Hide €.
  • Amounts use privacyMoneyLabel / euro() with app-wide subscription — see SPEC-MONEY-PRIVACY.md.
  • Default: amounts hidden until the operator reveals them.