# Modul Pengajuan Mutasi SGI — USER → ADMIN

Modul ini menambahkan pengajuan mutasi karyawan dengan alur:

`USER → MENUNGGU → ADMIN/SUPERADMIN → DISETUJUI / DITOLAK`

## File
- `app/Http/Controllers/PengajuanMutasiController.php`
- `app/Models/PengajuanMutasi.php`
- `resources/views/pengajuan_mutasi/index.blade.php`
- `resources/views/pengajuan_mutasi/create.blade.php`
- `routes/web.php.txt`
- migration dari paket sebelumnya: `2026_09_19_000001_create_pengajuan_mutasi_table.php`

## Pasang
1. Salin controller dan model ke folder Laravel.
2. Salin folder `resources/views/pengajuan_mutasi`.
3. Gabungkan isi `routes/web.php.txt` ke `routes/web.php`.
4. Jalankan:
   `php artisan migrate`
5. Pastikan layout utama menggunakan `layouts.app` atau ubah `@extends('layouts.app')` pada kedua Blade.

## Catatan nama kolom master
View/controller paket ini mengikuti rancangan baru: `cabang.nama`, `bagian.nama`, `jabatan.nama`, dan `pegawai.nama`.
Jika migration Anda memakai nama berbeda (misalnya `nama_cabang`, `bagian`, `jabatan`), sesuaikan empat bagian tersebut.

## Keamanan
- USER hanya melihat/mengajukan karyawan dari `cabang_id` miliknya.
- ADMIN/SUPERADMIN dapat memproses pengajuan.
- Persetujuan menggunakan DB transaction.
- Pengajuan yang disetujui membuat histori `mutasi_pegawai` jika model tersedia, lalu memperbarui pegawai.
- Pengajuan yang ditolak tidak mengubah data pegawai.
