si-klinik/sk-klinik.my.id/database/seeders/ServiceSeeder.php

73 lines
2.0 KiB
PHP

<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
use App\Models\Service;
use App\Models\ServiceCategory;
class ServiceSeeder extends Seeder
{
public function run(): void
{
// Ambil kategori
$medis = ServiceCategory::where('name', 'Pelayanan Medis Umum')->first();
$bedah = ServiceCategory::where('name', 'Bedah Minor')->first();
$penunjang = ServiceCategory::where('name', 'Penunjang Medis')->first();
$kandungan = ServiceCategory::where('name', 'Kebidanan & Kandungan')->first();
// =====================
// 1. Pelayanan Medis Umum
// =====================
$this->insertServices($medis, [
'Unit Gawat Darurat (UGD) 24 Jam',
'Poliklinik Dokter Umum',
'Rawat Inap',
]);
// =====================
// 2. Bedah Minor
// =====================
$this->insertServices($bedah, [
'Cirkumsisi (Khitan)',
'Abses (Bisul)',
'Clavus (Kapalen)',
'Ganglioma (Uci-Uci)',
'Peringual (Cantengan)',
]);
// =====================
// 3. Penunjang Medis
// =====================
$this->insertServices($penunjang, [
'Laboratorium',
'Farmasi',
'ECG (Rekam Jantung)',
'USG Kandungan',
]);
// =====================
// 4. Kebidanan & Kandungan
// =====================
$this->insertServices($kandungan, [
'Pemeriksaan Kehamilan',
'USG Kehamilan',
'Persalinan Normal',
'Perawatan Ibu Nifas & Bayi Baru Lahir',
'KB (Suntik, IUD, Pil, & Implan)',
]);
}
private function insertServices($category, $services)
{
if (!$category) return;
foreach ($services as $service) {
Service::firstOrCreate([
'name' => $service,
'category_id' => $category->id
]);
}
}
}