From ebfaef71b008d6468567ea4534245583332b5845 Mon Sep 17 00:00:00 2001 From: Nawcodes Date: Sun, 27 Apr 2025 19:00:20 +0700 Subject: [PATCH] fix: adjust seed with real data --- .../Resources/TrRegistrasiResource.php | 15 +++- database/seeders/AsuransiSeeder.php | 18 ++--- database/seeders/RegisterSeeder.php | 2 +- database/seeders/RuangPelayananSeeder.php | 21 +++--- database/seeders/TindakanSeeder.php | 68 ++++++++++++++++--- 5 files changed, 97 insertions(+), 27 deletions(-) diff --git a/app/Filament/Resources/TrRegistrasiResource.php b/app/Filament/Resources/TrRegistrasiResource.php index 5c369b6..2ac4070 100644 --- a/app/Filament/Resources/TrRegistrasiResource.php +++ b/app/Filament/Resources/TrRegistrasiResource.php @@ -90,7 +90,20 @@ class TrRegistrasiResource extends Resource ->default('Belum Ada Transaksi') ->openUrlInNewTab(), ]) - ->filters([]) + ->filters([ + SelectFilter::make('id_pegawai') + ->label('Pegawai') + ->options(MsPegawai::all()->pluck('nama_pegawai', 'id_pegawai')) + ->searchable(), + SelectFilter::make('id_asuransi') + ->label('Asuransi') + ->options(MsAsuransi::all()->pluck('nama_asuransi', 'id_asuransi')) + ->searchable(), + SelectFilter::make('id_ruang_pelayanan') + ->label('Ruang Pelayanan') + ->options(MsRuangPelayanan::all()->pluck('nama_ruang_pelayanan', 'id_ruang_pelayanan')) + ->searchable(), + ]) ->actions([ Tables\Actions\ViewAction::make(), // Tables\Actions\EditAction::make(), diff --git a/database/seeders/AsuransiSeeder.php b/database/seeders/AsuransiSeeder.php index 9373cf5..b236719 100644 --- a/database/seeders/AsuransiSeeder.php +++ b/database/seeders/AsuransiSeeder.php @@ -2,6 +2,7 @@ namespace Database\Seeders; +use App\Models\MsAsuransi; use Illuminate\Database\Console\Seeds\WithoutModelEvents; use Illuminate\Database\Seeder; use Illuminate\Support\Facades\DB; @@ -13,15 +14,16 @@ class AsuransiSeeder extends Seeder */ public function run(): void { - $faker = \Faker\Factory::create(); + $asuransi = [ + ['nama_asuransi' => 'BPJS Kesehatan', 'keterangan' => 'Asuransi pemerintah untuk kesehatan rakyat.'], + ['nama_asuransi' => 'Asuransi AXA Mandiri', 'keterangan' => 'Asuransi swasta untuk kesehatan individu dan keluarga.'], + ['nama_asuransi' => 'Prudential', 'keterangan' => 'Asuransi swasta untuk perlindungan kesehatan dan jiwa.'], + ['nama_asuransi' => 'Manulife', 'keterangan' => 'Asuransi kesehatan dan asuransi jiwa internasional.'], + ['nama_asuransi' => 'Allianz', 'keterangan' => 'Asuransi kesehatan premium dan proteksi investasi.'], + ]; - foreach (range(1, 10) as $i) { - DB::table('ms_asuransi')->insert([ - 'nama_asuransi' => 'Asuransi ' . $faker->word, - 'keterangan' => $faker->sentence, - 'created_at' => now(), - 'updated_at' => now(), - ]); + foreach ($asuransi as $item) { + MsAsuransi::create($item); } } } diff --git a/database/seeders/RegisterSeeder.php b/database/seeders/RegisterSeeder.php index 0fca27e..502672d 100644 --- a/database/seeders/RegisterSeeder.php +++ b/database/seeders/RegisterSeeder.php @@ -22,7 +22,7 @@ class RegisterSeeder extends Seeder for ($i = 0; $i < 10; $i++) { TrRegistrasi::create([ 'id_registrasi' => 'REG-' . $faker->unique()->randomNumber(8), - 'tgl_registrasi' => $faker->date(), + 'tgl_registrasi' => $faker->dateTimeBetween('-1 month', 'now'), 'mr_pasien' => MsPasien::all()->random()->mr_pasien, 'id_asuransi' => MsAsuransi::all()->random()->id_asuransi, 'id_pegawai' => MsPegawai::all()->random()->id_pegawai, diff --git a/database/seeders/RuangPelayananSeeder.php b/database/seeders/RuangPelayananSeeder.php index f459381..3b2a7ec 100644 --- a/database/seeders/RuangPelayananSeeder.php +++ b/database/seeders/RuangPelayananSeeder.php @@ -2,9 +2,12 @@ namespace Database\Seeders; +use App\Models\MsRuangPelayanan; use Illuminate\Database\Console\Seeds\WithoutModelEvents; use Illuminate\Database\Seeder; use Illuminate\Support\Facades\DB; +use Illuminate\Support\Str; + class RuangPelayananSeeder extends Seeder { @@ -15,14 +18,16 @@ class RuangPelayananSeeder extends Seeder { $faker = \Faker\Factory::create(); - foreach (range(1, 10) as $i) { - DB::table('ms_ruang_pelayanan')->insert([ - 'id_ruang_pelayanan' => 'RPL-' . $faker->unique()->randomNumber(8), - 'nama_ruang_pelayanan' => 'Ruang ' . $faker->word, - 'keterangan' => $faker->sentence, - 'created_at' => now(), - 'updated_at' => now(), - ]); + $ruangPelayanan = [ + ['id_ruang_pelayanan' => 'R-UGD', 'nama_ruang_pelayanan' => 'Ruang UGD', 'keterangan' => 'Unit Gawat Darurat untuk penanganan darurat.'], + ['id_ruang_pelayanan' => 'R-RINAP', 'nama_ruang_pelayanan' => 'Ruang Rawat Inap', 'keterangan' => 'Perawatan inap untuk pasien.'], + ['id_ruang_pelayanan' => 'R-OPERASI', 'nama_ruang_pelayanan' => 'Ruang Operasi', 'keterangan' => 'Tempat dilakukannya operasi bedah.'], + ['id_ruang_pelayanan' => 'R-POLIUMUM', 'nama_ruang_pelayanan' => 'Poli Umum', 'keterangan' => 'Pelayanan umum untuk pasien.'], + ['id_ruang_pelayanan' => 'R-POLIGIGI', 'nama_ruang_pelayanan' => 'Poli Gigi', 'keterangan' => 'Pelayanan kesehatan gigi dan mulut.'], + ]; + + foreach ($ruangPelayanan as $item) { + MsRuangPelayanan::create($item); } } } diff --git a/database/seeders/TindakanSeeder.php b/database/seeders/TindakanSeeder.php index f1837a0..d3d1902 100644 --- a/database/seeders/TindakanSeeder.php +++ b/database/seeders/TindakanSeeder.php @@ -2,6 +2,7 @@ namespace Database\Seeders; +use App\Models\MsTindakan; use Illuminate\Database\Console\Seeds\WithoutModelEvents; use Illuminate\Database\Seeder; use Illuminate\Support\Facades\DB; @@ -15,15 +16,64 @@ class TindakanSeeder extends Seeder { $faker = \Faker\Factory::create(); - foreach (range(1, 10) as $i) { - DB::table('ms_tindakan')->insert([ - 'id_tindakan' => 'TIN-' . $faker->unique()->randomNumber(8), - 'nama_tindakan' => 'Tindakan ' . $faker->word, - 'tarif_tindakan' => $faker->randomFloat(2, 50000, 500000), - 'keterangan' => $faker->sentence, - 'created_at' => now(), - 'updated_at' => now(), - ]); + $tindakan = [ + [ + 'id_tindakan' => 'T-KONSUL-UMUM', + 'nama_tindakan' => 'Konsultasi Dokter Umum', + 'tarif_tindakan' => 100000, + ], + [ + 'id_tindakan' => 'T-KONSUL-SPESIALIS', + 'nama_tindakan' => 'Konsultasi Dokter Spesialis', + 'tarif_tindakan' => 250000, + ], + [ + 'id_tindakan' => 'T-LAB-DARAH', + 'nama_tindakan' => 'Pemeriksaan Laboratorium Darah Lengkap', + 'tarif_tindakan' => 200000, + ], + [ + 'id_tindakan' => 'T-RONTGEN', + 'nama_tindakan' => 'Rontgen Dada', + 'tarif_tindakan' => 300000, + ], + [ + 'id_tindakan' => 'T-OPERASI-APENDIKS', + 'nama_tindakan' => 'Operasi Apendiks (Usus Buntu)', + 'tarif_tindakan' => 7500000, + ], + [ + 'id_tindakan' => 'T-PERSALINAN-NORMAL', + 'nama_tindakan' => 'Persalinan Normal', + 'tarif_tindakan' => 5000000, + ], + [ + 'id_tindakan' => 'T-PERSALINAN-CAESAR', + 'nama_tindakan' => 'Persalinan Caesar', + 'tarif_tindakan' => 12000000, + ], + [ + 'id_tindakan' => 'T-PERAWATAN-LUKA', + 'nama_tindakan' => 'Pembersihan Luka Ringan', + 'tarif_tindakan' => 150000, + ], + [ + 'id_tindakan' => 'T-VAKSIN', + 'nama_tindakan' => 'Suntik Vaksinasi', + 'tarif_tindakan' => 250000, + ], + [ + 'id_tindakan' => 'T-FISIOTERAPI', + 'nama_tindakan' => 'Fisioterapi Sesi 1', + 'tarif_tindakan' => 300000, + ], + ]; + + foreach ($tindakan as $item) { + // Check apakah ID sudah ada + if (!MsTindakan::where('id_tindakan', $item['id_tindakan'])->exists()) { + MsTindakan::create($item); + } } } }