Bug Fixing & Penambahan Fitur Riwayat pasien

This commit is contained in:
adesyawal 2025-06-05 15:36:53 +07:00
parent d0ceb8e566
commit 48a2597451
11 changed files with 285 additions and 171 deletions

View File

@ -7,16 +7,25 @@ use App\Http\Controllers\Controller;
use App\Http\Controllers\Dokter\Partial\PartialController;
use DB;
use Session;
use Redirect;
class DokterViewController extends Controller
{
public function ViewDashboardDokter(Request $request)
{
$getDataPD = PartialController::identitasPasien('pdnorec', $request->pdnorec);
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
$getDataPD = PartialController::identitasPasien($filter_identitas_pasien, $request->pdnorec);
if(empty($getDataPD)){
Session::flash('message', "Ops!, Data Tidak Ditemukan.");
return Redirect::back();
}
$dataReturn['pdnorec'] = $request->pdnorec;
$dataReturn['pasien_identitas'] = $getDataPD[0];
$dataReturn['type'] = $filter_identitas_pasien;
$assets = ['chart', 'animation'];
return view('dokter.dashboard-pasien')->with("data", $dataReturn);

View File

@ -9,13 +9,21 @@ use App\Http\Controllers\Dokter\Partial\PartialController;
use DB;
use Auth;
use Session;
use Redirect;
class CpptController extends Controller
{
public function viewSoapCPPT(Request $request)
{
$getDataPD = PartialController::identitasPasien('pdnorec', $request->pdnorec);
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
$getDataPD = PartialController::identitasPasien($filter_identitas_pasien, $request->pdnorec);
if(empty($getDataPD)){
Session::flash('message', "Ops!, Data Tidak Ditemukan.");
return Redirect::back();
}
$dataHistoryCPPT = DB::connection('smart')->select("
select
@ -89,13 +97,19 @@ class CpptController extends Controller
$dataReturn['his_cppt'] = $dataHistoryCPPT;
$dataReturn['his_resep'] = $dataHistoryResep;
$dataReturn['master_obat'] = $dataMasterObat;
$dataReturn['type'] = $filter_identitas_pasien;
return view('dokter.emr.form.soap')->with("data", $dataReturn);
}
public function formSoapCPPT(Request $request)
{
$getDataPD = PartialController::identitasPasien('pdnorec', $request->pdnorec);
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
$getDataPD = PartialController::identitasPasien($filter_identitas_pasien, $request->pdnorec);
if(empty($getDataPD)){
Session::flash('message', "Ops!, Data Tidak Ditemukan.");
return Redirect::back();
}
if(isset($request->cpptnorec)){
$dataHistoryCPPT = DB::connection('smart')->select("
@ -137,34 +151,16 @@ class CpptController extends Controller
$dataReturn['cpptnorec'] = (isset($request->cpptnorec) ? $request->cpptnorec : null);
$dataReturn['pasien_identitas'] = $getDataPD[0];
$dataReturn['his_cppt'] = (isset($request->cpptnorec)) ? $dataHistoryCPPT[0] : [];
$dataReturn['type'] = $filter_identitas_pasien;
return view('dokter.emr.form.soap-form')->with("data", $dataReturn);
}
public function simpanSoapCPPT(Request $request)
{
//dd($request->all());
//dd(Auth::user()->smart_pk);
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
DB::connection('smart')->beginTransaction();
try {
$cppt_t = [
'norec' => $this->generateNorecSmartV1(),
'kdprofile' => 0,
'statusenabled' => 't',
'tglinput' => date('Y-m-d H:i:s'),
'isverifikasi' => true,
'pasienfk' => $request->pasienfk,
'pegawaifk' => 88,
'noregistrasifk' => $request->noregistrasifk,
'ruanganfk' => $request->ruanganfk,
's' => $request->s,
'o' => $request->o,
'a' => $request->a,
'p' => $request->p,
'flag_' => 1,
];
DB::connection('smart')->table('cppt_t')->insert([
'norec' => $this->generateNorecSmartV1(),
'kdprofile' => 0,
@ -172,7 +168,7 @@ class CpptController extends Controller
'tglinput' => date('Y-m-d H:i:s'),
'isverifikasi' => true,
'pasienfk' => $request->pasienfk,
'pegawaifk' => 88,
'pegawaifk' => Auth::user()->smart_pk,
'noregistrasifk' => $request->noregistrasifk,
'ruanganfk' => $request->ruanganfk,
's' => $request->s,
@ -183,7 +179,7 @@ class CpptController extends Controller
]);
DB::connection('smart')->commit();
return redirect()->route('dokter.emr.soap.view', ['pdnorec' => $request->pdnorec])->with('success','SOAP Berhasil Disimpan.');
return redirect()->route('dokter.emr.soap.view', [$filter_identitas_pasien => $request->pdnorec])->with('success','SOAP Berhasil Disimpan.');
} catch (\Exception $e) {
DB::connection('smart')->rollBack();
@ -193,6 +189,7 @@ class CpptController extends Controller
public function updateSoapCPPT(Request $request)
{
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
DB::connection('smart')->beginTransaction();
try {
DB::connection('smart')->table('cppt_t')->where('norec', '=', $request->cpptnorec)->update([
@ -203,7 +200,7 @@ class CpptController extends Controller
]);
DB::connection('smart')->commit();
return redirect()->route('dokter.emr.soap.view', ['pdnorec' => $request->pdnorec])->with('success','Edit SOAP Berhasil.');
return redirect()->route('dokter.emr.soap.view', [$filter_identitas_pasien => $request->pdnorec])->with('success','Edit SOAP Berhasil.');
} catch (\Exception $e) {
DB::connection('smart')->rollBack();
@ -213,6 +210,7 @@ class CpptController extends Controller
public function deleteSoapCPPT(Request $request)
{
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
DB::connection('smart')->beginTransaction();
try {
DB::connection('smart')->table('cppt_t')->where('norec', '=', $request->cpptnorec)->update([
@ -220,7 +218,7 @@ class CpptController extends Controller
]);
DB::connection('smart')->commit();
return redirect()->route('dokter.emr.soap.view', ['pdnorec' => $request->pdnorec])->with('success','Batal SOAP Berhasil.');
return redirect()->route('dokter.emr.soap.view', [$filter_identitas_pasien => $request->pdnorec])->with('success','Batal SOAP Berhasil.');
} catch (\Exception $e) {
DB::connection('smart')->rollBack();

View File

@ -9,13 +9,24 @@ use App\Http\Controllers\Dokter\Partial\PartialController;
use DB;
use Auth;
use Session;
use Redirect;
class PeresepanObatController extends Controller
{
public function viewPeresepanObat(Request $request)
{
$getDataPD = PartialController::identitasPasien('pdnorec', $request->pdnorec);
$listNorecOrderan = [];
$returnData = [];
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
$getDataPD = PartialController::identitasPasien($filter_identitas_pasien, $request->pdnorec);
if(empty($getDataPD)){
Session::flash('message', "Special message goes here");
return Redirect::back();
}
$dataHistoryResep = DB::connection('smart')->select("
select
t_resep_dokter.strukorderfk,
@ -42,8 +53,6 @@ class PeresepanObatController extends Controller
", array($getDataPD[0]->nocmfk));
if(!empty($dataHistoryResep)){
$listNorecOrderan = [];
$returnData = [];
foreach($dataHistoryResep as $key => $value){
array_push($listNorecOrderan, $value->strukorderfk);
$dataRacikenke[$value->strukorderfk]['racikanke'][] = $value->racikanke;
@ -109,6 +118,7 @@ class PeresepanObatController extends Controller
$dataReturn['pasien_identitas'] = $getDataPD[0];
$dataReturn['his_resep'] = $returnData;
$dataReturn['master_obat'] = $dataMasterObat;
$dataReturn['type'] = $filter_identitas_pasien;
//dd($dataReturn);
@ -117,7 +127,12 @@ class PeresepanObatController extends Controller
public function formPeresepanObat(Request $request)
{
$getDataPD = PartialController::identitasPasien('pdnorec', $request->pdnorec);
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
$getDataPD = PartialController::identitasPasien($filter_identitas_pasien, $request->pdnorec);
if(empty($getDataPD)){
Session::flash('message', "Ops!, Data Tidak Ditemukan.");
return Redirect::back();
}
$dataHistoryResep = DB::connection('smart')->select("
select
@ -159,6 +174,7 @@ class PeresepanObatController extends Controller
$dataReturn['pasien_identitas'] = $getDataPD[0];
$dataReturn['his_resep'] = $dataHistoryResep;
$dataReturn['master_obat'] = $dataMasterObat;
$dataReturn['type'] = $filter_identitas_pasien;
$assets = ['pro','select2'];
return view('dokter.order.form.resep-form', compact('assets'))->with("data", $dataReturn);
@ -166,6 +182,7 @@ class PeresepanObatController extends Controller
public function SimpanPeresepanObat(Request $request)
{
$filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm';
DB::connection('smart')->beginTransaction();
try {
$now = date('Y-m-d H:i:s');
@ -236,7 +253,7 @@ class PeresepanObatController extends Controller
}
DB::connection('smart')->commit();
return redirect()->route('dokter.order.resep.view', ['pdnorec' => $request->pdnorec])->with('success','Resep Berhasil Disimpan.');
return redirect()->route('dokter.order.resep.view', [$filter_identitas_pasien => $request->pdnorec])->with('success','Resep Berhasil Disimpan.');
} catch (\Exception $e) {
DB::connection('smart')->rollBack();

View File

@ -15,48 +15,67 @@ class PartialController extends Controller
public static function identitasPasien($tipeFilter, $parameter)
{
$getDataPD = DB::connection('smart')->select("
select
pasiendaftar_t.norec as pd_norec,
pasien_m.id as nocmfk,
pasien_m.nocm,
pasien_m.namapasien,
jeniskelamin_m.jeniskelamin,
pasien_m.tgllahir,
DATE_PART('YEAR', AGE(NOW(), pasien_m.tgllahir)) as umur_as_year,
DATE_PART('MONTH', AGE(NOW(), pasien_m.tgllahir)) as umur_as_month,
DATE_PART('DAY', AGE(NOW(), pasien_m.tgllahir)) as umur_as_day,
pasiendaftar_t.noregistrasi,
pasiendaftar_t.tglregistrasi,
ruangan_m.id as id_ruangan,
ruangan_m.namaruangan,
pegawai_m.namalengkap,
kelompokpasien_m.kelompokpasien,
(
select
antrianpasiendiperiksa_t.norec as apd_norec
from
antrianpasiendiperiksa_t
where
antrianpasiendiperiksa_t.noregistrasifk = pasiendaftar_t.norec
and antrianpasiendiperiksa_t.statusenabled is true
and antrianpasiendiperiksa_t.objectruanganfk = pasiendaftar_t.objectruanganlastfk
order by
antrianpasiendiperiksa_t.tglmasuk desc
limit 1
if($tipeFilter === 'pdnorec'){
$getDataPD = DB::connection('smart')->select("
select
pasiendaftar_t.norec as pd_norec,
pasien_m.id as nocmfk,
pasien_m.nocm,
pasien_m.namapasien,
jeniskelamin_m.jeniskelamin,
pasien_m.tgllahir,
DATE_PART('YEAR', AGE(NOW(), pasien_m.tgllahir)) as umur_as_year,
DATE_PART('MONTH', AGE(NOW(), pasien_m.tgllahir)) as umur_as_month,
DATE_PART('DAY', AGE(NOW(), pasien_m.tgllahir)) as umur_as_day,
pasiendaftar_t.noregistrasi,
pasiendaftar_t.tglregistrasi,
ruangan_m.id as id_ruangan,
ruangan_m.namaruangan,
pegawai_m.namalengkap,
kelompokpasien_m.kelompokpasien,
(
select
antrianpasiendiperiksa_t.norec as apd_norec
from
antrianpasiendiperiksa_t
where
antrianpasiendiperiksa_t.noregistrasifk = pasiendaftar_t.norec
and antrianpasiendiperiksa_t.statusenabled is true
and antrianpasiendiperiksa_t.objectruanganfk = pasiendaftar_t.objectruanganlastfk
order by
antrianpasiendiperiksa_t.tglmasuk desc
limit 1
) as apd_norec
from
pasiendaftar_t inner join
pasien_m on pasiendaftar_t.nocmfk = pasien_m.id inner join
jeniskelamin_m on pasien_m.objectjeniskelaminfk = jeniskelamin_m.id inner join
ruangan_m on pasiendaftar_t.objectruanganlastfk = ruangan_m.id inner join
pegawai_m on pasiendaftar_t.objectpegawaifk = pegawai_m.id inner join
kelompokpasien_m on pasiendaftar_t.objectkelompokpasienlastfk = kelompokpasien_m.id
where
pasiendaftar_t.norec = ?
", array($parameter));
) as apd_norec
from
pasiendaftar_t inner join
pasien_m on pasiendaftar_t.nocmfk = pasien_m.id inner join
jeniskelamin_m on pasien_m.objectjeniskelaminfk = jeniskelamin_m.id inner join
ruangan_m on pasiendaftar_t.objectruanganlastfk = ruangan_m.id inner join
pegawai_m on pasiendaftar_t.objectpegawaifk = pegawai_m.id inner join
kelompokpasien_m on pasiendaftar_t.objectkelompokpasienlastfk = kelompokpasien_m.id
where
pasiendaftar_t.norec = ?
", array($parameter));
}elseif($tipeFilter === 'nocm'){
$getDataPD = DB::connection('smart')->select("
select
pasien_m.id as nocmfk,
pasien_m.nocm,
pasien_m.namapasien,
jeniskelamin_m.jeniskelamin,
pasien_m.tgllahir,
DATE_PART('YEAR', AGE(NOW(), pasien_m.tgllahir)) as umur_as_year,
DATE_PART('MONTH', AGE(NOW(), pasien_m.tgllahir)) as umur_as_month,
DATE_PART('DAY', AGE(NOW(), pasien_m.tgllahir)) as umur_as_day
from
pasien_m inner join
jeniskelamin_m on pasien_m.objectjeniskelaminfk = jeniskelamin_m.id
where
pasien_m.nocm = ?
", array($parameter));
}
return $getDataPD;
return (empty($getDataPD) ? [] : $getDataPD);
}
}

View File

@ -0,0 +1,22 @@
<?php
namespace App\Http\Controllers\Dokter;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Http\Controllers\Dokter\Partial\PartialController;
use DB;
class RiwayatPasienController extends Controller
{
public function ViewRiwayatPasien(Request $request)
{
$assets = ['chart', 'animation'];
return view('dokter.filter-histori-pasien',compact('assets'));
}
}

View File

@ -1,13 +1,13 @@
<x-app-layout :assets="$assets ?? []">
<div>
<div class="row">
<div class="col-sm-12 col-lg-6">
<div class="col-sm-12 col-lg-12">
<div class="card">
<div class="table-responsive mt-4">
<table class="table">
<tr>
<td>No MR</td>
<td>:</td>
<td style="width:200px;">No MR</td>
<td style="width:5px;">:</td>
<td>{{ $data['pasien_identitas']->nocm }}</td>
</tr>
<tr>
@ -37,49 +37,16 @@
</div>
</div>
</div>
<div class="col-sm-12 col-lg-6">
<div class="card">
<div class="table-responsive mt-4">
<table class="table">
<tr>
<td>No Registrasi</td>
<td>:</td>
<td>{{ $data['pasien_identitas']->noregistrasi }}</td>
</tr>
<tr>
<td>Poli Tujuan</td>
<td>:</td>
<td>{{ $data['pasien_identitas']->namaruangan }}</td>
</tr>
<tr>
<td>DPJP</td>
<td>:</td>
<td>{{ $data['pasien_identitas']->namalengkap }}</td>
</tr>
<tr>
<td>Tgl Layanan</td>
<td>:</td>
<td>{{ date('d-m-Y', strtotime( $data['pasien_identitas']->tglregistrasi )) }}</td>
</tr>
<tr>
<td>Jaminan</td>
<td>:</td>
<td>{{ $data['pasien_identitas']->kelompokpasien }}</td>
</tr>
</table>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12 col-lg-6">
<a href="{{route('dokter.emr.soap.view', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-secondary col-sm-12 col-lg-12">SOAP</div>
<div class="card btn btn-secondary col-sm-12 col-lg-12">RIWAYAT SOAP</div>
</a>
</div>
<div class="col-sm-12 col-lg-6">
<a href="{{route('dokter.order.resep.view', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-secondary col-sm-12 col-lg-12">PERESEPAN OBAT</div>
<div class="card btn btn-secondary col-sm-12 col-lg-12">RIWAYAT PERESEPAN OBAT</div>
</a>
</div>
</div>

View File

@ -1,13 +1,17 @@
<x-app-layout :assets="$assets ?? []">
<div>
<div class="row">
<div class="col-sm-12 col-lg-6">
@if($data['type'] == 'pdnorec')
<div class="col-sm-12 col-lg-6">
@elseif($data['type'] == 'nocm')
<div class="col-sm-12 col-lg-12">
@endif
<div class="card">
<div class="table-responsive mt-4">
<table class="table">
<tr>
<td>No MR</td>
<td>:</td>
<td style="width:200px;">No MR</td>
<td style="width:5px;">:</td>
<td>{{ $data['pasien_identitas']->nocm }}</td>
</tr>
<tr>
@ -37,13 +41,15 @@
</div>
</div>
</div>
@if($data['type'] == 'pdnorec')
<div class="col-sm-12 col-lg-6">
<div class="card">
<div class="table-responsive mt-4">
<table class="table">
<tr>
<td>No Registrasi.</td>
<td>:</td>
<td style="width:200px;">No Registrasi.</td>
<td style="width:5px;">:</td>
<td>{{ $data['pasien_identitas']->noregistrasi }}</td>
</tr>
<tr>
@ -71,16 +77,17 @@
</div>
</div>
</div>
@endif
<div class="row">
<div class="col-12 col-sm-12 col-xs-12 col-lg-6">
<a href="{{route('dokter.emr.soap.view', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-warning col-sm-12 col-lg-12">SOAP</div>
<div class="card btn btn-warning col-sm-12 col-lg-12">{{ ($data['type'] == 'pdnorec') ? 'SOAP' : 'RIWAYAT SOAP' }}</div>
</a>
</div>
<div class="col-sm-12 col-lg-6">
<a href="{{route('dokter.order.resep.view', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-secondary col-sm-12 col-lg-12">PERESEPAN OBAT</div>
<div class="card btn btn-secondary col-sm-12 col-lg-12">{{ ($data['type'] == 'pdnorec') ? 'PERESEPAN OBAT' : 'RIWAYAT PERESEPAN OBAT' }}</div>
</a>
</div>
</div>
@ -92,15 +99,17 @@
<div class="card-body">
<div class="row">
<div class="col-12 col-sm-12 col-xs-12 col-lg-10">
<h1>LIST SOAP PASIEN</h1>
<h1>{{ ($data['type'] == 'pdnorec') ? 'LIST SOAP PASIEN' : 'RIWAYAT SOAP PASIEN' }}</h1>
</div>
<div class="col-sm-12 col-lg-2">
@if(strtotime(date('d-m-Y', strtotime( $data['pasien_identitas']->tglregistrasi ))) == strtotime(date('d-m-Y')) )
<a href="{{route('dokter.emr.soap.form', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-info col-lg-6 col-12">Tambah SOAP</div>
</a>
@else
<div class="card btn btn-secondary col-sm-6 col-lg-6 col-12">Tambah SOAP</div>
@if($data['type'] == 'pdnorec')
@if(strtotime(date('d-m-Y', strtotime( $data['pasien_identitas']->tglregistrasi ))) == strtotime(date('d-m-Y')) )
<a href="{{route('dokter.emr.soap.form', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-info col-lg-6 col-12">Tambah SOAP</div>
</a>
@else
<div class="card btn btn-secondary col-sm-6 col-lg-6 col-12">Tambah SOAP</div>
@endif
@endif
</div>
</div>
@ -127,28 +136,30 @@
</tr>
</thead>
<tbody>
@foreach($data['his_cppt'] as $resultRow)
<tr>
<td>{{ date('d-m-Y', strtotime( $resultRow->tglinput )) }} / {{ date('H:i', strtotime( $resultRow->tglinput)) }}</td>
<td>{{ $resultRow->noregistrasi }}</td>
<td>{{ $resultRow->namalengkap }}</td>
<td>{{ $resultRow->namaruangan }}</td>
<td>{{ $resultRow->keterangan }}</td>
<td>
<button
type="button"
class="btn btn-info"
data-bs-toggle="modal"
data-bs-target="#modalInputSOAP"
data-s="{{ $resultRow->s }}"
data-o="{{ $resultRow->o }}"
data-a="{{ $resultRow->a }}"
data-p="{{ $resultRow->p }}"
data-cpptnorec="{{ $resultRow->cpptnorec }}"
data-mode="view"
>Lihat</button>
@if(!empty($data['his_cppt']))
@foreach($data['his_cppt'] as $resultRow)
<tr>
<td>{{ date('d-m-Y', strtotime( $resultRow->tglinput )) }} / {{ date('H:i', strtotime( $resultRow->tglinput)) }}</td>
<td>{{ $resultRow->noregistrasi }}</td>
<td>{{ $resultRow->namalengkap }}</td>
<td>{{ $resultRow->namaruangan }}</td>
<td>{{ $resultRow->keterangan }}</td>
<td>
<button
type="button"
class="btn btn-info"
data-bs-toggle="modal"
data-bs-target="#modalInputSOAP"
data-s="{{ $resultRow->s }}"
data-o="{{ $resultRow->o }}"
data-a="{{ $resultRow->a }}"
data-p="{{ $resultRow->p }}"
data-cpptnorec="{{ $resultRow->cpptnorec }}"
data-mode="view"
>Lihat</button>
@if( Auth::user()->smart_pk == $resultRow->pegawaifk && strtotime(date('Y-m-d H:i:s')) <= strtotime(date('Y-m-d H:i:s', strtotime($resultRow->tglinput . ' +1 day'))) )
@if( Auth::user()->smart_pk == $resultRow->pegawaifk && strtotime(date('Y-m-d H:i:s')) <= strtotime(date('Y-m-d H:i:s', strtotime($resultRow->tglinput . ' +1 day'))) )
@if($data['type'] == 'pdnorec')
<a href="{{route('dokter.emr.soap.form', ['pdnorec' => $data['pdnorec'], 'cpptnorec' => $resultRow->cpptnorec])}}" class="btn btn-warning">
Edit
</a>
@ -156,7 +167,9 @@
<a href="{{route('dokter.emr.soap.delete', ['pdnorec' => $data['pdnorec'], 'cpptnorec' => $resultRow->cpptnorec])}}" class="btn btn-danger">
Hapus
</a>
@else
@endif
@else
@if($data['type'] == 'pdnorec')
<button class="btn btn-secondary">
Edit
</button>
@ -165,9 +178,18 @@
Hapus
</button>
@endif
</td>
</tr>
@endforeach
@endif
</td>
</tr>
@endforeach
@else
<tr>
<td colspan="6">
<center>~~~ Tidak Ada Riwayat SOAP ~~</center>
</td>
</tr>
@endif
</tbody>
</table>
</div>

View File

@ -0,0 +1,33 @@
<x-app-layout :assets="$assets ?? []">
<div class="row">
<div class="col-md-12 col-lg-12">
<div class="row">
<div class="col-md-12 col-lg-12">
<div class="card overflow-hidden" data-aos="fade-up" data-aos-delay="400">
<div class="card-body">
@if (Session::has('message'))
<div class="alert alert-danger">{{ Session::get('message') }}</div>
@endif
<form method="GET" action="{{ route('dokter.emr.soap.view') }}" data-toggle="validator">
<div class="row">
<div class="form-group col-lg-8 col-sm-12">
<input type="text" class="form-control" name="pdnorec" id="pdnorec" required>
</div>
<div class="form-group col-lg-4 col-sm-12">
<button type="submit" class="btn bg-success text-light col-12">Cari </button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</x-app-layout>
<script type="text/javascript">
$(document).ready(function(){
document.getElementById("pdnorec").focus();
})
</script>

View File

@ -1,13 +1,17 @@
<x-app-layout :assets="$assets ?? []">
<div>
<div class="row">
<div class="col-sm-12 col-lg-6">
@if($data['type'] == 'pdnorec')
<div class="col-sm-12 col-lg-6">
@elseif($data['type'] == 'nocm')
<div class="col-sm-12 col-lg-12">
@endif
<div class="card">
<div class="table-responsive mt-4">
<table class="table">
<tr>
<td>No MR</td>
<td>:</td>
<td style="width:200px;">No MR</td>
<td style="width:5px;">:</td>
<td>{{ $data['pasien_identitas']->nocm }}</td>
</tr>
<tr>
@ -37,13 +41,14 @@
</div>
</div>
</div>
@if($data['type'] == 'pdnorec')
<div class="col-sm-12 col-lg-6">
<div class="card">
<div class="table-responsive mt-4">
<table class="table">
<tr>
<td>No Registrasi</td>
<td>:</td>
<td style="width:200px;">No Registrasi</td>
<td style="width:5px;">:</td>
<td>{{ $data['pasien_identitas']->noregistrasi }}</td>
</tr>
<tr>
@ -71,16 +76,17 @@
</div>
</div>
</div>
@endif
<div class="row">
<div class="col-sm-12 col-lg-6">
<a href="{{route('dokter.emr.soap.view', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-secondary col-sm-12 col-lg-12">SOAP</div>
<div class="card btn btn-secondary col-sm-12 col-lg-12">{{ ($data['type'] == 'pdnorec') ? 'SOAP' : 'RIWAYAT SOAP' }}</div>
</a>
</div>
<div class="col-sm-12 col-lg-6">
<a href="{{route('dokter.order.resep.view', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-warning col-sm-12 col-lg-12">PERESEPAN OBAT</div>
<div class="card btn btn-warning col-sm-12 col-lg-12">{{ ($data['type'] == 'pdnorec') ? 'PERESEPAN OBAT' : 'RIWAYAT PERESEPAN OBAT' }}</div>
</a>
</div>
</div>
@ -91,15 +97,17 @@
<div class="card card-body">
<div class="row">
<div class="col-12 col-sm-12 col-xs-12 col-lg-10">
<h1>Riwayat Peresepan Obat</h1>
<h1>{{ ($data['type'] == 'pdnorec') ? 'PERESEPAN OBAT' : 'RIWAYAT PERESEPAN OBAT' }}</h1>
</div>
<div class="col-sm-12 col-lg-2">
@if(strtotime(date('d-m-Y', strtotime( $data['pasien_identitas']->tglregistrasi ))) == strtotime(date('d-m-Y')) )
<a href="{{route('dokter.emr.resep.form', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-info col-sm-12 col-lg-12">Tambah Resep</div>
</a>
@else
<div class="card btn btn-secondary col-sm-6 col-sm-12 col-lg-12">Tambah SOAP</div>
@if($data['type'] == 'pdnorec')
@if(strtotime(date('d-m-Y', strtotime( $data['pasien_identitas']->tglregistrasi ))) == strtotime(date('d-m-Y')) )
<a href="{{route('dokter.emr.resep.form', ['pdnorec' => $data['pdnorec']])}}">
<div class="card btn btn-info col-sm-12 col-lg-12">Tambah Resep</div>
</a>
@else
<div class="card btn btn-secondary col-sm-6 col-sm-12 col-lg-12">Tambah SOAP</div>
@endif
@endif
</div>
</div>
@ -116,6 +124,7 @@
</tr>
</thead>
<tbody>
@if(!empty($data['his_resep']))
@foreach($data['his_resep'] as $resultRow)
<tr>
<td>{{ date('d-m-Y', strtotime( $resultRow['tglorder'] )) }} / {{ date('H:i', strtotime( $resultRow['tglorder'])) }}</td>
@ -131,6 +140,13 @@
</td>
</tr>
@endforeach
@else
<tr>
<td colspan="4">
<center>~~~ Tidak Ada Riwayat peresepan Obat ~~</center>
</td>
</tr>
@endif
</tbody>
</table>
</div>

View File

@ -7,6 +7,15 @@
</li>
<li class="nav-item">
<a class="nav-link {{activeRoute(route('dokter.view-riwayat-pasien'))}}" aria-current="page" href="{{route('dokter.view-riwayat-pasien')}}">
<i class="icon">
<svg width="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path opacity="0.4" d="M16.0756 2H19.4616C20.8639 2 22.0001 3.14585 22.0001 4.55996V7.97452C22.0001 9.38864 20.8639 10.5345 19.4616 10.5345H16.0756C14.6734 10.5345 13.5371 9.38864 13.5371 7.97452V4.55996C13.5371 3.14585 14.6734 2 16.0756 2Z" fill="currentColor"></path>
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.53852 2H7.92449C9.32676 2 10.463 3.14585 10.463 4.55996V7.97452C10.463 9.38864 9.32676 10.5345 7.92449 10.5345H4.53852C3.13626 10.5345 2 9.38864 2 7.97452V4.55996C2 3.14585 3.13626 2 4.53852 2ZM4.53852 13.4655H7.92449C9.32676 13.4655 10.463 14.6114 10.463 16.0255V19.44C10.463 20.8532 9.32676 22 7.92449 22H4.53852C3.13626 22 2 20.8532 2 19.44V16.0255C2 14.6114 3.13626 13.4655 4.53852 13.4655ZM19.4615 13.4655H16.0755C14.6732 13.4655 13.537 14.6114 13.537 16.0255V19.44C13.537 20.8532 14.6732 22 16.0755 22H19.4615C20.8637 22 22 20.8532 22 19.44V16.0255C22 14.6114 20.8637 13.4655 19.4615 13.4655Z" fill="currentColor"></path>
</svg>
</i>
<span class="item-name">Riwayat Pasien</span>
</a>
<a class="nav-link {{activeRoute(route('dokter.list-pasien-telekonsultasi'))}}" aria-current="page" href="{{route('dokter.list-pasien-telekonsultasi')}}">
<i class="icon">
<svg width="20" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">

View File

@ -4,6 +4,7 @@
use App\Http\Controllers\HomeController;
use App\Http\Controllers\Dokter\ListPasienTelekonsultasiController;
use App\Http\Controllers\Dokter\DokterViewController;
use App\Http\Controllers\Dokter\RiwayatPasienController;
use App\Http\Controllers\Dokter\EMR\CPPT\CpptController;
use App\Http\Controllers\Dokter\Order\PeresepanObatController;
use App\Http\Controllers\Security\RolePermission;
@ -44,6 +45,7 @@ Route::group(['middleware' => 'auth'], function () {
Route::get('dashboard', [ListPasienTelekonsultasiController::class, 'ListPasienTelekonsultasi'])->name('dashboard');
Route::group(['prefix' => 'dokter'], function() {
Route::get('riwayat-pasien', [RiwayatPasienController::class, 'ViewRiwayatPasien'])->name('dokter.view-riwayat-pasien');
Route::get('list-pasien-telekonsutlasi', [ListPasienTelekonsultasiController::class, 'ListPasienTelekonsultasi'])->name('dokter.list-pasien-telekonsultasi');
Route::get('dashboard-pasien', [DokterViewController::class, 'ViewDashboardDokter'])->name('dokter.view-dashboard-dokter');