# Master Blacklist Karyawan

- Module key: `MasterBlacklistKaryawan`
- Category: `HRIS`
- Path: `app/Modules/MasterBlacklistKaryawan`

## Ringkasan

Master Blacklist Karyawan berada di kategori HRIS. Modul ini memiliki 7 definisi route, 1 controller, 1 model, dan 1 view. Database module terdeteksi pada tabel: `master_karyawan_blacklists`.

## Flowchart

```mermaid
flowchart TD
    A[User / Operator] --> B[Menu Master Blacklist Karyawan]
    B --> C[Routes: 7]
    C --> D[Controllers: 1]
    D --> E[Views: 1]
    D --> F[(Tables: 1<br/>master_karyawan_blacklists)]
    D --> G[Validation / Business Rules]
    G --> F
    F --> H[Report / Export / Audit]
```


## Routes

- `Route::middleware(['auth', 'ip.block', 'menu.access'])->group(function () {`  
  File: `app/Modules/MasterBlacklistKaryawan/routes/web.php`
- `Route::prefix('master-blacklist-karyawan')->name('master_blacklist_karyawan.')->group(function () {`  
  File: `app/Modules/MasterBlacklistKaryawan/routes/web.php`
- `Route::get('/', [MasterBlacklistKaryawanController::class, 'index'])->name('index');`  
  File: `app/Modules/MasterBlacklistKaryawan/routes/web.php`
- `Route::get('data', [MasterBlacklistKaryawanController::class, 'data'])->name('data');`  
  File: `app/Modules/MasterBlacklistKaryawan/routes/web.php`
- `Route::post('/', [MasterBlacklistKaryawanController::class, 'store'])->name('store');`  
  File: `app/Modules/MasterBlacklistKaryawan/routes/web.php`
- `Route::put('{id}', [MasterBlacklistKaryawanController::class, 'update'])->name('update');`  
  File: `app/Modules/MasterBlacklistKaryawan/routes/web.php`
- `Route::delete('{id}', [MasterBlacklistKaryawanController::class, 'destroy'])->name('destroy');`  
  File: `app/Modules/MasterBlacklistKaryawan/routes/web.php`

## Controllers

- `app/Modules/MasterBlacklistKaryawan/Http/Controllers/MasterBlacklistKaryawanController.php`

## Models

- `app/Modules/MasterBlacklistKaryawan/Models/KaryawanBlacklistModel.php`

## Views

- `app/Modules/MasterBlacklistKaryawan/Resources/views/index.blade.php`

## Database / Migration

### `master_karyawan_blacklists`
- Actions: `create`
- Columns: 15
  - `employee_code:string`
  - `finger_id:string`
  - `nik:string`
  - `full_name:string`
  - `ktp_no:string`
  - `npwp:string`
  - `phone:string`
  - `email:string`
  - `address:text`
  - `reason:text`
  - `source:string`
  - `blacklisted_at:date`
  - `expires_at:date`
  - `is_active:boolean`
  - `created_by:unsignedBigInteger`
- Migrations:
  - `app/Modules/MasterBlacklistKaryawan/Database/migrations/2026_03_27_000001_create_master_karyawan_blacklists_table.php`
