toArray(); // Make sure we have Kelurahan records if (empty($kelurahanIds)) { throw new \Exception("No Kelurahan records found. Please seed the Kelurahan table first."); } // Get available JenisKegiatan IDs from the database $jenisKegiatanIds = \App\Models\JenisKegiatan::pluck('JenisKegiatanId')->toArray(); // Make sure we have JenisKegiatan records if (empty($jenisKegiatanIds)) { throw new \Exception("No JenisKegiatan records found. Please seed the JenisKegiatan table first."); } // Get available Verifikator IDs from the database $verifikatorIds = \App\Models\Verifikator::pluck('VerifikatorId')->toArray(); // Make sure we have Verifikator records if (empty($verifikatorIds)) { throw new \Exception("No Verifikator records found. Please seed the Verifikator table first."); } for ($i = 0; $i < 100; $i++) { $data[] = [ 'NomorInduk' => $faker->unique()->numerify('P########'), 'JenisKegiatanId' => $faker->randomElement($jenisKegiatanIds), 'NamaPerusahaan' => $faker->company, 'Alamat' => $faker->address, 'KelurahanId' => $faker->randomElement($kelurahanIds), 'KodePos' => $faker->postcode, 'Telepon' => $faker->phoneNumber, 'JenisDokILId' => $faker->numberBetween(1, 3), 'VerifikatorId' => $faker->randomElement($verifikatorIds), 'IsPublish' => $faker->boolean, 'Bujur' => $faker->longitude, 'CPNama' => $faker->name, 'CPTelepon' => $faker->phoneNumber, 'ILNomor' => $faker->bothify('IL-####/???/####'), 'ILTanggal' => $faker->date(), 'JenisDokILId' => $faker->numberBetween(1, 3), 'VerifikatorId' => $faker->numberBetween(1, 10), 'IsPublish' => $faker->boolean, 'ILDokumen' => $faker->randomElement(['dokumen1.pdf', 'dokumen2.pdf', 'dokumen3.pdf']), 'ReportLocked' => $faker->boolean, 'created_at' => $timestamp, 'updated_at' => $timestamp, ]; // Insert in chunks to avoid memory issues if (($i + 1) % 100 === 0 || $i === 99) { Perusahaan::insert($data); $data = []; } } // Insert any remaining records if (!empty($data)) { Perusahaan::insert($data); } } }