Align target deadlines in early warning and reports

This commit is contained in:
Dwi Swandhana
2026-04-29 09:55:00 +07:00
parent bb680d41d3
commit d8c6ab7b55
10 changed files with 237 additions and 6909 deletions
@@ -35,7 +35,7 @@ use App\RekapAntibiotik;
use App\PendaftaranOnListiner;
use App\CriticalValueSample;
use App\Paslab;
use App\SIMBHPReport;
use Carbon\Carbon;
use Aranyasen\HL7\Message;
use Aranyasen\HL7\Connection;
@@ -1941,6 +1941,40 @@ class DokterController extends Controller
'created_by' => Session('nama'),
]);
}
$media = $request->input('komponen') ?? '';
$status = $request->input('status') ?? '';
if ($media == 'Media BAP'){
$mediatanam = 'BAPPLATE';
} else if ($media == 'Media CAP'){
$mediatanam = 'CAPPLATE';
} else if ($media == 'Media Mc Conkey'){
$mediatanam = 'MCPLATE';
} else if ($media == 'Media SDA R1' OR $media == 'Media SDA R2' OR $media == 'Media SDA I1' OR $media == 'Media SDA I2'){
$mediatanam = 'SDAPLATE';
} else {
$mediatanam = '';
}
if ($mediatanam != '' AND $status == 'Sub Kultur'){
$tanggal= date("d-m-Y");
$ahrf = explode("-", $tanggal);
$tahun = $ahrf[0];
if(isset($ahrf[1])){ $wulan = (int)$ahrf[1]; } else { $wulan = (int)date("m"); }
if(isset($ahrf[2])){ $dino = (int)$ahrf[2]; } else { $dino = (int)date("d"); }
$datapemeriksaan = Periksa::where('id', $nofoto)->first();
SIMBHPReport::create([
'tanggal' => $dino,
'bulan' => $wulan,
'tahun' => $tahun,
'deskripsi' => $status.' Nomor Lab.'.$datapemeriksaan->nofoto ?? ''.' petugas '.Session('nama'),
'pemasukan' => null,
'pengeluaran' => 1,
'qty_base' => 1,
'satuan_transaksi' => 'besar',
'jenis' => $mediatanam,
'keterangan' => '',
'marking' => '',
]);
}
Periksa::where('id', $idperiksa)->update([
'status' => $request->input('komponen') ?? ''.' '.$request->input('status') ?? '',
]);
@@ -2664,6 +2698,7 @@ class DokterController extends Controller
public function periksa(Request $request) {
$nofoto = $request->input('nofoto');
$id = $request->input('id');
$mediatanams = $request->input('mediatanam');
$nama = Session('nama');
$idpemeriksa = Session('id');
if ($id == 'ubahnomorlab'){
@@ -2714,38 +2749,64 @@ class DokterController extends Controller
$statuse = $jpoli->status ?? '';
$noregister = $jpoli->noregister;
$daftar = $jpoli->daftar;
$arrnofoto = explode('-', $nofoto);
$nofoto = $arrnofoto[0];
if ($statuse == 'Pemeriksaan awal' OR $statuse == 'Penerimaan Sampel'){
Periksa::where('id', $id)->update([
'status' => 'Pemeriksaan Sampel',
'tgldraft' => date('Y-m-d H:i:s'),
'excutor' => $idpemeriksa,
'nmppdsmiddle2' => Session('nama')
]);
return response()->json(['icon' => 'success', 'warna' => '#5ba035', 'status' => 'Success', 'message' => 'Status Updated']);
return back();
} else if ($statuse == 'Pemeriksaan Sampel'){
Periksa::where('id', $id)->update([
'status' => 'Pemeriksaan awal',
'tgldraft' => date('Y-m-d H:i:s'),
'excutor' => $idpemeriksa,
'nmppdsmiddle2' => Session('nama')
]);
return response()->json(['icon' => 'success', 'warna' => '#5ba035', 'status' => 'Success', 'message' => 'Status Updated']);
return back();
} else {
Periksa::where('id', $id)->whereNull('status')->update([
'status' => 'Pemeriksaan awal',
'tgldraft' => date('Y-m-d H:i:s'),
'status' => 'Penerimaan Sampel',
'daftar' => date('Y-m-d H:i:s'),
'mulai' => date('Y-m-d H:i:s'),
'excutor' => $idpemeriksa,
'nmppdsmiddle2' => Session('nama')
]);
return response()->json(['icon' => 'success', 'warna' => '#5ba035', 'status' => 'Success', 'message' => 'Status Updated']);
return back();
}
if ($mediatanams == null OR $mediatanams == ''){
} else {
foreach($mediatanams as $media){
if ($media == 'Media BAP'){
$mediatanam = 'BAPPLATE';
} else if ($media == 'Media CAP'){
$mediatanam = 'CAPPLATE';
} else if ($media == 'Media Mc Conkey'){
$mediatanam = 'MCPLATE';
} else if ($media == 'Media SDA R1' OR $media == 'Media SDA R2' OR $media == 'Media SDA I1' OR $media == 'Media SDA I2'){
$mediatanam = 'SDAPLATE';
} else {
$mediatanam = '';
}
if ($mediatanam != ''){
$tanggal= date("Y-m-d");
$ahrf = explode("-", $tanggal);
$tahun = $ahrf[0];
if(isset($ahrf[1])){ $wulan = (int)$ahrf[1]; } else { $wulan = (int)date("m"); }
if(isset($ahrf[2])){ $dino = (int)$ahrf[2]; } else { $dino = (int)date("d"); }
$datapemeriksaan = Periksa::where('id', $id)->first();
SIMBHPReport::create([
'tanggal' => $dino,
'bulan' => $wulan,
'tahun' => $tahun,
'deskripsi' => 'Pemeriksaan Awal '.' Nomor Lab.'.$datapemeriksaan->nofoto.' petugas '.Session('nama'),
'pemasukan' => null,
'pengeluaran' => 1,
'qty_base' => 1,
'satuan_transaksi' => 'besar',
'jenis' => $mediatanam,
'keterangan' => '',
'marking' => '',
]);
}
}
}
return response()->json(['icon' => 'success', 'warna' => '#5ba035', 'status' => 'Success', 'message' => 'Status Updated']);
return back();
}
}
public function getFoto(Request $request) {
@@ -3690,6 +3751,7 @@ class DokterController extends Controller
'status' => 'Penerimaan Sampel',
'nmppdsjunior2' => Session('nama'),
'mulai' => date('Y-m-d H:i:s'),
'daftar' => date('Y-m-d H:i:s'),
'updated_at' => date('Y-m-d').' 00:00:00',
]);
if ($kanan == ''){