SIMPEG - ASN Kabupaten Tasikmalaya
SIMPEG 5.0
Log in
SIMPEG - ASN Kabupaten Tasikmalaya
SIMPEG 5.0
User Management
dapat diakses oleh Admin

User Management merupakan menu utama SIMPEG yang digunakan Admin untuk mengatur hak akses dan struktur peran (role). Menu ini berisi empat submenu: User Permission, User Feature, User Role, dan Role Permission.

Pengajuan User
Semua User

Menu ini digunakan untuk mengajukan permohonan perubahan hak akses oleh pengguna.

Approval Pengajuan User

Menu ini digunakan untuk menyetujui permohonan perubahan hak akses dari pengguna.

User Role

Menu ini digunakan untuk mengatur daftar role (Admin, ASN, Operator, dst.).

User Feature

Menu ini digunakan untuk mengatur daftar fitur/menu yang bisa diberi hak akses.

User Permission

Menu ini digunakan mengatur daftar hak akses per user per fitur.

Role Permission

Menu ini digunakan untuk mengatur template hak akses per role (digunakan untuk sinkronisasi massal).

Langkah Umum Masuk
  1. Klik menu User Management pada navigation bar.
  2. Pilih salah satu submenu: Pengajuan User / Approval Pengajuan User / User Permission / User Feature / User Role / Role Permission.
1) Pengajuan User

Halaman ini digunakan untuk mengajukan perubahan role/hak akses user. Setiap user dapat diberikan izin spesifik untuk menggunakan role tertentu dalam SIMPEG.

  1. Pilih Role/Hak Askes User yang diinginkan.
  2. Klik Ajukan Perubahan Role/Hak Akses.
  3. Unggah dokumen persyaratan (Surat Permintaan Perubahan Hak Akses) pada Draft Pengajuan User .
  4. Klik Ajukan Draft.
Contoh pengajuan user
Contoh pengajuan user
2) Approval Pengajuan User

Halaman ini digunakan untuk menyetujui/approval pengajuan perubahan role/hak akses user. Setiap user dapat diberikan izin spesifik untuk menggunakan role tertentu dalam SIMPEG.

  1. Pilih data pengajuan dari daftar pengajuan user. Klik Lihat data.
  2. Verifikasi data pegawai dan perubahan role yang diajukan.
  3. Klik dokumen Surat Permintaan Perubahan Hak Akses untuk memverifikasi dokumen.
  4. Sesuaikan role/hak akses yang akan diijinkan jika perlu disesuaikan.
  5. Klik Approval.
Contoh approval pengajuan user
Contoh approval pengajuan user
3) User Permission

Halaman ini digunakan untuk mengatur hak akses detail per pengguna. Setiap user dapat diberikan izin spesifik untuk menggunakan fitur tertentu dalam SIMPEG.

  1. Gunakan pencarian NIP/Nama di bagian atas untuk memilih pengguna yang akan diatur.
  2. Pilih Role User (panel kiri) untuk melihat role yang menempel pada user tersebut.
  3. Pada tabel fitur (kanan), aktifkan izin yang diperlukan: View, Create, Update, Delete.
  4. Klik Simpan data untuk menerapkan perubahan.
Contoh matriks izin per pengguna
Contoh matriks izin per pengguna
4) Role Permission

Halaman ini digunakan untuk mendefinisikan izin akses yang dimiliki oleh suatu role. Dengan mengatur izin di level role, semua user yang terkait otomatis mewarisi izin tersebut (kecuali ada override di User Permission).

  1. Pilih salah satu Role pada panel kiri.
  2. Atur izin View / Create / Update / Delete per fitur pada tabel.
  3. Klik Simpan data jika Anda melakukan pengubahan manual pada matriks.
Contoh tampilan Role Permission
Role Permission matrix
Role Permission – Tombol Otomasi
1) Populasikan

Membuat template hak akses default untuk semua kombinasi Role × Feature dengan nilai awal:

  • can_view = true
  • can_create = can_update = can_delete = false
Sifat: idempotent (aman ditekan berulang), hanya menambah baris yang belum ada (tidak menimpa baris yang sudah ada).
2) Daftarkan Hak Akses

Membuat record permission user–feature untuk seluruh user (batch & insertOrIgnore). Nilai awal sama seperti template.

