skl/database/seeders/KabupatenTableSeeder.php

39 lines
1.1 KiB
PHP

<?php
namespace Database\Seeders;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Http;
use App\Models\Kabupaten;
use Illuminate\Support\Facades\Log;
class KabupatenTableSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
// Ambil data kabupaten dari API
$response = Http::get('https://api-wilayah.dinaslhdki.id/api/kabupaten/dkj/search');
// Loop data kabupaten yang diterima dari API
foreach ($response->json() as $kabupaten) {
// Convert the id format and map the data
$cleanId = str_replace('.', '', $kabupaten['id']);
Kabupaten::create([
'KabupatenId' => $cleanId,
'NamaKabupaten' => $kabupaten['data']
]);
// Log data kabupaten yang sedang di-seed
Log::info('Seeding kabupaten: ', [
'KabupatenId' => $cleanId,
'NamaKabupaten' => $kabupaten['data']
]);
}
}
}