Files
D1041231009-WebGIS-PovertyMap/missing_features.md
T
2026-06-05 04:41:13 +07:00

8.5 KiB
Raw Blame History

Fitur & Role yang Belum Ada di Project WebGIS

Berdasarkan perbandingan dokumen SKPL (D1041231009_RadityaIndraPutranto_SKPL_SIG.docx) dengan implementasi aktual project.

Terakhir diperbarui: 2026-06-05 — ditambahkan saran fitur dari dosen (anggota keluarga, riwayat bantuan, permohonan transfer).


🔐 1. Sistem Autentikasi & Role

1.1 Komponen:

  • Model UserApp\Models\User dengan HasRoles (Spatie)
  • Migration users — Tabel users + password_reset_tokens
  • Halaman Loginresources/views/auth/login.blade.php
  • AuthController — Login/logout dengan session regeneration
  • Middleware Auth — Semua route dilindungi, API di-enforce di backend
  • Role-Based Access Control (RBAC) — Spatie Laravel Permission v8, 4 role aktif

1.2 Empat role:

# Role Kode SKPL Status
1 Administrator Sistem A-01 s/d A-05 ⚠️ A-01 selesai, A-02A-05 belum (lihat bagian 2)
2 Pengurus Rumah Ibadah I-01 s/d I-06 ⚠️ Bisa CRUD ibadah, tapi belum ada ownership
3 Petugas Pendataan (Operator) P-01 s/d P-05 ⚠️ Bisa CRUD miskin, belum ada form edit & verifikasi
4 Pemangku Kebijakan K-01 s/d K-04 ⚠️ View-only sudah, dashboard & ekspor lanjutan belum

1.3 Gap ownership yang ditemukan saat implementasi:

  • Ownership Rumah Ibadahpengurus_ibadah seharusnya hanya bisa edit/hapus data ibadah miliknya sendiri. Saat ini bisa edit/hapus semua ibadah. Butuh kolom user_id di tabel rumah_ibadah + policy/gate untuk enforce ownership.

🛠️ 2. Fitur Administrator (A-01 s/d A-05)

Kode Fitur Status
A-01 Manajemen Pengguna — CRUD user, assign role, reset password Selesai
A-02 Bulk Delete — Hapus data massal Selesai
A-02 Import CSV — Import data dari file CSV Selesai
A-03 Konfigurasi Sistem — Batas wilayah, radius min/max, legenda peta Selesai (center peta, zoom, radius min/max)
A-04 Log Aktivitas — Mencatat dan menampilkan log aktivitas pengguna Selesai
A-04 Statistik Penggunaan — Ringkasan penggunaan sistem Selesai
A-04 Notifikasi Perubahan Data — Notif jika data ditambah/diubah Selesai (polling 30 detik)
A-05 Backup & Restore — Backup database manual, jadwal backup otomatis Selesai (backup manual + terjadwal harian + restore dari file)

✏️ 3. Fitur Edit Data (Multiple Roles)

Data bisa ditambah dan dihapus. Untuk lokasi: drag marker (ibadah & miskin) dan ubah radius (ibadah saja) sudah bisa. Namun belum ada form edit untuk field lainnya.

Fitur Role terkait Status
Form Edit Rumah Ibadah — Edit nama, jenis, pengurus, telepon, jemaah, keterangan I-06, A-02 Selesai
Form Edit Keluarga Miskin — Edit nama KK, jumlah jiwa, pekerjaan, pendapatan, kondisi P-02, A-02 Selesai

📊 4. Fitur Analisis & Dashboard (Pemangku Kebijakan)

Kode Fitur Status
K-02 Dashboard Statistik Lengkap — Perbandingan antar wilayah, tren waktu Selesai
K-03 Analisis Kesenjangan (Gap Analysis) — Identifikasi wilayah miskin yang kurang terjangkau rumah ibadah Selesai
K-04 Ekspor Laporan Terfilter — Ekspor khusus per radius/wilayah untuk laporan resmi Selesai

🖨️ 5. Fitur Cetak & Ekspor Lanjutan

Fitur Role terkait Status
Cetak Laporan Wilayah — Print daftar keluarga miskin dalam radius rumah ibadah I-04 Selesai
Ekspor PDF — Format laporan resmi K-04 Selesai
Ekspor per Radius — Data yang terfilter per analisis radius I-04, K-04 Selesai

🎓 6. Saran Fitur dari Dosen (Di Luar SKPL)

Fitur-fitur berikut diusulkan setelah SKPL final dan belum ada dalam dokumen spesifikasi awal.

6.1 Data Anggota Keluarga (Tabel Baru: anggota_keluarga)

Saat ini rumah_miskin hanya menyimpan jumlah KK dan jumlah jiwa secara agregat. Fitur ini menambahkan data per-orang di dalam rumah tangga.

