<?php

namespace Database\Seeders;

use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use App\Models\Master\Instansi;

class InstansiSeeder extends Seeder
{
    /**
     * Run the database seeds.
     */
    public function run(): void
    {
        $instansi = [
            // Kementerian / Lembaga Pemerintah Pusat
            ['type' => 'kementrian', 'name' => 'Dirjen Bina Marga'],
            ['type' => 'kementrian', 'name' => 'Direktorat Pengelolaan Limbah B3 dan Non B3 Deputi PSLB3 KLHK'],
            ['type' => 'kementrian', 'name' => 'BKSDA Jakarta'],
            ['type' => 'kementrian', 'name' => 'Balai Taman Nasional Kepulauan Seribu'],
            ['type' => 'kementrian', 'name' => 'BPH Migas'],
            ['type' => 'kementrian', 'name' => 'DPHK'],
            ['type' => 'kementrian', 'name' => 'DKTKE'],
            ['type' => 'kementrian', 'name' => 'Pertamina MOR III'],

            // Biro / Sekretariat / Unit Pelayanan
            ['type' => 'biro', 'name' => 'Unit Pelayanan Terpadu Satu Pintu KLH'],
            ['type' => 'biro', 'name' => 'Biro Hukum'],

            // Lembaga Non-Kementerian / Badan Nasional
            ['type' => 'badan-nasional', 'name' => 'BMKG Prov. DKI'],
            ['type' => 'badan-nasional', 'name' => 'BPS Prov. DKI Jakarta'],
            ['type' => 'badan-nasional', 'name' => 'PGN'],
            ['type' => 'badan-nasional', 'name' => 'PHE ONWJ'],
            ['type' => 'badan-nasional', 'name' => 'Pertamina Hulu Energi'],
            ['type' => 'badan-nasional', 'name' => 'KAI Commuter'],
            ['type' => 'badan-nasional', 'name' => 'BPH Migas'],
            ['type' => 'badan-nasional', 'name' => 'Balai Taman Nasional'],
            ['type' => 'badan-nasional', 'name' => 'BKSDA Jakarta'],

            // Lembaga / Badan Pemerintah Daerah
            ['type' => 'lembaga-daerah', 'name' => 'Bappeda'],
            ['type' => 'lembaga-daerah', 'name' => 'Bapenda'],
            ['type' => 'lembaga-daerah', 'name' => 'BPBD'],
            ['type' => 'lembaga-daerah', 'name' => 'DCKTRP'],
            ['type' => 'lembaga-daerah', 'name' => 'DSDA'],
            ['type' => 'lembaga-daerah', 'name' => 'DKPKP'],
            ['type' => 'lembaga-daerah', 'name' => 'DPMPTSP'],
            ['type' => 'lembaga-daerah', 'name' => 'Dinkes'],
            ['type' => 'lembaga-daerah', 'name' => 'Dinas Dukcapil'],
            ['type' => 'lembaga-daerah', 'name' => 'Dinas Bina Marga'],
            ['type' => 'lembaga-daerah', 'name' => 'Dinas Gulkarmat'],
            ['type' => 'lembaga-daerah', 'name' => 'Dinas Sosial'],
            ['type' => 'lembaga-daerah', 'name' => 'Dishub'],
            ['type' => 'lembaga-daerah', 'name' => 'Dinas Kominfotik'],
            ['type' => 'lembaga-daerah', 'name' => 'DLH'],
            ['type' => 'lembaga-daerah', 'name' => 'Paljaya'],
            ['type' => 'lembaga-daerah', 'name' => 'PAM Jaya'],
            ['type' => 'lembaga-daerah', 'name' => 'Transjakarta'],
            ['type' => 'lembaga-daerah', 'name' => 'MRT Jakarta'],
        ];

        foreach($instansi as $dataInstansi){
            Instansi::updateOrCreate([
                'parent' => $dataInstansi['type'],
                'name' => $dataInstansi['name'],
            ],[
                'parent' => $dataInstansi['type'],
                'name' => $dataInstansi['name'],
            ]);
        }

    }
}
