<?php

namespace App\Database\Seeds;

use CodeIgniter\Database\Seeder;

class PegawaiSeeder extends Seeder
{
    public function run()
    {
        $pegawaiData = [
            [
                'nip_baru' => '198206092010011004', 'nip_lama' => NULL, 'nama' => 'HELMI KARIM', 'gelar_depan' => NULL, 'gelar_belakang' => 'S.E',
                'tempat_lahir' => 'TILAMUTA', 'tanggal_lahir' => '1982-06-09', 'jenis_kelamin' => 'LAKI-LAKI', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502040906820001', 'no_hp' => '85399943736', 'email' => 'helmipapailham@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A201200075542',
                'nomor_sk_cpns' => '813.2/297/BKD-DIKLAT/SK/XII/2009', 'tanggal_sk_cpns' => '2009-12-07', 'tmt_cpns' => '2010-01-01',
                'nomor_sk_pns' => '821.12/833/bkdd/sk/xii/2011', 'tanggal_sk_pns' => '2011-12-12', 'tmt_pns' => '2012-01-01',
                'gol_awal' => 'II/c', 'gol_akhir' => 'III/d', 'tmt_golongan' => '2025-04-01',
                'masa_kerja_tahun' => 18, 'masa_kerja_bulan' => 3, 'jenis_jabatan' => 'Jabatan Struktural',
                'jabatan' => 'KEPALA SUB BAGIAN UMUM DAN KEPEGAWAIAN DINAS KELAUTAN DAN PERIKANAN', 'tmt_jabatan' => '2023-09-25',
                'tingkat_pendidikan' => 'S-1/Sarjana', 'pendidikan' => 'S-1 MANAJEMEN', 'tahun_lulus' => 2011,
                'lokasi_kerja' => 'TILAMUTA', 'unor' => 'SUB BAGIAN UMUM DAN KEPEGAWAIAN DINAS KELAUTAN DAN PERIKANAN - SEKRETARIAT DINAS KELAUTAN DAN PERIKANAN',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '198312012011012001', 'nip_lama' => NULL, 'nama' => 'NIRMAWATI HUSAIN', 'gelar_depan' => NULL, 'gelar_belakang' => 'SE, M. S.A',
                'tempat_lahir' => 'TIBAWA', 'tanggal_lahir' => '1983-12-01', 'jenis_kelamin' => 'PEREMPUAN', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502024112830002', 'no_hp' => '85256411683', 'email' => 'nirmawatihusain@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A201300015108',
                'nomor_sk_cpns' => '813.3/1136/BKD-DIKLAT/SK/XII/2010', 'tanggal_sk_cpns' => '2010-12-31', 'tmt_cpns' => '2011-01-01',
                'nomor_sk_pns' => '821.13/197/BKD-DIKLAT/SK/XII/2012', 'tanggal_sk_pns' => '2012-12-28', 'tmt_pns' => '2013-01-01',
                'gol_awal' => 'III/a', 'gol_akhir' => 'III/d', 'tmt_golongan' => '2023-04-01',
                'masa_kerja_tahun' => 12, 'masa_kerja_bulan' => 3, 'jenis_jabatan' => 'Jabatan Pelaksana',
                'jabatan' => 'PENELAAH TEKNIS KEBIJAKAN', 'tmt_jabatan' => '2025-02-01',
                'tingkat_pendidikan' => 'S-2', 'pendidikan' => 'S-2 MAGISTER AKUNTANSI', 'tahun_lulus' => 2017,
                'lokasi_kerja' => 'WONOSARI', 'unor' => 'SUB BAGIAN TATA USAHA RSUD Dr. Ir. IWAN BOKINGS - RSUD Dr. Ir. IWAN BOKINGS',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '199406092019021005', 'nip_lama' => NULL, 'nama' => 'IRHAM IDRUS', 'gelar_depan' => NULL, 'gelar_belakang' => 'S.Pd.',
                'tempat_lahir' => 'TABONGO', 'tanggal_lahir' => '1994-06-09', 'jenis_kelamin' => 'LAKI-LAKI', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502030906940001', 'no_hp' => '85398067636', 'email' => 'irhamidrus014@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A202000118453',
                'nomor_sk_cpns' => '05.a/813.3/BKD-DIKLAT/SK/II/2019', 'tanggal_sk_cpns' => '2019-02-04', 'tmt_cpns' => '2019-02-01',
                'nomor_sk_pns' => '06/821.13/BKD-DIKLAT/SK.PNS/I/2020', 'tanggal_sk_pns' => '2020-01-13', 'tmt_pns' => '2020-02-01',
                'gol_awal' => 'III/a', 'gol_akhir' => 'III/b', 'tmt_golongan' => '2023-10-01',
                'masa_kerja_tahun' => 4, 'masa_kerja_bulan' => 8, 'jenis_jabatan' => 'Jabatan Fungsional',
                'jabatan' => 'Guru Ahli Pertama', 'tmt_jabatan' => '2020-02-01',
                'tingkat_pendidikan' => 'S-1/Sarjana', 'pendidikan' => 'S-1 PENDIDIKAN PANCASILA DAN KEWARGANEGARAAN', 'tahun_lulus' => 2018,
                'lokasi_kerja' => 'PAGUYAMAN PANTAI', 'unor' => 'SMP NEGERI 2 PAGUYAMAN PANTAI - DINAS PENDIDIKAN DAN KEBUDAYAAN',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '199302012019022005', 'nip_lama' => NULL, 'nama' => 'SINTIYA PAKAYA', 'gelar_depan' => NULL, 'gelar_belakang' => 'S.KM.',
                'tempat_lahir' => 'PAGUYAMAN', 'tanggal_lahir' => '1993-02-01', 'jenis_kelamin' => 'PEREMPUAN', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502014102930002', 'no_hp' => '82296209766', 'email' => 'sintiyapakaya954@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A202000098621',
                'nomor_sk_cpns' => '05.a/813.2/BKD-DIKLAT/SK/II/2019', 'tanggal_sk_cpns' => '2019-02-04', 'tmt_cpns' => '2019-02-01',
                'nomor_sk_pns' => '06/821.12/BKD-DIKLAT/SK.PNS/I/2020', 'tanggal_sk_pns' => '2020-01-13', 'tmt_pns' => '2020-02-01',
                'gol_awal' => 'III/a', 'gol_akhir' => 'III/b', 'tmt_golongan' => '2022-04-01',
                'masa_kerja_tahun' => 3, 'masa_kerja_bulan' => 2, 'jenis_jabatan' => 'Jabatan Fungsional',
                'jabatan' => 'Epidemiolog Kesehatan Ahli Pertama', 'tmt_jabatan' => '2020-02-01',
                'tingkat_pendidikan' => 'S-1/Sarjana', 'pendidikan' => 'S-1 KESEHATAN MASYARAKAT', 'tahun_lulus' => 2015,
                'lokasi_kerja' => 'PAGUYAMAN', 'unor' => 'SEKSI PENUNJANG MEDIS RSUD Dr. Ir. IWAN BOKINGS - RSUD Dr. Ir. IWAN BOKINGS',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '197306112005011006', 'nip_lama' => '940001564', 'nama' => 'RUSLI BADU', 'gelar_depan' => NULL, 'gelar_belakang' => NULL,
                'tempat_lahir' => 'LIMBOTO', 'tanggal_lahir' => '1973-06-11', 'jenis_kelamin' => 'LAKI-LAKI', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502041106730002', 'no_hp' => '85240290394', 'email' => 'ruslibadu@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A200600054346',
                'nomor_sk_cpns' => '821.2/07/SK/II/121/2005', 'tanggal_sk_cpns' => '2005-02-14', 'tmt_cpns' => '2005-01-01',
                'nomor_sk_pns' => '821.12/BKD-DIKLAT/SK/01/I/2006', 'tanggal_sk_pns' => '2006-01-30', 'tmt_pns' => '2006-02-01',
                'gol_awal' => 'II/a', 'gol_akhir' => 'III/d', 'tmt_golongan' => '2019-10-01',
                'masa_kerja_tahun' => 9, 'masa_kerja_bulan' => 9, 'jenis_jabatan' => 'Jabatan Fungsional',
                'jabatan' => 'Administrator Kesehatan Ahli Muda', 'tmt_jabatan' => '2023-11-01',
                'tingkat_pendidikan' => 'S-1/Sarjana', 'pendidikan' => 'S-1 KESEHATAN MASYARAKAT', 'tahun_lulus' => 2010,
                'lokasi_kerja' => 'TILAMUTA', 'unor' => 'SEKSI MUTU DAN ETIKA PROFESI BIDANG KEPERAWATAN UPTD RSUD drg. CLARA GOBEL - BIDANG KEPERAWATAN UPTD RSUD drg. CLARA GOBEL',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '198205192006041007', 'nip_lama' => '940003058', 'nama' => 'RUSDI ABDULLAH', 'gelar_depan' => NULL, 'gelar_belakang' => NULL,
                'tempat_lahir' => 'PAGUYAMAN', 'tanggal_lahir' => '1982-05-19', 'jenis_kelamin' => 'LAKI-LAKI', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502071905820001', 'no_hp' => '85397462733', 'email' => 'rusdiabdullah19@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A200700121863',
                'nomor_sk_cpns' => '813.2/BKDD/SK/III/116/2006', 'tanggal_sk_cpns' => '2006-04-01', 'tmt_cpns' => '2006-04-01',
                'nomor_sk_pns' => '821.12/BKDD/SK/52/V/2007', 'tanggal_sk_pns' => '2007-05-30', 'tmt_pns' => '2007-06-01',
                'gol_awal' => 'II/a', 'gol_akhir' => 'III/a', 'tmt_golongan' => '2022-04-01',
                'masa_kerja_tahun' => 11, 'masa_kerja_bulan' => 0, 'jenis_jabatan' => 'Jabatan Pelaksana',
                'jabatan' => 'PENGADMINISTRASI PERKANTORAN', 'tmt_jabatan' => '2025-02-01',
                'tingkat_pendidikan' => 'SLTA', 'pendidikan' => 'SMK LISTRIK INSTALASI', 'tahun_lulus' => 2001,
                'lokasi_kerja' => 'PAGUYAMAN PANTAI', 'unor' => 'SMP NEGERI 2 PAGUYAMAN PANTAI - DINAS PENDIDIKAN DAN KEBUDAYAAN',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '198403102009011002', 'nip_lama' => NULL, 'nama' => 'HADI SUWITO DIM JAENO', 'gelar_depan' => NULL, 'gelar_belakang' => 'ST',
                'tempat_lahir' => 'PAGUYAMAN', 'tanggal_lahir' => '1984-03-10', 'jenis_kelamin' => 'LAKI-LAKI', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7501131003840002', 'no_hp' => '82291733222', 'email' => 'h_wito84@ymail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A201100203100',
                'nomor_sk_cpns' => '813.2/BKDD/SK/02/I/2009', 'tanggal_sk_cpns' => '2009-01-08', 'tmt_cpns' => '2009-01-01',
                'nomor_sk_pns' => '821.12/1029/BKD/SK/XII/2010', 'tanggal_sk_pns' => '2010-12-02', 'tmt_pns' => '2011-01-01',
                'gol_awal' => 'II/a', 'gol_akhir' => 'III/c', 'tmt_golongan' => '2020-04-01',
                'masa_kerja_tahun' => 11, 'masa_kerja_bulan' => 3, 'jenis_jabatan' => 'Jabatan Fungsional',
                'jabatan' => 'Perencana Ahli Muda', 'tmt_jabatan' => '2022-01-03',
                'tingkat_pendidikan' => 'S-1/Sarjana', 'pendidikan' => 'S-1 TEKNIK SIPIL', 'tahun_lulus' => 2011,
                'lokasi_kerja' => 'TILAMUTA', 'unor' => 'BIDANG PERENCANAAN PENGENDALIAN DAN EVALUASI PEMBANGUNAN BADAN PERENCANAAN, PENELITIAN DAN PENGEMBANGAN DAERAH - BADAN PERENCANAAN, PENELITIAN DAN PENGEMBANGAN DAERAH',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '198106132006041009', 'nip_lama' => '940002920', 'nama' => 'EKO KHOERUL NURNAMAWI', 'gelar_depan' => NULL, 'gelar_belakang' => 'S.Pd, M.Pd',
                'tempat_lahir' => 'GAMBIRAN', 'tanggal_lahir' => '1981-06-13', 'jenis_kelamin' => 'LAKI-LAKI', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502041306810003', 'no_hp' => '81340719321', 'email' => 'eko_khoerul@yahoo.co.id',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A200700112332',
                'nomor_sk_cpns' => '813.3/BKDD/SK/III/116/2006', 'tanggal_sk_cpns' => '2006-03-31', 'tmt_cpns' => '2006-04-01',
                'nomor_sk_pns' => '821.13/BKD-DIKLAT/SK/52/V/2007', 'tanggal_sk_pns' => '2007-05-30', 'tmt_pns' => '2007-06-01',
                'gol_awal' => 'III/a', 'gol_akhir' => 'IV/c', 'tmt_golongan' => '2025-10-01',
                'masa_kerja_tahun' => 19, 'masa_kerja_bulan' => 6, 'jenis_jabatan' => 'Jabatan Fungsional',
                'jabatan' => 'Guru Ahli Madya', 'tmt_jabatan' => '2017-02-01',
                'tingkat_pendidikan' => 'S-2', 'pendidikan' => 'S-2 PENDIDIKAN DASAR (KONST. SAINS)', 'tahun_lulus' => 2012,
                'lokasi_kerja' => 'TILAMUTA', 'unor' => 'SMP NEGERI 4 TILAMUTA - DINAS PENDIDIKAN DAN KEBUDAYAAN',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '198501042010011002', 'nip_lama' => NULL, 'nama' => 'ABD. RAHMAT HASAN', 'gelar_depan' => NULL, 'gelar_belakang' => 'A.Md',
                'tempat_lahir' => 'TILAMUTA', 'tanggal_lahir' => '1985-01-04', 'jenis_kelamin' => 'LAKI-LAKI', 'agama' => 'Islam', 'status_kawin' => 'Menikah',
                'nik' => '7502060401850002', 'no_hp' => NULL, 'email' => 'jengki.speda@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A201200120673',
                'nomor_sk_cpns' => '813.2/298/BKDD/SK/XII/2009', 'tanggal_sk_cpns' => '2009-12-07', 'tmt_cpns' => '2010-01-01',
                'nomor_sk_pns' => '812.12/833/BKDD/SK/XII/2011', 'tanggal_sk_pns' => '2011-12-12', 'tmt_pns' => '2012-01-01',
                'gol_awal' => 'II/c', 'gol_akhir' => 'III/c', 'tmt_golongan' => '2026-04-01',
                'masa_kerja_tahun' => 14, 'masa_kerja_bulan' => 3, 'jenis_jabatan' => 'Jabatan Pelaksana',
                'jabatan' => 'PENGOLAH DATA DAN INFORMASI', 'tmt_jabatan' => '2025-02-01',
                'tingkat_pendidikan' => 'Diploma III/Sarjana Muda', 'pendidikan' => 'D-III TEKNIK ELEKTRO', 'tahun_lulus' => 2007,
                'lokasi_kerja' => 'TILAMUTA', 'unor' => 'BIDANG PERENCANAAN PENGENDALIAN DAN EVALUASI PEMBANGUNAN BADAN PERENCANAAN, PENELITIAN DAN PENGEMBANGAN DAERAH - BADAN PERENCANAAN, PENELITIAN DAN PENGEMBANGAN DAERAH',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
            [
                'nip_baru' => '198610052010012003', 'nip_lama' => NULL, 'nama' => 'RISNAWATI MAKU', 'gelar_depan' => NULL, 'gelar_belakang' => 'S.Pd.',
                'tempat_lahir' => 'TILAMUTA', 'tanggal_lahir' => '1986-10-05', 'jenis_kelamin' => 'PEREMPUAN', 'agama' => 'Islam', 'status_kawin' => 'Belum Kawin',
                'nik' => '7502064510860002', 'no_hp' => '81340263682', 'email' => 'risnawatimaku86@gmail.com',
                'status_cpns_pns' => 'P', 'kartu_asn_virtual' => 'A201200155850',
                'nomor_sk_cpns' => '804/A2/KP/1998', 'tanggal_sk_cpns' => '1998-01-05', 'tmt_cpns' => '2010-01-01',
                'nomor_sk_pns' => '1787/I16.3/KP/1999', 'tanggal_sk_pns' => '1999-02-28', 'tmt_pns' => '2012-01-01',
                'gol_awal' => 'II/b', 'gol_akhir' => 'III/c', 'tmt_golongan' => '2022-10-01',
                'masa_kerja_tahun' => 10, 'masa_kerja_bulan' => 9, 'jenis_jabatan' => 'Jabatan Fungsional',
                'jabatan' => 'Guru Ahli Muda', 'tmt_jabatan' => '2022-08-01',
                'tingkat_pendidikan' => 'S-1/Sarjana', 'pendidikan' => 'S-1 PENDIDIKAN GURU PENDIDIKAN ANAK USIA DINI', 'tahun_lulus' => 2015,
                'lokasi_kerja' => 'BOTUMOITO', 'unor' => 'TK NEGERI 02 KARTINI BOTUMOITO - DINAS PENDIDIKAN DAN KEBUDAYAAN',
                'unit_kerja_induk' => 'Pemerintah Kab. Boalemo', 'instansi_kerja' => 'Pemerintah Kab. Boalemo'
            ],
        ];

        $pegawaiModel = new \App\Models\PegawaiModel();
        $userModel = new \App\Models\UserModel();
        $db = \Config\Database::connect();
        
        $roleId = $db->table('roles')->where('slug', 'user')->get()->getRow()->id;

        foreach ($pegawaiData as $data) {
            // 1. Create User Account
            $userId = $userModel->insert([
                'username' => $data['nip_baru'],
                'nip' => $data['nip_baru'],
                'name' => $data['nama'],
                'password' => password_hash($data['nip_baru'], PASSWORD_DEFAULT),
                'is_active' => 1
            ]);

            if ($userId) {
                // 2. Assign Role
                $db->table('user_roles')->insert([
                    'user_id' => $userId,
                    'role_id' => $roleId
                ]);

                // 3. Create Pegawai record
                $data['user_id'] = $userId;
                $pegawaiModel->insert($data);
            }
        }
    }
}