Tujuan: memastikan semua user memiliki baris dasar izin per fitur.
Catatan: tidak menimpa nilai yang sudah ada karena menggunakan insertOrIgnore.
Cuplikan kode
User::chunkById($perPage, function ($users) use (&$processed, $totalUsers, $startTime) {
                $featureIds = Feature::pluck('id');
                $data = [];

                foreach ($users as $user) {
                    foreach ($featureIds as $featureId) {
                        $data[] = [
                            'user_id'    => $user->id,
                            'feature_id' => $featureId,
                            'can_view'   => 1,
                            'can_update' => 0,
                            'can_create' => 0,
                            'can_delete' => 0,
                        ];
                    }

                    if (count($data) >= 500) {
                        FeatureUserPermissions::insertOrIgnore($data);
                        $data = [];
                    }
                }

                if (!empty($data)) {
                    FeatureUserPermissions::insertOrIgnore($data);
                }
            });
3) Perbarui Hak Akses

Sinkronisasi massal: menyalin nilai Role Template ke User Permission sesuai role user saat ini.

Hasil: izin user mengikuti template role terbarunya.
Catatan: hanya user yang memiliki role_id yang akan diproses.
Cuplikan kode
User::with('role')->chunkById($perPage, function ($users) use (&$processed, &$updatedRecords, $totalUsers, $startTime, &$lastOutputTime, &$lastProcessedCount) {
                foreach ($users as $user) {
                    if (!$user->role_id) { $processed++; continue; }

                    $result = DB::table('feature_user_permissions as fup')
                        ->join('role_templates as rt', function ($join) use ($user) {
                            $join->on('rt.role_id', '=', DB::raw($user->role_id))
                                ->on('fup.feature_id', '=', 'rt.feature_id');
                        })
                        ->where('fup.user_id', $user->id)
                        ->update([
                            'fup.can_view'   => DB::raw('rt.can_view'),
                            'fup.can_create' => DB::raw('rt.can_create'),
                            'fup.can_update' => DB::raw('rt.can_update'),
                            'fup.can_delete' => DB::raw('rt.can_delete'),
                        ]);

                    $updatedRecords += $result;
                    $processed++;
                }
            });
5) User Feature

Halaman ini berisi daftar fitur yang tersedia dalam sistem, yang dapat dihubungkan ke user maupun role untuk menentukan batasan akses. Setiap baris fitur memiliki Group, Urutan, Nama Fitur, Kode, dan kolom Nav Menu (menentukan apakah fitur ini ditampilkan pada navigasi).

Contoh daftar fitur
Daftar fitur
Tambah Fitur
  1. Klik tombol Tambah Fitur.
  2. Isi Urutan Grup (angka), Grup (mis: Dasbor/Referensi/Master Data/dst), Urutan (angka), Nama Fitur, Kode (unik, huruf kecil + underscore), dan Nav Menu (1 untuk ditampilkan di navbar).
  3. Klik Tambah.
Tambah User Feature

Contoh: kode = dasbor_admin, nav_menu = 1.

Ubah Fitur
  1. Klik tombol Edit pada baris fitur.
  2. Perbarui kolom yang diperlukan (misal urutan, kode, atau nama fitur).
  3. Klik Edit untuk menyimpan.
Edit User Feature

Perhatikan konsistensi Kode karena dipakai sebagai pengenal di hak akses.

Hapus Fitur
  1. Klik tombol Hapus pada baris fitur.
  2. Konfirmasi pada dialog yang tampil.
Hapus User Feature

Jika fitur sudah dipakai di permission, penghapusan dapat diblokir oleh integritas data.

Tips Penamaan: gunakan pola slug/kode konsisten, mis. dasbor_pensiun, pdm_profil, approval_pensiun agar mudah difilter.
6) User Role

Halaman untuk menambah/mengelola role. Role digunakan sebagai template izin pada Role Permission dan dapat ditempel ke user di User Permission.

Contoh daftar role
Daftar Role
Tambah Role
  1. Klik tombol Tambah Role.
  2. Masukkan nama role (mis. Admin, Asn, Operator, Pengelola Pensiun).
  3. Klik Tambah.
Tambah User Role
Ubah Role
  1. Klik Edit pada baris role.
  2. Ubah nama role bila diperlukan.
  3. Klik Edit untuk menyimpan.
Edit User Role
Hapus Role
  1. Klik Hapus pada baris role.
  2. Konfirmasi penghapusan.
Hapus User Role

Role yang sudah dipakai user atau memiliki template permission biasanya tidak bisa dihapus sebelum dipindahkan/bersih.

Alur Rekomendasi
  1. Buat/rapikan User Feature.
  2. Buat/rapikan User Role.
  3. Di Role Permission: klik Populasikan, atur matrix default per role.
  4. Masuk User Permission: klik Daftarkan Hak Akses (sekali di awal).
  5. Jika ada perubahan template: klik Perbarui Hak Akses untuk menyelaraskan ke semua user.

SIMPEG 5.0 Kabupaten Tasikmalaya © 2025 BKPSDM Kabupaten Tasikmalaya. All Rights Reserved.