From ffba5c3d3e947f70f5c65a9b5adfbc5e729dd36d Mon Sep 17 00:00:00 2001 From: Thomas Joise Date: Fri, 17 Jul 2026 01:20:17 +0530 Subject: [PATCH] =?UTF-8?q?docs(spec):=20APEX=2082963=20UX=20reference=20?= =?UTF-8?q?=E2=80=94=20team=20mental-model=20patterns=20for=20the=20HQ=20p?= =?UTF-8?q?olish=20pass?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- .../2026-07-17-apex-82963-ux-reference.md | 67 +++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 docs/superpowers/specs/2026-07-17-apex-82963-ux-reference.md diff --git a/docs/superpowers/specs/2026-07-17-apex-82963-ux-reference.md b/docs/superpowers/specs/2026-07-17-apex-82963-ux-reference.md new file mode 100644 index 0000000..17671ae --- /dev/null +++ b/docs/superpowers/specs/2026-07-17-apex-82963-ux-reference.md @@ -0,0 +1,67 @@ +# APEX App 82963 "SIMS CUSTOMER New" — UX Reference for the HQ Console + +*Condensed from a full reverse-engineering of the Oracle APEX export (`f82963.sql`, 94 pages, +68k lines, exported 2026-07-16). Purpose: when polishing HQ pages, match the **mental model** +the team already has — not the APEX technology. The HQ console replaces this app.* + +## What the old app is + +Vendor-internal ops console for a **banking-software company**. Clients are **banks / +cooperative credit societies** (the client-name column is literally `BANK`; rows carry +IFSC, RTGS flags, e-collection codes, AnyDesk ids). Three product lines: core banking +("SMS" modules, Deposit/Loan split), RTGS/NEFT integration, plus docs/billing and the +vendor's own field-staff HR. + +## Team's ingrained UX patterns (worth honouring in HQ) + +1. **Role-driven home.** Dashboard/menu cards come from data (`SIMS_APP_CONTROL`) filtered + by the employee's designation — each role sees only its cards. HQ equivalent: role-gated + nav + "Mine" defaults for staff. +2. **The daily workbench loop.** Day Begin → Work Bench (today's open items, assigned to me) + → close/transfer → Day End (carry-forward of anything unclosed: an unclosed ticket + auto-rolls forward every day until handled). This "nothing falls through silently" + carry-forward is the single most load-bearing behaviour — HQ's pipeline chase-list + + reminder queue must feel like this: the item stays in your face until resolved. +3. **Pending-first ordering.** Payment status list sorts `PENDING` to the top + (`ORDER BY CASE WHEN PAYMENT_STATUS='PENDING' THEN 0 ELSE 1 END`). HQ: overdue/actionable + rows always sort first. +4. **One picker → detail panel.** Module report = pick a bank → see its modules; billing = + enter bill no → see lines. Master-detail with a single obvious filter, not faceted search. +5. **Free-text quick search** over name/status (`LIKE '%x%'` on BANK_NAME/PAYMENT_STATUS). + HQ: keep the single search box idiom. +6. **Status vocabulary the team speaks:** enquiry pipeline `GENERAL ENQUIRY → NEW PROJECT → + WAITING FOR CUSTOMER RESPONSE → YES/NO`; tickets `OPEN / IN PROGRESS / CLOSED / TRANSFERED`; + payment `PENDING / …`; proforma vs invoice via `INVOICE_TYPE` + `CONVERTED_FROM_PROFORMA_ID`. + HQ's stages (Enquiry → New Project → Quoted/Waiting → Won/Lost) deliberately mirror this. +7. **Everyone-visible reference data on the client row:** district, sector, phone, mail, + WhatsApp, AnyDesk id, product flags (ATM/RTGS/SMS/MOBILE_APP). Support staff live off this + card. (HQ gap noted: support-access fields are a deferred slice.) +8. **Exports everywhere.** IG reports download CSV/XLSX/PDF. HQ: every list should copy/export. +9. **Assignment is personal.** Tickets/enquiries carry `ASSIGNED_TO` (an employee name); + reports filter by employee. HQ: owner on every pipeline row; "Mine" filter. +10. **Calendar views** for tickets/leave, colour-coded by status via a colour lookup table. + (Deferred in HQ; note only.) + +## Screen inventory the team knows (major ones) + +| Old page | What it does | HQ equivalent | +|---|---|---| +| 5 SIMS Client List / 6 form | master client book (IG grid, inline edit) | Clients / ClientDetail | +| 2/3 SMS Client, 29/30 RTGS Client | per-product client lists | Clients + module roster | +| 61 SMS_MODULES / 62 Module Report | modules per client (per-client only!) | Modules + NEW module→client roster (HQ improves: cross-client) | +| 31 SMS TICKET / 27 RTGS_TICKET | enquiry "project" pipeline w/ ASSIGNED_TO | NEW Pipeline chase-list | +| 45/64 BILLING, 71 BILL PAYMENT STATUS | bills + pending-first payment status | Documents, Dashboard, Reports | +| 63/77/78 SIMS_INVOICES | normalized invoices, proforma→invoice convert | DocumentView convert-and-send | +| 8/11/40 DAY BEGIN / WORK BENCH / DAY END | daily open-call loop, carry-forward | Dashboard reminder queue + Pipeline | +| 42 Report | date-range + group/bank/employee filtered call report | Reports | +| 51–56 DOCUMENTS | hierarchical doc库 cards | (deferred) | +| 23/65 EMPLOYEE | employee master (EMPMASTER drives everything) | NEW Employees page | +| 12/18/26/28/36/41/43 TA/leave/monthly | field-staff HR | deferred (non-goal) | + +## UX pass checklist derived from the above + +For EVERY HQ page: (a) actionable/overdue rows first; (b) one obvious search/filter; +(c) owner visible where relevant + "Mine" default for staff; (d) counts shown, pagination, +never silent truncation; (e) export/copy where a list exists; (f) status labels use the +team's vocabulary above; (g) the thing you must do next is one click away (workbench feel); +(h) works on a phone browser (spec non-goal: no native app).