simedkom/database/seeders/GovernmentAgencySeeder.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]
);
}
}