- Modifikasi form pembuatan role:
- Tambahkan class `tomselect` pada elemen dropdown posisi.
- Update label tingkat jabatan pada tampilan opsi dropdown.
- Pembaruan tabel pada halaman list role:
- Tambah kolom baru: "Position" dan "Tingkat Jabatan".
- Kolom baru dapat diurutkan.
- Update logika pencarian dan pengurutan:
- Izinkan pencarian berdasarkan nama posisi dan tingkat jabatan.
- Tambahkan pengurutan data berdasarkan nama posisi dan tingkat jabatan dengan join table `positions`.
- Perbaikan pada paginasi dan penghitungan data:
- Revisi query agar menghindari duplikasi data akibat join tabel.
- Ekspor data:
- Tambahkan informasi kolom baru "Position" dan "Tingkat Jabatan" pada file Excel hasil ekspor.
- Perbarui header dan pengaturan format kolom pada file Excel.
Perubahan ini memperluas fleksibilitas pada manajemen role dengan menambahkan dimensi posisi dan tingkat jabatan baik dalam tampilan UI maupun data backend.
- Tambahkan relasi posisi dengan menambahkan kolom `position_id` pada tabel roles melalui migrasi.
- Perbarui fungsi pada `RolesController` untuk menyertakan posisi dalam proses CRUD.
- Gunakan model `Position` untuk mendapatkan daftar posisi baik saat membuat maupun mengedit role.
- Sesuaikan nama permission dari `roles.view` ke `roles.read`, `roles.store` ke `roles.create`, dan `roles.edit` ke `roles.update` agar konsisten.
- Perbarui validasi di `RoleRequest` untuk mendukung input `position_id`.
- Tambahkan properti `position_id` ke atribut `fillable` di model Role untuk mendukung mass assignment.
- Buat fungsi relasi `position()` pada model Role untuk mereferensikan ke model Position.
- Perbarui tampilan form role (`create.blade.php`):
- Tambahkan dropdown untuk memilih posisi dalam form input.
- Tampilkan informasi level posisi bersama dengan nama posisi dalam dropdown.
- Sinkronisasi validasi dan nilai default sesuai dengan pengaturan posisi.
- Perbaikan minor pada query pencarian data roles, menggunakan `whereRaw` untuk pencarian case-insensitive.