core/docs/history/2026-07-25-modul-user-pengguna.md

1.7 KiB

Modul User / Pengguna

Tanggal: 2026-07-25 Status: Selesai

Tujuan

Membuat halaman manajemen pengguna (user) dengan CRUD, mengikuti pola halaman jenis bisnis dan paket.

Yang Dikerjakan

1. Halaman List Pengguna

  • /admin/users — DataTable dengan columns: Email, Username, Nama Lengkap, Status, Actions
  • Search (email/nama), filter status, reset filter
  • Delete dengan konfirmasi dialog

2. Halaman Tambah Pengguna

  • /admin/users/create — Form: email, username, password, full_name, phone, address, pob, dob
  • Validasi required fields, submit POST ke API, redirect ke list

3. Halaman Edit Pengguna

  • /admin/users/{id}/edit — Form pre-filled dari API, sama dengan create
  • Password opsional (kosongkan jika tidak diubah)
  • Submit PUT ke API, redirect ke list

4. Sidebar

  • Tambah menu "Pengguna" di grup Master dengan icon Users

File yang Diubah/Dibuat

File Aksi Detail
core/app/pages/admin/users/columns.ts Dibuat Column definitions + interface User
core/app/pages/admin/users/index.vue Dibuat/Ditulis ulang Halaman list dengan delete dialog
core/app/pages/admin/users/create.vue Dibuat Halaman tambah pengguna
core/app/pages/admin/users/[id]/edit.vue Dibuat Halaman edit pengguna
core/app/components/AppSidebar.vue Diubah Tambah menu "Pengguna"

Routing

Path File
/admin/users pages/admin/users/index.vue
/admin/users/create pages/admin/users/create.vue
/admin/users/:id/edit pages/admin/users/[id]/edit.vue

Notes

  • Menggunakan field status dari API (ACTIVE/INACTIVE) untuk badge status
  • API endpoint: GET /v1/users, POST /v1/users, PUT /v1/users/{id}, DELETE /v1/users/{id}