45 lines
1.2 KiB
PHP
45 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Models\GovernmentAgency;
|
|
use App\Models\Legacy\OldGovernmentAgency;
|
|
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
|
use Illuminate\Database\Seeder;
|
|
use Illuminate\Support\Str;
|
|
|
|
class GovernmentAgencySeeder extends Seeder
|
|
{
|
|
/**
|
|
* Run the database seeds.
|
|
*/
|
|
public function run(): void
|
|
{
|
|
$legacyGovernmentAgencies = OldGovernmentAgency::all();
|
|
|
|
foreach ($legacyGovernmentAgencies as $agency) {
|
|
$normalizedAgencyName = trim($agency->name); // Hapus spasi berlebih
|
|
|
|
// Cari apakah sudah ada yang mirip dengan nama ini (tanpa memperhatikan huruf besar/kecil)
|
|
$existingAgency = GovernmentAgency::whereRaw('LOWER(name) = ?', [strtolower($normalizedAgencyName)])->first();
|
|
|
|
if (!$existingAgency) {
|
|
GovernmentAgency::create([
|
|
'name' => $normalizedAgencyName, // Simpan dengan format aslinya
|
|
'created_at' => $agency->created_at,
|
|
'updated_at' => $agency->updated_at,
|
|
'enhancer_id' => $agency->user_id,
|
|
]);
|
|
}
|
|
}
|
|
|
|
// Tambahkan "Lainnya" jika belum ada
|
|
GovernmentAgency::firstOrCreate(
|
|
['name' => 'Lainnya'],
|
|
['enhancer_id' => 1]
|
|
);
|
|
}
|
|
|
|
|
|
}
|