|
|
|
|
@ -616,3 +616,24 @@ a "VANITHA … SOCIETY" is Vanitha, not the generic Society), backfilled by a po
|
|
|
|
|
applied to new/edited clients via `categoryFromName`. Clients screen gains a Category filter +
|
|
|
|
|
column. Live backfill: 135 Service Bank, 38 Employees, 15 Vanitha, 14 Store, 12 Agricultural,
|
|
|
|
|
11 Urban, …
|
|
|
|
|
|
|
|
|
|
## D38 — Client Detail redesign: module lifecycle, status line & payments context (2026-07-20)
|
|
|
|
|
Reworks the Client 360 Modules + Payments tabs around how the business actually runs. **Per-module
|
|
|
|
|
onboarding templates** (config over code, `project.milestone_template:<CODE>` resolved per module →
|
|
|
|
|
global → code fallback): SMS / RTGS / Mobile App each get their own step list, seeded and
|
|
|
|
|
owner-editable; a one-time migration swaps existing projects onto their new list preserving mapped
|
|
|
|
|
ticks. The onboarding checklist becomes a **horizontal status line** whose ticks **auto-drive the
|
|
|
|
|
coarse `client_module.status`** (Installation→installed, Training→trained, Go-live→live; never
|
|
|
|
|
downgrades), so the status dropdown stops being hand-set. Advance/Balance payment steps **link to a
|
|
|
|
|
real payment** (`project_milestone.payment_id`; step date mirrors `received_on`). Module details
|
|
|
|
|
render as a read-only **50/50 sheet** (Access | Details) with one Edit per group — no always-on
|
|
|
|
|
input boxes. Each module block lists **its own documents** (line-item match) with type labels
|
|
|
|
|
(Quote / Renewal / **Bulk top-up** / Invoice); SMS gains a **bulk-credit purchase** proforma
|
|
|
|
|
(`source='bulk_sms_topup'`, priced via the usage rate card) distinct from a subscription renewal
|
|
|
|
|
(`source='module_renewal'`). The Payments tab gains an **Outstanding** panel (issued invoices with a
|
|
|
|
|
balance + **sent/accepted** proformas — un-issued drafts excluded, owner decision — plus advance on
|
|
|
|
|
account) and a "Settled → document" column per payment; the money engine is unchanged (read-only
|
|
|
|
|
ledger extension). A **stalled-onboarding** query surfaces projects parked past a threshold for the
|
|
|
|
|
dashboard/MIS. Spec + plans under `docs/superpowers/`. **Status:** landing on branch
|
|
|
|
|
`feat/client-detail-redesign` — backend complete (Tasks 1–8, 446 tests green), frontend in progress;
|
|
|
|
|
a responsive + red-team alignment pass gates the merge.
|
|
|
|
|
|