Chapter 6: System UI/UX

Bab ini mendefinisikan permukaan sistem-level yang dilihat dan dioperasikan oleh pengguna: Landing Page, Workspace Modul, Settings Hub, Administrasi, dan mekanisme Progressive Module Enablement. Bab ini adalah lapisan presentasi dari Chapter 3 (Architecture) dan Chapter 4 (Data Model).

Status: ๐Ÿ”’ Final / Mengikat (v2.0) Dasar: Spec Navigasi & Landing v9 ยท UI Reference v1 ยท Peta Menu BMP Rev3 ยท Temuan UX (ERPNext v16) Tujuan: Mengunci struktur halaman landing, workspace, settings, dan role-gating UI agar selaras dengan arsitektur data dan prinsip interaksi.

6.1 Landing Page: "My Attention"

Landing page adalah halaman pertama yang dilihat setiap user setelah login. Ini bukan dashboard konsumer โ€” tidak ada greeting, tidak ada widget dekoratif, tidak ada news feed.

6.1.1 Struktur

Zona Konten
Breadcrumb Home / My Attention
KPI Strip 4 kartu metrik lintas-modul
Tabel Antrean Daftar item yang membutuhkan perhatian user
Pager Pager tradisional (bukan Load More)

6.1.2 KPI Strip

6.1.3 Tabel Antrean

6.1.4 Pager

6.2 Workspace Modul

Workspace adalah halaman tujuan saat user mengklik Label Modul di rail sidebar. Ini adalah "Overview" per modul.

6.2.1 Prinsip: Lean, Bukan Direktori

6.2.2 Struktur Workspace

Zona Konten
Breadcrumb Home / [Nama Modul] (misal: Home / Accounting)
KPI Strip 3-4 kartu metrik spesifik modul
Antrean Perhatian Tabel item yang butuh aksi dalam modul ini
Aksi Cepat Tombol "Create" dominan (slot primary)

6.2.3 Baris Aktif di Rail

6.3 Settings Hub

Settings Hub adalah satu permukaan terpusat untuk semua kebijakan (policy) sistem. Ini menggantikan pola ERPNext di mana settings tersebar di setiap modul.

6.3.1 Prinsip Strict UI Ownership

6.3.2 Struktur Settings Hub

Settings Hub diakses melalui zona settings di rail sidebar (hanya terlihat untuk role Admin). Terdiri dari 3 workspace settings:

Workspace Settings Isi
Organization Company, Fiscal Year, Warehouse Tree, Cost Center, Branch
Administration User, Role, Permission Manager, User Permission, Permission Inspector, Workspace Settings, Notification Settings
System & Utility Background Job, RQ Job, Error Log, Data Import/Export, Email Queue, Log Settings

6.3.3 Pembagian Konten Settings Hub

Kategori Lokasi Contoh
Policy Global Settings Hub โ†’ Organization Fiscal Year, Company, Branch
Master Data Modul Pemiliknya Item (di Inventory), Customer (di Sales), Supplier (di Buying)
Konfigurasi Sistem Settings Hub โ†’ System & Utility Background Job, Error Log, Data Import
User & Role Settings Hub โ†’ Administration User, Role, Permission Manager

6.4 Administrasi & Role-Gating UI

6.4.1 Zona Settings Hanya untuk Admin

6.4.2 Avatar Dropdown (Header)

Avatar di header (26px) membuka dropdown berkelompok (Level 3, tanpa backdrop):

Grup Isi
Header Nama + Email user
Preferences My Profile, Preferences
Session Log Out (warna danger)

6.4.3 Halaman Utilitas

6.5 Progressive Module Enablement ("Hide, Don't Burn")

6.5.1 Filosofi

6.5.2 Implementasi UI

6.5.3 Status Fitur per Modul

Setiap fitur dalam modul memiliki salah satu dari tiga status:

Status Simbol Perilaku UI Perilaku Database
Tampil โœ… Terlihat di flyout & bisa diakses Tabel ada, data aktif
Hide ๐Ÿ‘๏ธ Tersembunyi dari UI, bisa dinyalakan Tabel ada, is_hidden = true
Buang โŒ Tidak pernah muncul Tabel tidak dibuat / tidak digunakan

6.6 Cloak Enforcement di UI

6.6.1 Prinsip

6.6.2 Grup Cloak & Dampaknya di UI

Grup Field yang Dilindungi Pembaca Runtime Dampak UI
A โ€” Margin/COGS COGS, Gross Profit, Valuation Rate Owner/Finance Kolom margin tidak muncul di list untuk role lain
B โ€” Resep BOM qty, rate, formulation code Owner, Prod/R&D Operator hanya lihat kode internal BOM
C โ€” Payroll/PII Email, phone, bank, salary Owner/Finance Field PII tidak muncul di detail employee untuk role non-finance
D โ€” Bank Account number, bank transactions Owner/Finance Detail rekening tidak muncul untuk IT/role lain
E โ€” Rahasia Entitas Tax ID, BPOM license, drum code Bervariasi per field Disembunyikan sesuai role pembaca

6.6.3 Contoh Penerapan: BOM

6.7 Personalisasi & User State

6.7.1 State yang Di-Persist per User

State Nilai Persist di
Rail State Expanded / Collapsed Tabel user_preferences
Density Comfortable (44px) / Compact (36px) Tabel user_preferences
Landing Pin Halaman default saat klik logo Tabel user_preferences
Saved Views Filter & kolom tersimpan per list Tabel saved_views
Column Preferences Urutan & visibilitas kolom per list Tabel column_preferences

6.7.2 Density

6.7.3 Keyboard & Touch Preferences

6.8 Header & Global Navigation

6.8.1 Struktur Header (Page-head 48px)

Posisi Konten
Kiri Breadcrumb hierarkis. "Home" = ikon saja. Semua level dapat diklik. Kedalaman maksimum 3 level.
Kanan [Aksi sekunder kontekstual, mis. "See all" 30px] + [Dot koneksi] + [Bell notifikasi] + [Avatar 26px]

6.8.2 Breadcrumb Rules

6.8.3 Bell Notifikasi

6.8.4 Dot Koneksi

Catatan Integrasi v2.0 (Changelog Chapter 6)

Langkah Selanjutnya:

Chapter 6 kini telah lengkap mendefinisikan seluruh permukaan sistem-level. Berikutnya kita bisa melangkah ke:

Mana yang ingin Anda kerjakan selanjutnya?