diff --git a/htdocs/app/Http/Controllers/Controller.php b/htdocs/app/Http/Controllers/Controller.php index dfbbeea6..21f1d991 100644 --- a/htdocs/app/Http/Controllers/Controller.php +++ b/htdocs/app/Http/Controllers/Controller.php @@ -33,32 +33,60 @@ class Controller extends BaseController { use AuthorizesRequests, ValidatesRequests; private function cekBatasAtas($value, $rule) { - if (!$rule || !str_contains($rule, '>')) return false; + if (!$rule) return false; + + // 1. Cek apakah rule mengandung tanda > atau ≥ + // Kita gunakan array untuk mengecek berbagai kemungkinan simbol + $validSymbols = ['>', '≥', '>', '>=']; + $found = false; + foreach ($validSymbols as $symbol) { + if (str_contains($rule, $symbol)) { + $found = true; + break; + } + } + + if (!$found) return false; + // Ambil angkanya $angka = (int) filter_var($rule, FILTER_SANITIZE_NUMBER_INT); - return $value > $angka; + // 2. Gunakan >= agar angka 17 tetap dianggap 'S' (Sensitive/Suspect) + return $value >= $angka; } private function cekMidRange($value, $rule) { if (!$rule) return false; $rule = trim($rule); if ($rule === '-' || $rule === '') return false; - if (!str_contains($rule, '-')) return false; [$min, $max] = array_map('trim', explode('-', $rule)); if (!is_numeric($min) || !is_numeric($max)) return false; + // Midrange biasanya sudah benar, tapi pastikan casting int/float sesuai kebutuhan return $value >= (int)$min && $value <= (int)$max; } private function cekBatasBawah($value, $rule) { - if (!$rule || !str_contains($rule, '<')) return false; + if (!$rule) return false; + + // 1. Cek apakah rule mengandung tanda < atau ≤ + $validSymbols = ['<', '≤', '<', '<=']; + $found = false; + foreach ($validSymbols as $symbol) { + if (str_contains($rule, $symbol)) { + $found = true; + break; + } + } + + if (!$found) return false; $angka = (int) filter_var($rule, FILTER_SANITIZE_NUMBER_INT); - return $value < $angka; + // 2. Gunakan <= agar angka 13 tetap dianggap 'R' (Resistant) + return $value <= $angka; } protected function cekInterpretasi($value, $data) { if ($this->cekBatasAtas($value, $data->batasatas)) { @@ -72,7 +100,6 @@ class Controller extends BaseController } return null; } - protected function getStyledValue($value, $color, $strong = false) { return $strong ? "$value" : "$value"; } diff --git a/htdocs/app/Http/Controllers/DokterController.php b/htdocs/app/Http/Controllers/DokterController.php index 84ec9e20..ec49336e 100644 --- a/htdocs/app/Http/Controllers/DokterController.php +++ b/htdocs/app/Http/Controllers/DokterController.php @@ -454,7 +454,7 @@ class DokterController extends Controller $dlp = $request->input('val10'); $idperiksa = $request->input('periksa_id'); $nofoto = $request->input('acc_number'); - + $addendumketerangan = $request->input('addendumketerangan'); if ($kerja == 'Draft'){ $iddokter = Session('id'); } @@ -462,10 +462,12 @@ class DokterController extends Controller return response()->json(['icon' => 'error', 'warna' => '#bf441d', 'status' => 'Error..!!', 'message' => 'Please Select Doctor Names']); return back(); } else { + $today = date('Y-m-d H:i:s'); $periksa = Periksa::with(['getPasien', 'getPoli'])->find($idperiksa); $nm_spesimen = $periksa->nm_spesimen ?? ''; $noregister = $periksa->noregister ?? ''; $nmadendum = $periksa->nmadendum ?? ''; + $tglverifikasi = $periksa->verifikasi ?? $today; $cekganda = Periksa::where('noregister', $noregister)->where('nmadendum', $nmadendum)->where('nm_spesimen', 'SPUTUM')->get(); $statusdraft = 'Proses Analisis Sampel'; KomponenJawaban::where('accnumber', $nofoto)->where('template', $dlp)->delete(); @@ -583,11 +585,11 @@ class DokterController extends Controller } $analis = $request->input('analis'); $ppds3 = $request->input('ppds3'); - $today = date('Y-m-d H:i:s'); $cekdokter = optional(User::find($iddokter)); $cekanalis = optional(User::find($analis)); $cekppds3 = optional(User::find($ppds3)); switch ($kerja) { + case 'verifikasi': $updateData = [ 'keterangan' => $keterangan, @@ -599,7 +601,7 @@ class DokterController extends Controller 'ppdssenior' => $ppds3, 'nmppdssenior' => $cekppds3->nama ?? null, 'tandatangan' => '', - 'verifikasi' => $today, + 'verifikasi' => $tglverifikasi, 'nmexcutor' => Session('nama'), 'excutor' => Session('id'), 'status' => 'Selesai', @@ -613,6 +615,15 @@ class DokterController extends Controller 'verifikasi' => 'Accepted', 'keterangan' => 'Expertise', ]); + if (isset($addendumketerangan) AND $addendumketerangan != ''){ + Riwayat::create([ + 'nofoto' => $nofoto, + 'jawaban' => $addendumketerangan, + 'inputor' => Session('nama'), + 'verifikasi' => 'Accepted', + 'keterangan' => 'Addendum', + ]); + } if (is_null($nofoto)){ return response()->json(['icon' => 'success', 'warna' => '#5ba035', 'status' => 'Sukses', 'message' => 'Expertise Verified']); } else { diff --git a/htdocs/app/Http/Controllers/JsonTransferController.php b/htdocs/app/Http/Controllers/JsonTransferController.php index 46caf578..c19c0a19 100644 --- a/htdocs/app/Http/Controllers/JsonTransferController.php +++ b/htdocs/app/Http/Controllers/JsonTransferController.php @@ -132,14 +132,10 @@ class JsonTransferController extends Controller if (session('previlage') !== 'developer') { abort(403, 'Akses ditolak. Anda tidak memiliki izin untuk menjalankan git pull.'); } - $gitPath = '/var/www/html/lis/'; - - // Jalankan git pull + $gitPath = base_path(); $output = shell_exec("cd {$gitPath} && git pull 2>&1"); - - // Simpan log siapa yang menjalankan (opsional) if (auth()->check()) { - Log::info('Git pull executed by user: ' . auth()->user()->email); + Log::info('Git pull executed by user: ' . auth()->user()->email.' at '.now()); } return back()->with('git_output', $output); diff --git a/htdocs/app/Http/Controllers/ListController.php b/htdocs/app/Http/Controllers/ListController.php index 0d9587cf..3d87dc41 100644 --- a/htdocs/app/Http/Controllers/ListController.php +++ b/htdocs/app/Http/Controllers/ListController.php @@ -25,38 +25,7 @@ class ListController extends Controller if (Session::get('previlage') == ''){ return redirect('/login'); } else { - $polis = Poli::all(); - $ruangans = Ruangan::all(); - $dokters = Dokter::all(); - $answers = Jawaban::all(); - $details = Subjawaban::all(); - $ruangpolis = Ruangan::groupBy('poli')->select('poli')->get(); - $data = []; - $i = 0; - foreach ($ruangpolis as $ruangpoli) { - $j = 0; - $ruangpoli = $ruangpoli->poli; - $rooms = Ruangan::where('poli', $ruangpoli)->get(); - foreach ($rooms as $room) { - $data['ruangans'][$i][$j]['id'] = $room->id; - $data['ruangans'][$i][$j]['ruangan'] = $room->ruangan; - $j++; - } - $i++; - } - - $x = 0; - foreach ($ruangpolis as $ruangpoli) { - $data['ruangpolis'][$x] = $ruangpoli->poli; - $x++; - } - - $data['polis'] = $polis; - $data['dokters'] = $dokters; - $data['answers'] = $answers; - $data['details'] = $details; - - return view('admin.list', $data); + return redirect('/pendaftaran'); } } diff --git a/htdocs/resources/views/admin/list.blade.php b/htdocs/resources/views/admin/list.blade.php deleted file mode 100644 index 0c1e33ce..00000000 --- a/htdocs/resources/views/admin/list.blade.php +++ /dev/null @@ -1,432 +0,0 @@ -@extends('base.layout') - -@section('content') -