From 4776eb5b0a1db7ef5279ca327a1263d05a1175b0 Mon Sep 17 00:00:00 2001 From: pajri Date: Fri, 27 Jan 2023 09:52:31 +0700 Subject: [PATCH] seeder prices jadwal dokter --- app/Models/OLDLMS/Healthcare.php | 11 +- app/Models/OLDLMS/JadwalDokter.php | 22 ++++ database/seeders/PricesJadwalDokter.php | 110 ++++++++++++++++++ .../files/Tarif Konsultasi Primaya 2023.csv | 13 +++ 4 files changed, 155 insertions(+), 1 deletion(-) create mode 100644 app/Models/OLDLMS/JadwalDokter.php create mode 100644 database/seeders/PricesJadwalDokter.php create mode 100644 public/files/Tarif Konsultasi Primaya 2023.csv diff --git a/app/Models/OLDLMS/Healthcare.php b/app/Models/OLDLMS/Healthcare.php index fcf850bf..ef89c135 100644 --- a/app/Models/OLDLMS/Healthcare.php +++ b/app/Models/OLDLMS/Healthcare.php @@ -4,8 +4,17 @@ namespace App\Models\OLDLMS; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +use Illuminate\Database\Eloquent\SoftDeletes; class Healthcare extends Model { - use HasFactory; + use HasFactory, SoftDeletes; + + const CREATED_AT = 'dCreateOn'; + const UPDATED_AT = 'dUpdateOn'; + const DELETED_AT = 'dDeleteOn'; + + protected $connection = 'oldlms'; + + protected $table = 'tm_healthcare'; } diff --git a/app/Models/OLDLMS/JadwalDokter.php b/app/Models/OLDLMS/JadwalDokter.php new file mode 100644 index 00000000..68fa98dc --- /dev/null +++ b/app/Models/OLDLMS/JadwalDokter.php @@ -0,0 +1,22 @@ +get(); + // PHSM = semarang + // PHBU = Bekasi Utara + // PHMA = makasar + // PHPK = pasar kemis + // PHPC = cikini + // PHBW = Bakti wara + // PEVH = evasari + // PHTA = tangerang + // PHSB = sukabumi + // PHKA = karawang + // PHBB = bekasi barat + // PHBT = bekasi timur + + $mapHealthcare = [ + 'SG' => 'PHSM', + 'P' => 'PHBU', + 'F' => 'PHMA', + 'PK' => 'PHPK', + 'CK' => 'PHPC', + 'BW' => 'PHBW', + 'E' => 'PEVH', + 'C' => 'PHTA', + 'SK' => 'PHSB', + 'Q' => 'PHKA', + 'D' => 'PHBB', + 'M' => 'PHBT', + ]; + + $file = fopen(public_path("files/Tarif Konsultasi Primaya 2023.csv"), "r"); + $data = []; + + while ($row = fgetcsv($file)) { + for ($i = 0; $i < count($row); $i++) { + $data[$i][] = $row[$i]; + } + } + fclose($file); + + + // foreach ($healthcare_primaya as $healthcare) { + $jadwalDokter = JadwalDokter::get(); + foreach ($jadwalDokter as $jadwal) { + $id_healthcare_jadwal = $jadwal->nIDHealthCare; + $healthcare = Healthcare::where('nID', $id_healthcare_jadwal)->first() ?? null; + if ($healthcare == null) { + continue; + } + + $mapValue = $mapHealthcare[$healthcare->sKodeRS] ?? null; + if ($mapValue == null) { + continue; + } + + foreach ($data as $value) { + if ($value[0] == "") { + continue; + } + $codeValue = $value[0]; + $codeValue = substr($codeValue, 1, 4); + + if ($codeValue == $mapValue) { + if ($jadwal->nIDSpesialis == 1) { + //umum + $jadwal->nBiaya = (int)str_replace(",", "", $value[2]); + $jadwal->nBiayaTC = (int)str_replace(",", "", $value[5]); + $jadwal->nBiayaATC = (int)str_replace(",", "", $value[5]); + + $jadwal->save(); + } else if ($jadwal->nIDSpesialis !== 1 && $jadwal->sIsSubSpesialis == 1) { + //sub spesialis + $jadwal->nBiaya = (int)str_replace(",", "", $value[4]); + $jadwal->nBiayaTC = (int)str_replace(",", "", $value[7]); + $jadwal->nBiayaATC = (int)str_replace(",", "", $value[7]); + + $jadwal->save(); + } else if ($jadwal->nIDSpesialis !== 1) { + //spesialis + $jadwal->nBiaya = (int)str_replace(",", "", $value[3]); + $jadwal->nBiayaTC = (int)str_replace(",", "", $value[6]); + $jadwal->nBiayaATC = (int)str_replace(",", "", $value[6]); + + $jadwal->save(); + } + } else { + continue; + } + } + } + // } + } +} diff --git a/public/files/Tarif Konsultasi Primaya 2023.csv b/public/files/Tarif Konsultasi Primaya 2023.csv new file mode 100644 index 00000000..6710232b --- /dev/null +++ b/public/files/Tarif Konsultasi Primaya 2023.csv @@ -0,0 +1,13 @@ +, PHSM , PHBU , PHMA , PHPK , PHPC , PHBW , PEVH , PHTA , PHSB , PHKA , PHBB , PHBT +Administrasi Rawat Jalan," 50,000 "," 50,000 "," 50,000 "," 50,000 "," 50,000 "," 25,000 "," 50,000 "," 50,000 "," 50,000 "," 50,000 "," 50,000 "," 50,000 " +Konsultasi Dokter Umum," 66,000 "," 100,000 "," 110,000 "," 110,000 "," 100,000 "," 60,000 "," 120,000 "," 125,000 "," 90,000 "," 100,000 "," 100,000 "," 100,000 " +Konsultasi Dokter Spesialis," 165,000 "," 230,000 "," 300,000 "," 220,000 "," 300,000 "," 130,000 "," 270,000 "," 300,000 "," 195,000 "," 215,000 "," 230,000 "," 230,000 " +Konsultasi Dokter Sub Spesialis / Konsultan," 275,000 "," 329,000 "," 370,000 "," 303,000 "," 400,000 "," 140,000 "," 350,000 "," 385,000 "," 250,000 "," 305,000 "," 329,000 "," 329,000 " +Telekonsultasi Dokter Umum," 56,000 "," 85,000 "," 94,000 "," 94,000 "," 60,000 "," 51,000 "," 102,000 "," 106,000 "," 77,000 "," 85,000 "," 85,000 "," 85,000 " +Telekonsultasi Dokter Spesialis," 141,000 "," 196,000 "," 255,000 "," 187,000 "," 265,000 "," 111,000 "," 230,000 "," 255,000 "," 165,000 "," 180,000 "," 115,000 "," 115,000 " +Telekonsultasi Dokter Sub Spesialis," 234,000 "," 280,000 "," 315,000 "," 258,000 "," 359,000 "," 119,000 "," 298,000 "," 327,000 "," 212,000 "," 250,000 "," 165,000 "," 165,000 " +Konsultasi Professor I,,," 370,000 ",," 500,000 ",," 800,000 ",,,,, +Konsultasi Professor II,,," 450,000 ",," 500,000 ",," 600,000 ",,,,, +Konsultasi Dokter Umum (Hari Libur),,," 150,000 ",,,,,," 120,000 ",,, +Konsultasi Dokter Spesialis (Hari Libur),,," 350,000 ",,,," 320,000 ",," 215,000 ",,, +Konsultasi Laktasi,,,," 165,000 ",,," 550,000 "," 150,000 ",," 159,000 ",,