obsidian-vault/Infra-Network/SPEC-SESSION-2026-09-14.md

1.4 KiB

SPEC — Session 2026-09-14 (Rently / RentCharge)

Status: implemented · Operador: Roger
Ambientes: test + prod (frontend partilhado)


Alterações do dia

QuickPost modal

  • Cash Sale — layout fiel ao mockup (âmbar); modal shell 920px
  • Credit Settlement — UI mockup (azul), last 10 Credit Book history, transaction_id (CT-/CR-), balance after, Posted by; live over-settlement
  • Credit Sale — UI mockup (vermelho), impact R-CB03 (consumo over-settlement), recent charges last 8 weeks, footer info

Backend ledger

  • Coluna service_ledger_entries.transaction_id + backfill
  • GET /api/residents/{id}/credit-book → balance_after + transaction_id

Residents KPI header

  • Novo bloco visual (mockup KPI) em /people e /residents
  • Clique filtra: All / Current / Up to date / Arrears / Former
  • Lógica de contagem inalterada (paymentStatus + NP)

Ficheiros principais

  • frontend/src/components/QuickPostModal.tsx
  • frontend/src/components/residents/ResidentsKpiHeader.tsx
  • frontend/src/app/people/page.tsx
  • frontend/src/app/residents/page.tsx
  • frontend/src/app/globals.css
  • backend/app/database.py, services/ledger.py, modules/ledger/router.py
  • frontend/src/lib/api.ts

Versão

005.2026 — 2026-09-14

Deploy

  • npm run build frontend
  • restart rentcharge-frontend + rentcharge-test-frontend
  • backends se schema transaction_id (init_db)