Sub-fitur Keterangan Status
Data Umur Simpan tanggal lahir tiap anggota, hitung umur otomatis Belum
Riwayat Pendidikan Tingkat pendidikan tiap anggota (tidak sekolah / SD / SMP / SMA / D3 / S1+) Belum
Status Hidup Status hidup / meninggal per-anggota, bisa diupdate petugas Belum

Skema yang disarankan (anggota_keluarga):

Kolom Tipe Keterangan
id BIGINT PK
id_rumah FK → rumah_miskin
nama VARCHAR
hubungan ENUM kepala_keluarga, istri, anak, lainnya
tanggal_lahir DATE untuk hitung umur
pendidikan ENUM tidak_sekolah, sd, smp, sma, d3, s1_plus
status_hidup ENUM hidup, meninggal
timestamps

Dampak implementasi: Perlu form tambah/edit anggota di halaman /data (nested di dalam detail rumah miskin), dan statistik umur di dashboard.


6.2 Riwayat Bantuan (Tabel Baru: riwayat_bantuan)

Mencatat setiap bantuan yang telah diberikan rumah ibadah kepada keluarga miskin — membentuk jejak audit distribusi bantuan.

Kolom Tipe Keterangan
id BIGINT PK
id_rumah FK → rumah_miskin penerima bantuan
ibadah_id FK → rumah_ibadah nullable pemberi bantuan
jenis_bantuan VARCHAR contoh: sembako, uang, pakaian
keterangan TEXT deskripsi bebas
tanggal_bantuan DATE
dicatat_oleh FK → users
timestamps

Dampak implementasi: Tombol "Catat Bantuan" di popup marker / tabel data, halaman riwayat per-keluarga, dan statistik total bantuan di dashboard.

Status: Belum


6.3 Permohonan Transfer Antar Rumah Ibadah (Tabel Baru: permohonan_transfer)

Ketika kapasitas jangkauan rumah ibadah sudah penuh, pengurus dapat mengajukan permohonan agar sebagian keluarga miskin dialihkan ke rumah ibadah lain yang masih mencukupi.

Alur:

  1. Pengurus Ibadah A melihat analisis radius → kapasitas melebihi batas
  2. Pengurus mengajukan permohonan transfer → pilih keluarga miskin + pilih rumah ibadah tujuan
  3. Pengurus Ibadah B menerima notifikasi → menyetujui atau menolak
  4. Administrator bisa memantau semua permohonan
Kolom Tipe Keterangan
id BIGINT PK
dari_ibadah_id FK → rumah_ibadah pengaju
ke_ibadah_id FK → rumah_ibadah tujuan
id_rumah FK → rumah_miskin keluarga yang diajukan
alasan TEXT
status ENUM pending, disetujui, ditolak
catatan_respons TEXT nullable dari pengurus penerima
diajukan_oleh FK → users
diproses_oleh FK → users nullable
timestamps

Dampak implementasi: Halaman /permohonan (list + form submit + approve/reject), badge notifikasi di navbar pengurus, dan log aktivitas untuk setiap perubahan status.

Status: Belum


Estimasi Kompleksitas

Fitur Kompleksitas Estimasi
Data anggota keluarga (umur + pendidikan + status hidup) Tinggi 1 plan penuh
Riwayat bantuan Menengah 1 plan penuh
Permohonan transfer antar rumah ibadah Sangat Tinggi 12 plan

📋 Ringkasan

Kategori Selesai Belum
Autentikasi & RBAC 6/6 komponen
Role Pengguna 4/4 role
Ownership pengurus_ibadah 1/1
Fitur Admin 8/8
Fitur Edit Data 2/2
Fitur Analisis/Dashboard 3/3
Fitur Cetak/Ekspor 3/3
Fitur Saran Dosen 3 fitur baru (di luar SKPL)
Total sisa (SKPL) 0 — Semua fitur SKPL selesai
Total saran dosen ~3 plan

🗺️ Urutan Plan yang Disarankan

Plan Isi Prioritas
Plan 1 Auth & RBAC Selesai
Plan 2 Form Edit Rumah Ibadah & Keluarga Miskin + Ownership Selesai
Plan 3 Manajemen Pengguna (Admin: CRUD user, assign role) Selesai
Plan 4 Dashboard Statistik + Gap Analysis (Pemangku Kebijakan) Selesai
Plan 5 Ekspor PDF + Ekspor per Radius + Cetak Laporan Selesai
Plan 6 Fitur Admin lanjutan (Bulk delete, CSV import, Log, Backup) Selesai
Plan 7 Statistik, Backup Terjadwal, Notifikasi, Restore Selesai
A-03 Konfigurasi Sistem (center peta, zoom, radius min/max) Selesai