diff --git a/htdocs/app/Services/AstmMessageService.php b/htdocs/app/Services/AstmMessageService.php index b25faa8d..b4bbba3d 100644 --- a/htdocs/app/Services/AstmMessageService.php +++ b/htdocs/app/Services/AstmMessageService.php @@ -971,9 +971,9 @@ class AstmMessageService $accessionNumber = trim((string) $accessionNumber, "\"@ \t\n\r\0\x0B"); } - $patientName = $pid[3] ?? $pid[5] ?? null; - $patientName = $patientName ? trim((string) $patientName, "\" \t\n\r\0\x0B") : null; - + $patientName = $pid[3] ?? $pid[5] ?? null; + $patientName = $patientName ? trim((string) $patientName, "\" \t\n\r\0\x0B") : null; + $organism = $obx[5] ?? null; $resultSample = new ResultSample(); $resultSample->sender_name = $alat; $resultSample->version_number = $msh[11] ?? null; @@ -983,7 +983,7 @@ class AstmMessageService $resultSample->accession_number = $accessionNumber; $resultSample->test_id = $obr[4] ?? ($qpd[1] ?? null); $resultSample->result_type_code = $obx[3] ?? ($msh[8] ?? null); - $resultSample->organism = $obx[5] ?? null; + $resultSample->organism = $organism; $resultSample->test_status = $obx[11] ?? null; $resultSample->result_status_datetime = $this->astmToDateTime($obx[14] ?? null); $resultSample->instrument_type = $alat; @@ -1001,7 +1001,30 @@ class AstmMessageService if ($accessionNumber) { $teksHasil = $this->formatLocalInstrumentText($parsed, $alat, $accessionNumber, $messageDateTime); - + if ($organism !== '') { + $getnama = explode('^', $organism); + $organism = $getnama[1] ?? $organism; + $sudah = Organisms::where('name', $organism)->count(); + if ($sudah == 0) { + Organisms::create([ + 'kelompok' => 'biakankultur', + 'name' => $organism, + 'category' => $alat, + ]); + } + KomponenJawaban::updateOrCreate( + [ + 'accnumber' => $accessionNumber, + 'komponen' => 'id_bakteri01', + 'isidata' => $organism, + ], + [ + 'template' => 'all', + 'created_by' => $alat + ] + ); + } + Riwayat::create([ 'nofoto' => $accessionNumber, 'jawaban' => $teksHasil, diff --git a/htdocs/resources/views/dokter/ppds.blade.php b/htdocs/resources/views/dokter/ppds.blade.php index 92192f28..6e8710f9 100644 --- a/htdocs/resources/views/dokter/ppds.blade.php +++ b/htdocs/resources/views/dokter/ppds.blade.php @@ -2121,12 +2121,12 @@ diff --git a/htdocs/resources/views/dokter/ppdsdeveloper.blade.php b/htdocs/resources/views/dokter/ppdsdeveloper.blade.php index 1c5959d5..27d2ea8a 100644 --- a/htdocs/resources/views/dokter/ppdsdeveloper.blade.php +++ b/htdocs/resources/views/dokter/ppdsdeveloper.blade.php @@ -2121,12 +2121,12 @@