This commit is contained in:
Duidev Software House
2025-11-24 04:33:06 +07:00
parent 0ad8bf110e
commit 3d093a3c30
17 changed files with 2173 additions and 1252 deletions
@@ -89,7 +89,8 @@ class DokterController extends Controller
if ($verifikasi == '' OR is_null($verifikasi)){
$tanggal = '';
} else {
$gettanggal = explode('-', $verifikasi);
$gettanggal = explode(' ', $verifikasi);
$gettanggal = explode('-', $gettanggal[0]);
$yy = $gettanggal[0];
$mm = (int)$gettanggal[1];
$dd = $gettanggal[2];
@@ -459,7 +460,12 @@ class DokterController extends Controller
return response()->json(['icon' => 'error', 'warna' => '#bf441d', 'status' => 'Error..!!', 'message' => 'Please Select Doctor Names']);
return back();
} else {
$statusdraft = 'Proses Analisis Sampel';
$periksa = Periksa::with(['getPasien', 'getPoli'])->find($idperiksa);
$nm_spesimen = $periksa->nm_spesimen ?? '';
$noregister = $periksa->noregister ?? '';
$nmadendum = $periksa->nmadendum ?? '';
$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();
$data = $request->except(['_token', 'periksa_id', 'val01', 'val10', 'acc_number']);
foreach ($data as $key => $value) {
@@ -503,11 +509,79 @@ class DokterController extends Controller
]
);
}
$yangperludicloning = '';
if ($key == 'id_selepitel'){ $yangperludicloning = 'lsg_selepitel'; }
if ($key == 'id_selradang'){ $yangperludicloning = 'lsg_selradang'; }
if ($key == 'id_mikroorganisme'){ $yangperludicloning = 'lsg_mikroorganisme'; }
if ($key == 'id_mikroorganismeoptional'){ $yangperludicloning = 'lsg_mikroorganismeoptional'; }
if ($key == 'id_pewarnaanziehlnielsen'){ $yangperludicloning = 'lsg_pewarnaanziehlnielsen'; }
if ($key == 'id_pewarnaanziehlnielsensewaktu'){ $yangperludicloning = 'lsg_pewarnaanziehlnielsensewaktu'; }
if ($key == 'id_pewarnaankoh'){ $yangperludicloning = 'lsg_pewarnaankoh'; }
if ($key == 'id_pewarnaankohoptional'){ $yangperludicloning = 'lsg_pewarnaankohoptional'; }
if ($key == 'id_pewarnaanneisser'){ $yangperludicloning = 'lsg_pewarnaanneisser'; }
if ($key == 'id_pewarnaannegatif'){ $yangperludicloning = 'lsg_pewarnaannegatif'; }
if ($key == 'id_pewarnaanspora'){ $yangperludicloning = 'lsg_pewarnaanspora'; }
if ($key == 'id_pewarnaangiesma'){ $yangperludicloning = 'lsg_pewarnaangiesma'; }
if ($key == 'id_pewarnaangiesmaoptional'){ $yangperludicloning = 'lsg_pewarnaangiesmaoptional'; }
if ($key == 'lsg_selepitel'){ $yangperludicloning = 'id_selepitel'; }
if ($key == 'lsg_selradang'){ $yangperludicloning = 'id_selradang'; }
if ($key == 'lsg_mikroorganisme'){ $yangperludicloning = 'id_mikroorganisme'; }
if ($key == 'lsg_mikroorganismeoptional'){ $yangperludicloning = 'id_mikroorganismeoptional'; }
if ($key == 'lsg_pewarnaanziehlnielsen'){ $yangperludicloning = 'id_pewarnaanziehlnielsen'; }
if ($key == 'lsg_pewarnaanziehlnielsensewaktu'){ $yangperludicloning = 'id_pewarnaanziehlnielsensewaktu'; }
if ($key == 'lsg_pewarnaankoh'){ $yangperludicloning = 'id_pewarnaankoh'; }
if ($key == 'lsg_pewarnaankohoptional'){ $yangperludicloning = 'id_pewarnaankohoptional'; }
if ($key == 'lsg_pewarnaanneisser'){ $yangperludicloning = 'id_pewarnaanneisser'; }
if ($key == 'lsg_pewarnaannegatif'){ $yangperludicloning = 'id_pewarnaannegatif'; }
if ($key == 'lsg_pewarnaanspora'){ $yangperludicloning = 'id_pewarnaanspora'; }
if ($key == 'lsg_pewarnaangiesma'){ $yangperludicloning = 'id_pewarnaangiesma'; }
if ($key == 'lsg_pewarnaangiesmaoptional'){ $yangperludicloning = 'id_pewarnaangiesmaoptional'; }
if ($nm_spesimen == 'SPUTUM' AND !empty($cekganda) AND $yangperludicloning != ''){
foreach($cekganda as $rcloning){
$nofotocloning = $rcloning->nofoto;
$dlpcloning = $rcloning->dlp ?? 'Kultur';
if (is_array($value)) {
KomponenJawaban::updateOrCreate(
[
'accnumber' => $nofotocloning,
'komponen' => $yangperludicloning,
],
[
'isidata' => json_encode($value),
'template' => $dlpcloning,
'created_by' => session('nama'),
]
);
$isiygdiclone = json_encode($value);
} else {
KomponenJawaban::updateOrCreate(
[
'accnumber' => $nofotocloning,
'komponen' => $yangperludicloning,
],
[
'isidata' => $value,
'template' => $dlpcloning,
'created_by' => session('nama'),
]
);
$isiygdiclone = $value;
}
Riwayat::create([
'nofoto' => $nofotocloning,
'jawaban' => $yangperludicloning.' Value : '.$isiygdiclone,
'inputor' => Session('nama'),
'verifikasi' => '',
'keterangan' => 'Auto Clone',
]);
}
}
}
$analis = $request->input('analis');
$ppds3 = $request->input('ppds3');
$today = date('Y-m-d H:i:s');
$periksa = Periksa::with(['getPasien', 'getPoli'])->find($idperiksa);
$cekdokter = optional(User::find($iddokter));
$cekanalis = optional(User::find($analis));
$cekppds3 = optional(User::find($ppds3));
+203 -50
View File
@@ -13,6 +13,7 @@ use App\Pasien;
use App\Jadwalperiksa;
use App\Riwayat;
use App\RekapAntibiotik;
use App\Organisms;
use DateTime;
use Carbon\Carbon;
use Session;
@@ -308,40 +309,62 @@ class ReportController extends Controller
}
echo json_encode($lists);
} else {
if ($bulan === 'pertanggal' || $bulan === 'terjadwal') {
$results = DB::table($bulan === 'terjadwal' ? 'jadwalperiksan' : 'periksa')->when($bulan === 'terjadwal', function ($query) use ($tahun) {
return $query->whereNull('jadwalperiksan.status')
->where('jadwalperiksan.daftar', 'LIKE', "%$tahun%");
}, function ($query) use ($tahun) {
return $query->where('periksa.daftar', 'LIKE', "$tahun%");
})->get();
$totals = ['m' => 0, 'f' => 0, 'jkn' => 0, 'umum' => 0, 'tag' => 0, 'gcu' => 0, 'bill' => 0, 'swasta' => 0, 'electiv' => 0, 'cito' => 0];
foreach ($results as $result) {
$asuransi = $result->asuransi;
$urgensi = $result->urgensi;
$totals = self::updateTotals($totals, $asuransi, $urgensi, $result->jkpasien);
$arraylist[] = self::mapResultToArray($result);
}
if ($bulan === 'pertanggal') {
$arraylist[] = self::getTotalRow($totals);
}
echo json_encode($arraylist);
} else {
if ($bulan == 'ALL' || $bulan == 'Pick Month') {
$results = DB::table('periksa')->where('daftar', 'LIKE', $tahun.'%')->get();
$query = Periksa::select('*');
if ($bulan !== 'ALL') {
$query->whereMonth('mulai', $bulan);
}
$periksa = $query
->whereYear('mulai', $tahun)
->orderBy('mulai', 'ASC')
->get();
if ($periksa->count() == 0) {
return response()->json([]);
}
$accnumbers = $periksa->pluck('nofoto')->toArray();
$komponen = DB::table('db_komponenjawaban')->whereIn('accnumber', $accnumbers)->whereIn('komponen', ['id_bakteri01','id_bakteri02','id_mikroorganisme'])->get()->groupBy('accnumber');
$poli = DB::table('poli')->whereIn('id', $periksa->pluck('poli_id'))->get()->keyBy('id');
$hasil = $periksa->map(function($row) use ($komponen, $poli){
$k = $komponen[$row->nofoto] ?? collect([]);
$row->id_bakteri01 = optional($k->firstWhere('komponen', 'id_bakteri01'))->isidata;
$row->id_bakteri02 = optional($k->firstWhere('komponen', 'id_bakteri02'))->isidata;
$row->bakteri = optional($k->firstWhere('komponen', 'bakteri'))->isidata;
$row->filefoto = "<a href='".url('/hasil/'.$row->nofoto)."'>$row->nofoto</a>";
$p = $poli[$row->poli_id] ?? null;
$row->subpoli = $p->subpoli ?? null;
$target = $p->modaliti2 ?? '1';
$row->modaliti2 = $target;
if (!empty($row->verifikasi)) {
$selisih_hari = Carbon::parse($row->mulai)->diffInDays(Carbon::parse($row->verifikasi));
$target = intval($target);
$hari = intval($selisih_hari);
$row->selisih_hari = $selisih_hari;
if ($hari <= $target) {
$row->status_target = "MEMENUHI TARGET";
} else {
$row->status_target = "TIDAK MEMENUHI TARGET";
}
} else {
$tglcari = $tahun.'-'.$bulan;
$results = DB::table('periksa')->where('daftar', 'LIKE', $tglcari.'%')->get();
$row->selisih_hari = null;
$row->status_target = "TIDAK ADA HASIL";
}
$totals = ['m' => 0, 'f' => 0, 'jkn' => 0, 'umum' => 0, 'tag' => 0, 'gcu' => 0, 'bill' => 0, 'swasta' => 0, 'electiv' => 0, 'cito' => 0];
foreach ($results as $result) {
$asuransi = $result->asuransi;
$urgensi = $result->urgensi;
$totals = self::updateTotals($totals, $asuransi, $urgensi, $result->jkpasien);
$arraylist[] = self::mapResultToArray($result);
}
$arraylist[] = self::getTotalRow($totals);
echo json_encode($arraylist);
return $row;
});
if ($jenisreport == 'rekaptat'){
$rekap = $hasil->groupBy('kd_spesimen')->map(function($group){
return [
'jenis_pemeriksaan' => $group->first()->kd_spesimen,
'memenuhi' => $group->where('status_target', 'MEMENUHI TARGET')->count(),
'tidak_memenuhi' => $group->where('status_target', 'TIDAK MEMENUHI TARGET')->count(),
'tidak_ada_hasil' => $group->where('status_target', 'TIDAK ADA HASIL')->count(),
'total' => $group->count()
];
})->values();
return response()->json($rekap);
} else {
return response()->json($hasil);
}
}
@@ -482,6 +505,7 @@ class ReportController extends Controller
}
return view('admin.glassreport', compact('orderbydate', 'jsonantibiotik', 'bulan', 'tahun'));
}
public function genZNreport(Request $request) {
$data = [];
$bulan = $request->input('bulan');
@@ -493,26 +517,155 @@ class ReportController extends Controller
$bulan = str_replace('bulan=', '', $bulan);
$tahun = str_replace('tahun=', '', $tahun);
}
if ($bulan == '' OR $bulan == 'ALL' OR $bulan == 'Pick Month') {
$results = DB::table('periksa as p')
->leftJoin('db_komponenjawaban', 'p.nofoto', 'db_komponenjawaban.accnumber')
->whereMonth('daftar', $bulan)->whereYear('daftar', $tahun)
->whereIn('db_komponenjawaban.komponen', ['lsg_pewarnaanziehlnielsen', 'id_pewarnaanziehlnielsen'])
->select('db_komponenjawaban.komponen', DB::raw('COUNT(*) as jumlah'))
->groupBy('db_komponenjawaban.komponen')
->orderByDesc('jumlah')
->get();
// komponen Ziehl yang mau dianalisa
$komponenList = [
'id_pewarnaanziehlnielsen',
'id_pewarnaanziehlnielsensewaktu',
'lsg_pewarnaanziehlnielsen',
'lsg_pewarnaanziehlnielsensewaktu'
];
// Nilai Ziehl yang ingin dihitung
$nilaiList = Organisms::where('kelompok', 'Pewarnaan Ziehl Nielsen')->pluck('name')->toArray();
// 1. Ambil periksa sesuai bulan & tahun
if ($bulan == '' OR $bulan == 'ALL'){
$periksa = Periksa::with(['komponen' => function($q) use ($komponenList){
$q->whereIn('komponen', $komponenList);
}])
->whereYear('mulai', $tahun)
->get();
} else {
$results = DB::table('periksa as p')
->leftJoin('db_komponenjawaban', 'p.nofoto', 'db_komponenjawaban.accnumber')
->whereMonth('daftar', $bulan)->whereYear('daftar', $tahun)
->whereIn('db_komponenjawaban.komponen', ['lsg_pewarnaanziehlnielsen', 'id_pewarnaanziehlnielsen'])
->select('db_komponenjawaban.komponen', DB::raw('COUNT(*) as jumlah'))
->groupBy('db_komponenjawaban.komponen')
->orderByDesc('jumlah')
->get();
$periksa = Periksa::with(['komponen' => function($q) use ($komponenList){
$q->whereIn('komponen', $komponenList);
}])
->whereMonth('mulai', $bulan)
->whereYear('mulai', $tahun)
->get();
}
return view('admin.znreport', compact('results', 'bulan', 'tahun'));
// 2. Ambil distinct kd_spesimen → ini akan jadi kolom
$kdSpesimenList = $periksa
->pluck('kd_spesimen')
->unique()
->values();
// 3. Bangun struktur perhitungan
$rekapLaki = [];
$rekapPerempuan = [];
foreach ($nilaiList as $nilai) {
foreach ($kdSpesimenList as $spesimen) {
// hitung laki-laki
$rekapLaki[$nilai][$spesimen] = $periksa
->where('kd_spesimen', $spesimen)
->where('jkpasien', 'L')
->filter(function($px) use ($nilai, $komponenList){
return $px->komponen
->whereIn('komponen', $komponenList)
->where('isidata', $nilai)
->count() > 0;
})->count();
// hitung perempuan
$rekapPerempuan[$nilai][$spesimen] = $periksa
->where('kd_spesimen', $spesimen)
->where('jkpasien', 'P')
->filter(function($px) use ($nilai, $komponenList){
return $px->komponen
->whereIn('komponen', $komponenList)
->where('isidata', $nilai)
->count() > 0;
})->count();
}
}
$chartL = [];
$chartP = [];
foreach ($nilaiList as $nilai) {
$chartL[] = array_sum($rekapLaki[$nilai]);
$chartP[] = array_sum($rekapPerempuan[$nilai]);
}
return view('cetak.znreport', compact(
'rekapLaki',
'rekapPerempuan',
'kdSpesimenList',
'nilaiList',
'bulan',
'tahun',
'chartL',
'chartP'
));
}
public function genTATreport(Request $request) {
$data = [];
$bulan = $request->input('bulan');
$tahun = $request->input('tahun');
if ($tahun == '' OR is_null($tahun)){
$getarray = explode('?', $bulan);
$bulan = $getarray[0] ?? date('m');
$tahun = $getarray[1] ?? date('Y');
$bulan = str_replace('bulan=', '', $bulan);
$tahun = str_replace('tahun=', '', $tahun);
}
$query = Periksa::select('*');
if ($bulan !== 'ALL') {
$query->whereMonth('mulai', $bulan);
}
$periksa = $query->whereYear('mulai', $tahun)->orderBy('mulai', 'ASC')->get();
if ($periksa->count() == 0) {
return response()->json([]);
}
$accnumbers = $periksa->pluck('nofoto')->toArray();
$komponen = DB::table('db_komponenjawaban')->whereIn('accnumber', $accnumbers)->whereIn('komponen', ['id_bakteri01','id_bakteri02','id_mikroorganisme'])->get()->groupBy('accnumber');
$poli = DB::table('poli')->whereIn('id', $periksa->pluck('poli_id'))->get()->keyBy('id');
$hasil = $periksa->map(function($row) use ($komponen, $poli){
$k = $komponen[$row->nofoto] ?? collect([]);
$row->id_bakteri01 = optional($k->firstWhere('komponen', 'id_bakteri01'))->isidata;
$row->id_bakteri02 = optional($k->firstWhere('komponen', 'id_bakteri02'))->isidata;
$row->bakteri = optional($k->firstWhere('komponen', 'bakteri'))->isidata;
$row->filefoto = "<a href='".url('/hasil/'.$row->nofoto)."'>$row->nofoto</a>";
$p = $poli[$row->poli_id] ?? null;
$row->subpoli = $p->subpoli ?? null;
$target = $p->modaliti2 ?? '1';
$row->modaliti2 = $target;
if (!empty($row->verifikasi)) {
$selisih_hari = Carbon::parse($row->mulai)->diffInDays(Carbon::parse($row->verifikasi));
$target = intval($target);
$hari = intval($selisih_hari);
$row->selisih_hari = $selisih_hari;
if ($hari <= $target) {
$row->status_target = "MEMENUHI TARGET";
} else {
$row->status_target = "TIDAK MEMENUHI TARGET";
}
} else {
$row->selisih_hari = null;
$row->status_target = "TIDAK ADA HASIL";
}
return $row;
});
$rekap = $hasil->groupBy('kd_spesimen')->map(function($group){
return [
'jenis_pemeriksaan' => $group->first()->kd_spesimen,
'memenuhi' => $group->where('status_target', 'MEMENUHI TARGET')->count(),
'tidak_memenuhi' => $group->where('status_target', 'TIDAK MEMENUHI TARGET')->count(),
'tidak_ada_hasil' => $group->where('status_target', 'TIDAK ADA HASIL')->count(),
'total' => $group->count()
];
})->values();
return view('cetak.tatreport', [
'bulan' => $bulan,
'tahun' => $tahun,
'detail' => $hasil,
'rekap' => $rekap
]);
}
}
+5 -1
View File
@@ -3,7 +3,7 @@
namespace App;
use Illuminate\Database\Eloquent\Model;
use App\KomponenJawaban;
class Periksa extends Model
{
protected $table = "periksa";
@@ -52,4 +52,8 @@ class Periksa extends Model
{
return $this->hasOne('App\Logbook','id','diagnosa');
}
public function komponen()
{
return $this->hasMany(KomponenJawaban::class, 'accnumber', 'nofoto');
}
}
+3 -3
View File
@@ -462,7 +462,7 @@ class AstmMessageService
}
}
Periksa::where('nofoto', $accession_number)->update([
Periksa::where('nofoto', $accession_number)->whereNotIn('status', ['Selesai', 'Arsip', 'Dibatalkan (Arsip)', 'Batal'])->update([
'status' => 'Data Vitek di Terima',
]);
}
@@ -660,7 +660,7 @@ class AstmMessageService
DataListiner::where('urut', $data->urut)->update([
'processed' => 1
]);
Periksa::where('nofoto', $data->no_id)->update([
Periksa::where('nofoto', $data->no_id)->whereNotIn('status', ['Selesai', 'Arsip', 'Dibatalkan (Arsip)', 'Batal'])->update([
'status' => 'Data BD di Terima ('.$data->organisme.')',
]);
Log::info("Data ASTM BD ", $resultSample->toArray());
@@ -734,7 +734,7 @@ class AstmMessageService
DB::table('lis_phoenix')->where('id', $data->id)->update([
'processed' => 1
]);
Periksa::where('nofoto', $data->no_id)->update([
Periksa::where('nofoto', $data->no_id)->whereNotIn('status', ['Selesai', 'Arsip', 'Dibatalkan (Arsip)', 'Batal'])->update([
'status' => 'Data BD di Terima',
]);
Log::info("Data ASTM BD ", $resultSample->toArray());
+63 -173
View File
@@ -69,6 +69,12 @@
<input class="form-control" type="text" id="add_subsubpoli" name="add_subsubpoli">
</div>
</div>
<div class="form-group m-b-25">
<div class="col-12">
<label>Target Selesai (Hari)</label>
<input class="form-control" type="number" id="add_modaliti2" name="add_modaliti2">
</div>
</div>
<div class="form-group account-btn text-center m-t-10">
<div class="col-12">
<button class="btn w-lg btn-custom waves-effect waves-light" id="btnAddPoli" type="button">Save</button>
@@ -113,6 +119,12 @@
<input class="form-control" type="text" id="subsubpoli" name="subsubpoli">
</div>
</div>
<div class="form-group m-b-25">
<div class="col-12">
<label>Target Selesai (Hari)</label>
<input class="form-control" type="number" id="modaliti2" name="modaliti2">
</div>
</div>
<input type="hidden" id="id_poli" name="id_poli">
<div class="form-group account-btn text-center m-t-10">
<div class="col-12">
@@ -272,145 +284,6 @@
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
<div style="overflow: hidden; display: none;">
<div class="form-group m-b-25">
<div class="col-12">
<label>Secondary Mapping</label>
<select class="form-control" id="add_modaliti2" name="add_modaliti2">
<option value="OT">OT - Other</option>
<option value="CR">CR - Computed Radiography</option>
<option value="CT">CT - Computed Tomography</option>
<option value="DX">DX - Digital Radiography</option>
<option value="MG">MG - Mammography</option>
<option value="MR">MR - Magnetic Resonance</option>
<option value="PX">PX - Panoramic X-Ray</option>
<option value="AR">AR - Autorefraction</option>
<option value="RF">RF - Radio Fluoroscopy</option>
<option value="RG">RG - Radiographic imaging (conventional film/screen)</option>
<option value="TG">TG - Thermography</option>
<option value="US">US - Ultrasound</option>
<option value="VA">VA - Visual Acuity</option>
<option value="XA">XA - X-Ray Angiography</option>
<option value="XC">XC - External-camera Photography</option>
<option value="ASMT">ASMT - Content Assessment Results</option>
<option value="AU">AU - Audio</option>
<option value="BDUS">BDUS - Bone Densitometry (ultrasound)</option>
<option value="BI">BI - Biomagnetic imaging</option>
<option value="BMD">BMD - Bone Densitometry (X-Ray)</option>
<option value="DG">DG - Diaphanography</option>
<option value="DOC">DOC - Document</option>
<option value="ECG">ECG - Electrocardiography</option>
<option value="EPS">EPS - Cardiac Electrophysiology</option>
<option value="ES">ES - Endoscopy</option>
<option value="FID">FID - Fiducials</option>
<option value="GM">GM - General Microscopy</option>
<option value="HC">HC - Hard Copy</option>
<option value="HD">HD - Hemodynamic Waveform</option>
<option value="IO">IO - Intra-Oral Radiography</option>
<option value="IOL">IOL - Intraocular Lens Data</option>
<option value="IVOCT">IVOCT - Intravascular Optical Coherence Tomography</option>
<option value="IVUS">IVUS - Intravascular Ultrasound</option>
<option value="KER">KER - Keratometry</option>
<option value="KO">KO - Key Object Selection</option>
<option value="LEN">LEN - Lensometry</option>
<option value="LS">LS - Laser surface scan</option>
<option value="NM">NR - Nuclear Medicine</option>
<option value="OAM">OAM - Ophthalmic Axial Measurements</option>
<option value="OCT">OCT - Optical Coherence Tomography (non-Ophthalmic)</option>
<option value="OP">OP - Ophthalmic Photography</option>
<option value="OPM">OPM - Ophthalmic Mapping</option>
<option value="OPT">OPT - Ophthalmic Tomography</option>
<option value="OPV">OPV - Ophthalmic Visual Field</option>
<option value="OSS">OSS - Optical Surface Scan</option>
<option value="PLAN">PLAN - Plan</option>
<option value="PR">PR - Presentation State</option>
<option value="PT">PT - Positron emission tomography (PET)</option>
<option value="REG">REG - Registration</option>
<option value="RESP">RESP - Respiratory Waveform</option>
<option value="RTDOSE">RTDOSE - Radiotherapy Dose</option>
<option value="RTIMAGE">RTIMAGE - Radiotherapy Image</option>
<option value="RTPLAN">RTPLAN - Radiotherapy Plan</option>
<option value="RTRECORD">RTRECORD - RT Treatment Record</option>
<option value="RTSTRUCT">RTSTRUCT - Radiotherapy Structure Set</option>
<option value="RWV">RWV - Real World Value Map</option>
<option value="SEG">SEG - Segmentation</option>
<option value="SM">SM - Slide Microscopy</option>
<option value="SMR">SMR - Stereometric Relationship</option>
<option value="SR">SR - SR Document</option>
<option value="SRF">SRF - Subjective Refraction</option>
<option value="STAIN">STAIN - Automated Slide Stainer</option>
</select>
</div>
</div>
<div class="form-group m-b-25">
<div class="col-12">
<label>Secondary Mapping</label>
<select class="form-control" id="modaliti2" name="modaliti2">
<option value="OT">OT - Other</option>
<option value="CR">CR - Computed Radiography</option>
<option value="CT">CT - Computed Tomography</option>
<option value="DX">DX - Digital Radiography</option>
<option value="MG">MG - Mammography</option>
<option value="MR">MR - Magnetic Resonance</option>
<option value="PX">PX - Panoramic X-Ray</option>
<option value="AR">AR - Autorefraction</option>
<option value="RF">RF - Radio Fluoroscopy</option>
<option value="RG">RG - Radiographic imaging (conventional film/screen)</option>
<option value="TG">TG - Thermography</option>
<option value="US">US - Ultrasound</option>
<option value="VA">VA - Visual Acuity</option>
<option value="XA">XA - X-Ray Angiography</option>
<option value="XC">XC - External-camera Photography</option>
<option value="ASMT">ASMT - Content Assessment Results</option>
<option value="AU">AU - Audio</option>
<option value="BDUS">BDUS - Bone Densitometry (ultrasound)</option>
<option value="BI">BI - Biomagnetic imaging</option>
<option value="BMD">BMD - Bone Densitometry (X-Ray)</option>
<option value="DG">DG - Diaphanography</option>
<option value="DOC">DOC - Document</option>
<option value="ECG">ECG - Electrocardiography</option>
<option value="EPS">EPS - Cardiac Electrophysiology</option>
<option value="ES">ES - Endoscopy</option>
<option value="FID">FID - Fiducials</option>
<option value="GM">GM - General Microscopy</option>
<option value="HC">HC - Hard Copy</option>
<option value="HD">HD - Hemodynamic Waveform</option>
<option value="IO">IO - Intra-Oral Radiography</option>
<option value="IOL">IOL - Intraocular Lens Data</option>
<option value="IVOCT">IVOCT - Intravascular Optical Coherence Tomography</option>
<option value="IVUS">IVUS - Intravascular Ultrasound</option>
<option value="KER">KER - Keratometry</option>
<option value="KO">KO - Key Object Selection</option>
<option value="LEN">LEN - Lensometry</option>
<option value="LS">LS - Laser surface scan</option>
<option value="NM">NR - Nuclear Medicine</option>
<option value="OAM">OAM - Ophthalmic Axial Measurements</option>
<option value="OCT">OCT - Optical Coherence Tomography (non-Ophthalmic)</option>
<option value="OP">OP - Ophthalmic Photography</option>
<option value="OPM">OPM - Ophthalmic Mapping</option>
<option value="OPT">OPT - Ophthalmic Tomography</option>
<option value="OPV">OPV - Ophthalmic Visual Field</option>
<option value="OSS">OSS - Optical Surface Scan</option>
<option value="PLAN">PLAN - Plan</option>
<option value="PR">PR - Presentation State</option>
<option value="PT">PT - Positron emission tomography (PET)</option>
<option value="REG">REG - Registration</option>
<option value="RESP">RESP - Respiratory Waveform</option>
<option value="RTDOSE">RTDOSE - Radiotherapy Dose</option>
<option value="RTIMAGE">RTIMAGE - Radiotherapy Image</option>
<option value="RTPLAN">RTPLAN - Radiotherapy Plan</option>
<option value="RTRECORD">RTRECORD - RT Treatment Record</option>
<option value="RTSTRUCT">RTSTRUCT - Radiotherapy Structure Set</option>
<option value="RWV">RWV - Real World Value Map</option>
<option value="SEG">SEG - Segmentation</option>
<option value="SM">SM - Slide Microscopy</option>
<option value="SMR">SMR - Stereometric Relationship</option>
<option value="SR">SR - SR Document</option>
<option value="SRF">SRF - Subjective Refraction</option>
<option value="STAIN">STAIN - Automated Slide Stainer</option>
</select>
</div>
</div>
</div>
@endsection
@@ -792,23 +665,32 @@
var modaliti = document.getElementById('add_modaliti').value;
var modaliti2 = document.getElementById('add_modaliti2').value;
var token = document.getElementById('token').value;
$.post('{{ route("storePoli") }}', { poli: poli, subpoli: subpoli, subsubpoli: subsubpoli, modaliti: modaliti, modaliti2: modaliti2, _token: token },
function(data){
var message = data.message;
var status = data.status;
$.toast({
heading: status,
text: message,
position: 'top-right',
loaderBg: '#bf441d',
icon: 'info',
hideAfter: 5000,
stack: 1
});
$('#addModalPoli').modal('hide');
$("#gridpoli").jqxGrid('updatebounddata');
return false;
});
if (poli == '' || subpoli == '' || subsubpoli == '' || modaliti == '' || modaliti2 == '' || modaliti2 == '0'){
swal({
title : 'Mohon diLengkapi',
text : 'Data Dasar Wajib di Isi, Target Hari tidak Boleh Kosong / 0',
type : 'warning',
});
} else {
$.post('{{ route("storePoli") }}', { poli: poli, subpoli: subpoli, subsubpoli: subsubpoli, modaliti: modaliti, modaliti2: modaliti2, _token: token },
function(data){
var message = data.message;
var status = data.status;
$.toast({
heading: status,
text: message,
position: 'top-right',
loaderBg: '#bf441d',
icon: 'info',
hideAfter: 5000,
stack: 1
});
$('#addModalPoli').modal('hide');
$("#gridpoli").jqxGrid('updatebounddata');
return false;
});
}
});
$("#btnAddRuangan").click(function(){
var poli = document.getElementById('add_idruangan').value;
@@ -838,23 +720,31 @@
var modaliti = document.getElementById('modaliti').value;
var modaliti2 = document.getElementById('modaliti2').value;
var token = document.getElementById('token').value;
$.post('{{ route("updatePoli") }}', { id: poli_id, poli: poli, subpoli: subpoli, subsubpoli: subsubpoli, modaliti: modaliti, modaliti2: modaliti2, _token: token },
function(data){
var message = data.message;
var status = data.status;
$.toast({
heading: status,
text: message,
position: 'top-right',
loaderBg: '#bf441d',
icon: 'info',
hideAfter: 5000,
stack: 1
});
$('#updateModalPoli').modal('hide');
$("#gridpoli").jqxGrid('updatebounddata');
return false;
});
if (poli == '' || subpoli == '' || subsubpoli == '' || modaliti == '' || modaliti2 == '' || modaliti2 == '0'){
swal({
title : 'Mohon diLengkapi',
text : 'Data Dasar Wajib di Isi, Target Hari tidak Boleh Kosong / 0',
type : 'warning',
});
} else {
$.post('{{ route("updatePoli") }}', { id: poli_id, poli: poli, subpoli: subpoli, subsubpoli: subsubpoli, modaliti: modaliti, modaliti2: modaliti2, _token: token },
function(data){
var message = data.message;
var status = data.status;
$.toast({
heading: status,
text: message,
position: 'top-right',
loaderBg: '#bf441d',
icon: 'info',
hideAfter: 5000,
stack: 1
});
$('#updateModalPoli').modal('hide');
$("#gridpoli").jqxGrid('updatebounddata');
return false;
});
}
});
$("#btnUpdateRuangan").click(function(){
var poli = document.getElementById('poli_ruangan').value;
+150 -279
View File
@@ -12,15 +12,15 @@
<div class="form-group col-md-3">
<select class="form-control" id="bulan" name="bulan">
<option value="ALL">Setahun</option>
<option value="01">Januari</option>
<option value="02">Februari</option>
<option value="03">Maret</option>
<option value="04">April</option>
<option value="05">Mei</option>
<option value="06">Juni</option>
<option value="07">Juli</option>
<option value="08">Agustus</option>
<option value="09">September</option>
<option value="1">Januari</option>
<option value="2">Februari</option>
<option value="3">Maret</option>
<option value="4">April</option>
<option value="5">Mei</option>
<option value="6">Juni</option>
<option value="7">Juli</option>
<option value="8">Agustus</option>
<option value="9">September</option>
<option value="10">Oktober</option>
<option value="11">November</option>
<option value="12">Desember</option>
@@ -50,20 +50,6 @@
</div>
</div>
</div>
<div class="col-lg-6">
<div class="card-box ribbon-box">
<div class="ribbon ribbon-info">Pick Date Report</div>
<p class="m-b-0"></p>
<div class="form-row">
<div class="form-group col-md-3">
<input type="text" name="tanggal" id="tanggal" class="form-control">
</div>
<div class="form-group col-md-3">
<button type="button" class="btn btn-info" id="btndatereport">Show</button>
</div>
</div>
</div>
</div>
</div>
<div id="divlaporan">
<div class="row">
@@ -194,129 +180,104 @@ $(document).ready(function () {
var bulan = document.getElementById('bulan').value;
var tahun = document.getElementById('tahun').value;
var token = document.getElementById('token').value;
var source = {
datatype: "json",
datafields: [
{ name: 'id',type: 'text'},
{ name: 'nofoto',type: 'text'},
{ name: 'noregister',type: 'text'},
{ name: 'nmpasien',type: 'text'},
{ name: 'usia',type: 'text'},
{ name: 'l',type: 'text'},
{ name: 'p', type: 'text'},
{ name: 'jenis',type: 'text'},
{ name: 'ruangan',type: 'text'},
{ name: 'kesimpulan', type: 'text'},
{ name: 'poli', type: 'text'},
{ name: 'jkn', type: 'text'},
{ name: 'umm', type: 'text'},
{ name: 'swasta', type: 'text'},
{ name: 'gcu', type: 'text'},
{ name: 'tag', type: 'text'},
{ name: 'swasta', type: 'text'},
{ name: 'billing', type: 'text'},
{ name: 'ele', type: 'text'},
{ name: 'cito', type: 'text'},
{ name: 'daftar', type: 'text'},
{ name: 'foto',type: 'text'},
{ name: 'baca',type: 'text'},
{ name: 'export',type: 'text'},
{ name: 'created_at',type: 'text'},
{ name: 'nmdokter',type: 'text'},
{ name: 'nmppdssenior',type: 'text'},
{ name: 'nmmiddleppds',type: 'text'},
{ name: 'nmppdsjunior',type: 'text'},
{ name: 'nmppdsmiddle2',type: 'text'},
{ name: 'nmppdsjunior2',type: 'text'},
{ name: 'diagnosa2',type: 'text'},
{ name: 'modality',type: 'text'},
{ name: 'dlp',type: 'text'},
{ name: 'nm_spesimen',type: 'text'},
{ name: 'kd_spesimen',type: 'text'},
{ name: 'asalpasien',type: 'text'},
{ name: 'status',type: 'text'},
{ name: 'nmrs',type: 'text'},
{ name: 'berat',type: 'text'},
{ name: 'klinisi',type: 'text'},
{ name: 'klinis',type: 'text'},
{ name: 'tlppasien',type: 'text'},
{ name: 'nmanalis',type: 'text'},
{ name: 'verifikasi',type: 'text'},
{ name: 'noloket',type: 'text'},
{ name: 'jumlah',type: 'text'},
{ name: 'nmdrafter',type: 'text'},
{ name: 'tgldraft',type: 'text'},
{ name: 'nmpembaca',type: 'text'},
{ name: 'tgladendum',type: 'text'},
{ name: 'nmadendum',type: 'text'},
{ name: 'filefoto',type: 'text'},
{ name: 'durasi', type: 'text'},
],
updaterow : function (rowid, rowdata, commit) {commit(true);},
type : 'POST',
data : {bulan: bulan, tahun: tahun, jenisreport: '', _token: token },
url : '{{ route("reportPeriksa") }}',
};
var dataAdapter = new $.jqx.dataAdapter(source);
$('#divlaporan').show();
$('#divlaporanharian').hide();
$("#result").jqxGrid({
width : '100%',
enablebrowserselection : true,
filterable : true,
autoheight : true,
showfilterrow : true,
altrows : true,
source : dataAdapter,
pageable : true,
theme : "energyblue",
columnsresize : true,
selectionmode : 'multiplecellsextended',
columns : [
{ text: 'File Report', editable: false, sortable: false, filterable: false, datafield: 'filefoto', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'No.Loket', datafield: 'noloket', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'No.RM', datafield: 'noregister', width: 70, align: 'center', cellsalign: 'left'},
{ text: 'Nama', datafield: 'nmpasien', width: 160, cellsalign: 'left', align: 'center' },
{ text: 'No.HP', datafield: 'tlppasien', width: 100, cellsalign: 'left', align: 'center' },
{ text: 'Umur', datafield: 'usia', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'M', editable: false, sortable: false, filterable: false, datafield: 'l', width: 20, cellsalign: 'left', align: 'center' },
{ text: 'F', editable: false, sortable: false, filterable: false, datafield: 'p', width: 20, cellsalign: 'left', align: 'center' },
{ text: 'Order', editable: false, sortable: false, filterable: false, datafield: 'jenis', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'JKN', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'jkn', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'UMM', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'umm', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'TAG', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'tag', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'GCU', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'gcu', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'Billing', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'billing', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'SWASTA', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'swasta', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'Elective', editable: false, sortable: false, filterable: false, columngroup: 'urgensi', datafield: 'ele', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'CITO', editable: false, sortable: false, filterable: false, columngroup: 'urgensi', datafield: 'cito', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'Sample Masuk', columngroup: 'waktu', datafield: 'daftar', width: 160, cellsalign: 'left', align: 'center' },
{ text: 'Draft By', columngroup: 'waktu', datafield: 'nmdrafter', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Tgl. Draft', columngroup: 'waktu', datafield: 'tgldraft', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'Expertise By', columngroup: 'waktu', datafield: 'nmpembaca', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Supervisor', columngroup: 'waktu', datafield: 'nmdokter', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Verifikasi', columngroup: 'waktu', datafield: 'verifikasi', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'Cetak', columngroup: 'waktu', datafield: 'export', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'Asal Pasien', datafield: 'asalpasien', width: 100, cellsalign: 'left', align: 'center'},
{ text: 'Asal RS', datafield: 'nmrs', width: 100, cellsalign: 'left', align: 'center'},
{ text: 'Klinisi', datafield: 'klinisi', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Klinis', datafield: 'klinis', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Analis', datafield: 'nmanalis', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'PPDS', datafield: 'nmppdssenior', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Device', datafield: 'modality', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Code', datafield: 'kd_spesimen', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Speciment', datafield: 'nm_spesimen', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Template', datafield: 'dlp', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Jenis', datafield: 'diagnosa2', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Duration', editable: false, sortable: false, filterable: false, datafield: 'durasi', width: 100, cellsalign: 'left', align: 'center'},
],
columngroups:
[
{ text: 'Riwayat Tindakan', align: 'center', name: 'waktu' },
{ text: 'Urgensi', align: 'center', name: 'urgensi' },
{ text: 'Insurance', align: 'center', name: 'asuransi' }
]
});
if (bulan == '' || tahun == ''){
swal({
title : 'Mohon diLengkapi',
text : 'Data Dasar Bulan dan Tahun Wajib di Isi',
type : 'error',
});
} else {
var source = {
datatype: "json",
datafields: [
{ name: 'id',type: 'text'},
{ name: 'filefoto',type: 'text'},
{ name: 'mulai',type: 'text'},
{ name: 'akhir',type: 'text'},
{ name: 'orderid',type: 'text'},
{ name: 'nofoto',type: 'text'},
{ name: 'noregister',type: 'text'},
{ name: 'asalpasien', type: 'text'},
{ name: 'nmpasien',type: 'text'},
{ name: 'jkpasien',type: 'text'},
{ name: 'tgllahirpasien', type: 'text'},
{ name: 'tlppasien', type: 'text'},
{ name: 'alamatpasien', type: 'text'},
{ name: 'usia', type: 'text'},
{ name: 'ktp', type: 'text'},
{ name: 'bpjs', type: 'text'},
{ name: 'klinis', type: 'text'},
{ name: 'klinisi', type: 'text'},
{ name: 'asuransi', type: 'text'},
{ name: 'urgensi', type: 'text'},
{ name: 'kd_spesimen', type: 'text'},
{ name: 'nm_spesimen', type: 'text'},
{ name: 'verifikasi',type: 'text'},
{ name: 'dlp',type: 'text'},
{ name: 'status',type: 'text'},
{ name: 'id_bakteri01',type: 'text'},
{ name: 'id_bakteri02',type: 'text'},
{ name: 'bakteri',type: 'text'},
{ name: 'selisih_hari',type: 'text'},
{ name: 'subpoli',type: 'text'},
{ name: 'status_target',type: 'text'},
{ name: 'modaliti2',type: 'text'},
],
updaterow : function (rowid, rowdata, commit) {commit(true);},
type : 'POST',
data : {bulan: bulan, tahun: tahun, jenisreport: '', _token: token },
url : '{{ route("reportPeriksa") }}',
};
var dataAdapter = new $.jqx.dataAdapter(source);
$('#divlaporan').show();
$('#divlaporanharian').hide();
$("#result").jqxGrid({
width : '100%',
enablebrowserselection : true,
filterable : true,
autoheight : true,
showfilterrow : true,
altrows : true,
source : dataAdapter,
pageable : true,
theme : "energyblue",
columnsresize : true,
selectionmode : 'multiplecellsextended',
columns : [
{ text: 'File Report', editable: false, sortable: false, filterable: false, datafield: 'filefoto', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'No.Loket', datafield: 'nofoto', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'No.RM', datafield: 'noregister', width: 70, align: 'center', cellsalign: 'left'},
{ text: 'Nama', datafield: 'nmpasien', width: 160, cellsalign: 'left', align: 'center' },
{ text: 'No.HP', datafield: 'tlppasien', width: 100, cellsalign: 'left', align: 'center' },
{ text: 'Tgl. Lahir', datafield: 'tgllahirpasien', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'Umur', datafield: 'usia', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'Alamat', datafield: 'alamatpasien', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'KTP', datafield: 'ktp', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'BPJS', datafield: 'bpjs', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'Asuransi', datafield: 'asuransi', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'Urgensi', datafield: 'urgensi', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'Asal Pasien', datafield: 'asalpasien', width: 100, cellsalign: 'left', align: 'center'},
{ text: 'Order', datafield: 'subpoli', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Klinisi', datafield: 'klinisi', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Klinis', datafield: 'klinis', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Analis', datafield: 'nmanalis', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'PPDS', datafield: 'nmppdssenior', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Code', datafield: 'kd_spesimen', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Speciment', datafield: 'nm_spesimen', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Template', datafield: 'dlp', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Jenis', datafield: 'diagnosa2', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Bakteri I', datafield: 'bakteri', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Bakteri II', datafield: 'id_bakteri01', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Bakteri III', datafield: 'id_bakteri02', width: 150, cellsalign: 'left', align: 'center'},
{ text: 'Sample Masuk', datafield: 'mulai', width: 160, cellsalign: 'left', align: 'center' },
{ text: 'Verifikasi', datafield: 'verifikasi', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'Target', datafield: 'modaliti2', width: 100, cellsalign: 'left', align: 'center'},
{ text: 'Duration', datafield: 'selisih_hari', width: 100, cellsalign: 'left', align: 'center'},
{ text: 'Keterangan', datafield: 'status_target', width: 100, cellsalign: 'left', align: 'center'},
{ text: 'Status', datafield: 'status', width: 100, cellsalign: 'left', align: 'center'},
],
});
}
});
$('#btnrekapbiorepo').click(function () {
var bulan = document.getElementById('bulan').value;
@@ -479,149 +440,59 @@ $(document).ready(function () {
$('#btnrekap').click(function () {
var bulan = document.getElementById('bulan').value;
var tahun = document.getElementById('tahun').value;
var url = '{{url('/')}}/rekapantibiotik?bulan='+bulan+'?tahun='+tahun;
window.location.href = url;
if (bulan == '' || tahun == ''){
swal({
title : 'Mohon diLengkapi',
text : 'Data Dasar Bulan dan Tahun Wajib di Isi',
type : 'error',
});
} else {
var url = '{{url('/')}}/rekapantibiotik?bulan='+bulan+'?tahun='+tahun;
window.location.href = url;
}
});
$('#btnrekapglassreport').click(function () {
var bulan = document.getElementById('bulan').value;
var tahun = document.getElementById('tahun').value;
var url = '{{url('/')}}/glassreport?bulan='+bulan+'?tahun='+tahun;
window.location.href = url;
if (bulan == '' || tahun == ''){
swal({
title : 'Mohon diLengkapi',
text : 'Data Dasar Bulan dan Tahun Wajib di Isi',
type : 'error',
});
} else {
var url = '{{url('/')}}/glassreport?bulan='+bulan+'?tahun='+tahun;
window.location.href = url;
}
});
$('#btnrekapzn').click(function () {
var bulan = document.getElementById('bulan').value;
var tahun = document.getElementById('tahun').value;
var url = '{{url('/')}}/znreport?bulan='+bulan+'?tahun='+tahun;
window.location.href = url;
if (bulan == '' || tahun == ''){
swal({
title : 'Mohon diLengkapi',
text : 'Data Dasar Bulan dan Tahun Wajib di Isi',
type : 'error',
});
} else {
var url = '{{url('/')}}/znreport?bulan='+bulan+'?tahun='+tahun;
window.location.href = url;
}
});
$('#btndatereport').click(function () {
var bulan = 'pertanggal';
var tahun = document.getElementById('tanggal').value;
$('#btnrekaptat').click(function () {
var bulan = document.getElementById('bulan').value;
var tahun = document.getElementById('tahun').value;
var token = document.getElementById('token').value;
var source = {
datatype: "json",
datafields: [
{ name: 'id',type: 'text'},
{ name: 'nofoto',type: 'text'},
{ name: 'noregister',type: 'text'},
{ name: 'nmpasien',type: 'text'},
{ name: 'usia',type: 'text'},
{ name: 'l',type: 'text'},
{ name: 'p', type: 'text'},
{ name: 'jenis',type: 'text'},
{ name: 'ruangan',type: 'text'},
{ name: 'kesimpulan', type: 'text'},
{ name: 'poli', type: 'text'},
{ name: 'jkn', type: 'text'},
{ name: 'umm', type: 'text'},
{ name: 'swasta', type: 'text'},
{ name: 'gcu', type: 'text'},
{ name: 'tag', type: 'text'},
{ name: 'swasta', type: 'text'},
{ name: 'billing', type: 'text'},
{ name: 'ele', type: 'text'},
{ name: 'cito', type: 'text'},
{ name: 'daftar', type: 'text'},
{ name: 'foto',type: 'text'},
{ name: 'baca',type: 'text'},
{ name: 'export',type: 'text'},
{ name: 'created_at',type: 'text'},
{ name: 'nmdokter',type: 'text'},
{ name: 'nmppdssenior',type: 'text'},
{ name: 'nmmiddleppds',type: 'text'},
{ name: 'nmppdsjunior',type: 'text'},
{ name: 'nmppdsmiddle2',type: 'text'},
{ name: 'nmppdsjunior2',type: 'text'},
{ name: 'diagnosa2',type: 'text'},
{ name: 'modality',type: 'text'},
{ name: 'dlp',type: 'text'},
{ name: 'nm_spesimen',type: 'text'},
{ name: 'kd_spesimen',type: 'text'},
{ name: 'asalpasien',type: 'text'},
{ name: 'status',type: 'text'},
{ name: 'nmrs',type: 'text'},
{ name: 'berat',type: 'text'},
{ name: 'klinisi',type: 'text'},
{ name: 'klinis',type: 'text'},
{ name: 'tlppasien',type: 'text'},
{ name: 'nmanalis',type: 'text'},
{ name: 'verifikasi',type: 'text'},
{ name: 'noloket',type: 'text'},
{ name: 'jumlah',type: 'text'},
{ name: 'nmdrafter',type: 'text'},
{ name: 'tgldraft',type: 'text'},
{ name: 'nmpembaca',type: 'text'},
{ name: 'tgladendum',type: 'text'},
{ name: 'nmadendum',type: 'text'},
{ name: 'durasi', type: 'text'},
],
updaterow : function (rowid, rowdata, commit) {commit(true);},
type : 'POST',
data : {bulan: bulan, tahun: tahun, jenisreport: '', _token: token },
url : '{{ route("reportPeriksa") }}',
};
var dataAdapter = new $.jqx.dataAdapter(source);
$('#divlaporan').hide();
$('#divlaporanharian').show();
var editrowjabatan = -1;
$("#resultharian").jqxGrid({
width : '100%',
enablebrowserselection : true,
filterable : true,
autoheight : true,
showfilterrow : true,
altrows : true,
source : dataAdapter,
pageable : true,
theme : "energyblue",
columnsresize : true,
selectionmode : 'multiplecellsextended',
columns : [
{ text: 'File Report', editable: false, sortable: false, filterable: false, datafield: 'filefoto', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'No.Loket', datafield: 'noloket', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'No.RM', datafield: 'noregister', width: 70, align: 'center', cellsalign: 'left'},
{ text: 'Nama', datafield: 'nmpasien', width: 160, cellsalign: 'left', align: 'center' },
{ text: 'No.HP', datafield: 'tlppasien', width: 100, cellsalign: 'left', align: 'center' },
{ text: 'Umur', datafield: 'usia', width: 70, cellsalign: 'left', align: 'center' },
{ text: 'M', editable: false, sortable: false, filterable: false, datafield: 'l', width: 20, cellsalign: 'left', align: 'center' },
{ text: 'F', editable: false, sortable: false, filterable: false, datafield: 'p', width: 20, cellsalign: 'left', align: 'center' },
{ text: 'Order', editable: false, sortable: false, filterable: false, datafield: 'jenis', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'JKN', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'jkn', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'UMM', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'umm', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'TAG', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'tag', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'GCU', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'gcu', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'Billing', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'billing', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'SWASTA', editable: false, sortable: false, filterable: false, columngroup: 'asuransi', datafield: 'swasta', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'Elective', editable: false, sortable: false, filterable: false, columngroup: 'urgensi', datafield: 'ele', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'CITO', editable: false, sortable: false, filterable: false, columngroup: 'urgensi', datafield: 'cito', width: 40, cellsalign: 'left', align: 'center' },
{ text: 'Sample Masuk', columngroup: 'waktu', datafield: 'daftar', width: 160, cellsalign: 'left', align: 'center' },
{ text: 'Draft By', columngroup: 'waktu', datafield: 'nmdrafter', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Tgl. Draft', columngroup: 'waktu', datafield: 'tgldraft', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'Expertise By', columngroup: 'waktu', datafield: 'nmpembaca', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Supervisor', columngroup: 'waktu', datafield: 'nmdokter', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Verifikasi', columngroup: 'waktu', datafield: 'verifikasi', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'Cetak', columngroup: 'waktu', datafield: 'export', width: 80, cellsalign: 'left', align: 'center' },
{ text: 'Asal Pasien', datafield: 'asalpasien', width: 100, cellsalign: 'left', align: 'center' },
{ text: 'Asal RS', datafield: 'nmrs', width: 100, cellsalign: 'left', align: 'center' },
{ text: 'Klinisi', datafield: 'klinisi', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Klinis', datafield: 'klinis', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Analis', datafield: 'nmanalis', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'PPDS', datafield: 'nmppdssenior', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Device', datafield: 'modality', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Code', datafield: 'kd_spesimen', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Speciment', datafield: 'nm_spesimen', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Template', datafield: 'dlp', width: 150, cellsalign: 'left', align: 'center' },
{ text: 'Duration', editable: false, sortable: false, filterable: false, datafield: 'durasi', width: 100, cellsalign: 'left', align: 'center' },
],
columngroups:
[
{ text: 'Riwayat Tindakan', align: 'center', name: 'waktu' },
{ text: 'Urgensi', align: 'center', name: 'urgensi' },
{ text: 'Insurance', align: 'center', name: 'asuransi' }
]
});
if (bulan == '' || tahun == ''){
swal({
title : 'Mohon diLengkapi',
text : 'Data Dasar Bulan dan Tahun Wajib di Isi',
type : 'error',
});
} else {
var url = '{{url('/')}}/tatreport?bulan='+bulan+'?tahun='+tahun;
window.location.href = url;
}
});
$('#downexcell').click(function(){
var gridContent = $("#result").jqxGrid('exportdata', 'json');
@@ -1,59 +0,0 @@
@extends('base.layout')
@section('content')
<div class="wrapper">
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
<div class="card-box ribbon-box">
<div class="ribbon ribbon-danger">Rekapitulasi Data Bulan {{$bulan}} Tahun {{$tahun}}</div>
<p></p>
<div class="table-responsive">
<button type="button" class="btn btn-primary" id="btnexport"><i class="fa fa-print"></i> Export</button>
<table cellpadding="10" cellspacing="0" id="znreporttable" class="table table-striped table-bordered">
<thead>
<tr>
<th>Komponen</th>
<th>Jumlah</th>
</tr>
</thead>
<tbody>
@forelse ($results as $row)
<tr>
<td>{{ $row->komponen }}</td>
<td>{{ $row->jumlah }}</td>
</tr>
@empty
<tr>
<td colspan="2">Tidak ada data dalam rentang tanggal tersebut.</td>
</tr>
@endforelse
</tbody>
</table>
</div>
<div class="card-footer">
</div>
</div>
</div>
</div>
</div>
</div>
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
@endsection
@push('script')
<!-- SIGNATURE PAD -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.17.0/xlsx.full.min.js"></script>
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', function() {
document.getElementById('btnexport').addEventListener('click', function() {
var table = document.getElementById('znreporttable');
if (table) {
var wb = XLSX.utils.table_to_book(table, { sheet: "Report" });
XLSX.writeFile(wb, "GlassReport_{{$bulan}}_Tahun{{$tahun}}.xlsx");
} else {
console.error('Tabel dengan ID "tblkeaktifankelas" tidak ditemukan.');
}
});
});
</script>
@endpush
@@ -329,6 +329,8 @@
$sudahcetak2= 0;
$sudahcetak3= 0;
$namakuman = '';
$namakuman1 = '';
$namakuman2 = '';
@endphp
@if (isset($antibiotiks) && $antibiotiks->isNotEmpty())
@@ -346,11 +348,11 @@
}
if (isset($data['id_bakteri01']) AND $namakuman != $data['id_bakteri01']) {
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['id_bakteri01'] . "</i></strong> " . ($data['id_bakterisir01'] ?? '') . "</p>";
$namakuman = $data['id_bakteri01'];
$namakuman1 = $data['id_bakteri01'];
}
if (isset($data['id_bakteri02']) AND $namakuman != $data['id_bakteri02']) {
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['id_bakteri02'] . "</i></strong> " . ($data['id_bakterisir02'] ?? '') . "</p>";
$namakuman = $data['id_bakteri01'];
$namakuman2 = $data['id_bakteri01'];
}
}
@endphp
@@ -366,13 +368,12 @@
<p>Jumlah Koloni : <strong><i>{{ $data['id_bakterihitungkol'] }}</i></strong></p>
@endif
@php
$sudahcetak1 = 1;
$sudahcetak1= 1;
$cetakjudul = true;
$namakuman = $data['bakteri'];
@endphp
@endif
@endif
@endif
@if (isset($data['id_bakteri01']) AND $data['id_bakteri01'] == $kuman)
@if ($sudahcetak2 == 0)
@@ -383,9 +384,9 @@
<p>Jumlah Koloni : <strong><i>{{ $data['id_bakterihitungkol01'] }}</i></strong></p>
@endif
@php
$sudahcetak2 = 1;
$sudahcetak2= 1;
$cetakjudul = true;
$namakuman = $data['id_bakteri01'];
$namakuman1 = $data['id_bakteri01'];
@endphp
@endif
@endif
@@ -400,7 +401,7 @@
@php
$sudahcetak3 = 1;
$cetakjudul = true;
$namakuman = $data['id_bakteri02'];
$namakuman2 = $data['id_bakteri02'];
@endphp
@endif
@endif
@@ -455,26 +456,36 @@
</table>
@endif
@endforeach
@php
if ($namakuman == ''){
if (isset($data['bakteri'])) {
if (isset($data['id_baktericetak']) AND $data['id_baktericetak'] == 'TIDAK') {
} else {
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['bakteri'] . "</i></strong> " . ($data['bakterisir'] ?? '') . "</p>";
$namakuman = $data['bakteri'];
}
}
if (isset($data['id_bakteri01']) AND $namakuman != $data['id_bakteri01']) {
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['id_bakteri01'] . "</i></strong> " . ($data['id_bakterisir01'] ?? '') . "</p>";
$namakuman = $data['id_bakteri01'];
}
if (isset($data['id_bakteri02']) AND $namakuman != $data['id_bakteri02']) {
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['id_bakteri02'] . "</i></strong> " . ($data['id_bakterisir02'] ?? '') . "</p>";
$namakuman = $data['id_bakteri01'];
}
}
@endphp
@endif
@php
if (isset($data['bakteri']) AND $namakuman == '') {
if (isset($data['id_baktericetak']) AND $data['id_baktericetak'] == 'TIDAK') {
} else {
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['bakteri'] . "</i></strong> " . ($data['bakterisir'] ?? '') . "</p>";
if (isset($data['id_bakterihitungkolteks'])){
echo "<p>Jumlah Koloni : <strong><i>".$data['id_bakterihitungkolteks']."</i></strong></p>";
} elseif (isset($data['id_bakterihitungkol'])){
echo "<p>Jumlah Koloni : <strong><i>".$data['id_bakterihitungkol']."</i></strong></p>";
}
}
}
if (isset($data['id_bakteri01']) AND $namakuman1 == '') {
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['id_bakteri01'] . "</i></strong> " . ($data['id_bakterisir01'] ?? '') . "</p>";
if (isset($data['id_bakterihitungkolteks01'])){
echo "<p>Jumlah Koloni : <strong><i>".$data['id_bakterihitungkolteks01']."</i></strong></p>";
} elseif (isset($data['id_bakterihitungkol01'])){
echo "<p>Jumlah Koloni : <strong><i>".$data['id_bakterihitungkol01']."</i></strong></p>";
}
}
if (isset($data['id_bakteri02']) AND $namakuman2 == ''){
echo "<p>Bakteri Yang ditemukan : <strong><i>" . $data['id_bakteri02'] . "</i></strong> " . ($data['id_bakterisir02'] ?? '') . "</p>";
if (isset($data['id_bakterihitungkolteks02'])){
echo "<p>Jumlah Koloni : <strong><i>".$data['id_bakterihitungkolteks02']."</i></strong></p>";
} elseif (isset($data['id_bakterihitungkol02'])){
echo "<p>Jumlah Koloni : <strong><i>".$data['id_bakterihitungkol02']."</i></strong></p>";
}
}
@endphp
@if (isset($data['keterangan']))
<br />Komentar:<br />
{!! $data['keterangan'] !!}
@@ -1458,7 +1458,7 @@
<td class=xl64>:</td>
<td colspan=9 class=xl98 style='border-right:.5pt solid black'>&nbsp;</td>
<td class=xl64>&nbsp;</td>
<td colspan=16 class=xl150>Alasan Pemeriksaan :</td>
<td colspan=16 class=xl150>Alasan Pemeriksaan : {{$data['id_alasanpemeriksaan'] ?? ''}}</td>
<td class=xl121>&nbsp;</td>
<td class=xl84>&nbsp;</td>
</tr>
@@ -2005,7 +2005,7 @@
<td class=xl87>Dahak</td>
<td class=xl64>&nbsp;</td>
<td class=xl64>&nbsp;</td>
<td colspan=8 class=xl82>Sewaktu / Pagi</td>
<td colspan=8 class=xl82>Sewaktu</td>
<td class=xl87>&nbsp;</td>
<td class=xl88>&nbsp;</td>
<td colspan=5 class=xl95 style='border-right:.5pt solid black'>
@@ -2086,7 +2086,7 @@
<td class=xl87>Lainnya : {!! $data['id_contohujilainnya'] ?? '' !!}</td>
<td class=xl64>&nbsp;</td>
<td class=xl64>&nbsp;</td>
<td colspan=8 class=xl82>Sewaktu / Pagi</td>
<td colspan=8 class=xl82>Pagi</td>
<td class=xl87>&nbsp;</td>
<td class=xl88>&nbsp;</td>
<td colspan=5 class=xl95 style='border-right:.5pt solid black'>
@@ -2600,7 +2600,7 @@
<td class=xl64 style='height:16.0pt'>&nbsp;</td>
<td class=xl102>&nbsp;</td>
<td class=xl77>{!! $data['hasilpemeriksaantbbiakan_mikroskopisswaktu'] ?? '' !!}</td>
<td class=xl87>Sewaktu / Pagi</td>
<td class=xl87>Sewaktu</td>
<td class=xl116>&nbsp;</td>
<td class=xl116>&nbsp;</td>
<td colspan=3 class=xl126 style='border-right:.5pt solid black'>
@@ -1458,7 +1458,7 @@
<td class=xl64>:</td>
<td colspan=9 class=xl98 style='border-right:.5pt solid black'>&nbsp;</td>
<td class=xl64>&nbsp;</td>
<td colspan=16 class=xl150>Alasan Pemeriksaan :</td>
<td colspan=16 class=xl150>Alasan Pemeriksaan : {{$data['id_alasanpemeriksaan'] ?? ''}}</td>
<td class=xl121>&nbsp;</td>
<td class=xl84>&nbsp;</td>
</tr>
@@ -2005,7 +2005,7 @@
<td class=xl87>Dahak</td>
<td class=xl64>&nbsp;</td>
<td class=xl64>&nbsp;</td>
<td colspan=8 class=xl82>Sewaktu / Pagi</td>
<td colspan=8 class=xl82>Sewaktu</td>
<td class=xl87>&nbsp;</td>
<td class=xl88>&nbsp;</td>
<td colspan=5 class=xl95 style='border-right:.5pt solid black'>
@@ -2086,7 +2086,7 @@
<td class=xl87>Lainnya : {!! $data['id_contohujilainnya'] ?? '' !!}</td>
<td class=xl64>&nbsp;</td>
<td class=xl64>&nbsp;</td>
<td colspan=8 class=xl82>Sewaktu / Pagi</td>
<td colspan=8 class=xl82>Pagi</td>
<td class=xl87>&nbsp;</td>
<td class=xl88>&nbsp;</td>
<td colspan=5 class=xl95 style='border-right:.5pt solid black'>
@@ -1109,7 +1109,7 @@
</td>
<td class=xl73>Dahak</td>
<td>&nbsp;</td>
<td colspan=5 class=xl68>Sewaktu / Pagi</td>
<td colspan=5 class=xl68>Sewaktu</td>
<td colspan=2 style='mso-ignore:colspan'>&nbsp;</td>
<td colspan=3 class=xl99 style='border-right:.5pt solid black'>
@if (isset($data['inlineCheckbox6']) && $data['inlineCheckbox6'] != '')
@@ -1138,7 +1138,7 @@
<tr style='height:16.0pt'>
<td style='height:16.0pt'>&nbsp;</td>
<td class=xl64 style='border-top:none'>
@if (isset($data['id_contohuji']) && $data['id_contohuji'] != 'Dahak')
@if (isset($data['id_contohuji']) && $data['id_contohuji'] == 'Lainnya')
&#8730;
@else
&nbsp;
@@ -1146,7 +1146,7 @@
</td>
<td class=xl71>Lainnya : {!! $data['id_contohujilainnya'] ?? '' !!}</td>
<td>&nbsp;</td>
<td colspan=5 class=xl104>Sewaktu / Pagi</td>
<td colspan=5 class=xl104>Pagi</td>
<td class=xl70>&nbsp;</td>
<td class=xl70>&nbsp;</td>
<td colspan=3 class=xl99 style='border-right:.5pt solid black'>
@@ -795,7 +795,7 @@
<td>:</td>
<td colspan=4 class=xl65 style='border-right:.5pt solid black'>&nbsp;</td>
<td>&nbsp;</td>
<td colspan=10 class=xl75>Alasan Pemeriksaan :</td>
<td colspan=10 class=xl75>Alasan Pemeriksaan : {{$data['id_alasanpemeriksaan'] ?? '' }}</td>
<td class=xl72>&nbsp;</td>
</tr>
@php
@@ -1108,7 +1108,7 @@
</td>
<td class=xl73>Dahak</td>
<td>&nbsp;</td>
<td colspan=5 class=xl68>Sewaktu / Pagi</td>
<td colspan=5 class=xl68>Sewaktu</td>
<td colspan=2 style='mso-ignore:colspan'>&nbsp;</td>
<td colspan=3 class=xl99 style='border-right:.5pt solid black'>
@if (isset($data['inlineCheckbox6']) && $data['inlineCheckbox6'] != '')
@@ -1145,7 +1145,7 @@
</td>
<td class=xl71>Lainnya : {!! $data['id_contohujilainnya'] ?? '' !!}</td>
<td>&nbsp;</td>
<td colspan=5 class=xl104>Sewaktu / Pagi</td>
<td colspan=5 class=xl104>Pagi</td>
<td class=xl70>&nbsp;</td>
<td class=xl70>&nbsp;</td>
<td colspan=3 class=xl99 style='border-right:.5pt solid black'>
@@ -1223,21 +1223,36 @@
<td colspan=5 rowspan=4 class=xl91 style='border-right:.5pt solid black'>{{$data['hasilpemeriksaanttcmmtbxdrxpert_tglpagi'] ?? ''}}</td>
<td colspan=4 rowspan=4 class=xl91 style='border-right:.5pt solid black'><img src="{!! route('generate.barcode', ['data' => $data['hasilpemeriksaanttcmmtbxdrxpert_kodeunikpagi'] ?? $periksa->nofoto]) !!}" alt="Barcode" style="max-width: 100%; height: auto;"</td>
<td>&nbsp;</td>
<td class=xl80>Neg</td>
<td class=xl80>MTB</td>
<td class=xl80>H Low</td>
<td class=xl80>H</td>
<td colspan=2 class=xl80>FQ Low</td>
<td colspan=2 class=xl80>FQ</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>Invalid</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>FQ</td>
<td colspan=2 class=xl80>&nbsp;</td>
</tr>
@php
$hasiltcmxdrpagi = $data['hasilpemeriksaanttcmmtbxdrxpert_pagi'] ?? '';
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_pagineg']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_pagineg'] != ''){
$hasiltcmxdrpagi = $data['hasilpemeriksaanttcmmtbxdrxpert_pagineg'];
}
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_pagiinvalid']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_pagiinvalid'] != ''){
$hasiltcmxdrpagi = $data['hasilpemeriksaanttcmmtbxdrxpert_pagiinvalid'];
}
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_pagierror']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_pagierror'] != ''){
$hasiltcmxdrpagi = $data['hasilpemeriksaanttcmmtbxdrxpert_pagierror'];
}
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_paginoresult']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_paginoresult'] != ''){
$hasiltcmxdrpagi = $data['hasilpemeriksaanttcmmtbxdrxpert_paginoresult'];
}
@endphp
<tr style='height:16.0pt'>
<td style='height:16.0pt'>&nbsp;</td>
<td class=xl64>{!! $data['hasilpemeriksaanttcmmtbxdrxpert_pagi'] ?? ''!!}</td>
<td class=xl64>{!! $hasiltcmxdrpagi !!}</td>
<td class=xl73>Pagi</td>
<td>&nbsp;</td>
<td class=xl79>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_pagineg'] ?? '&nbsp;'!!}
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_pagimtb'] ?? '&nbsp;'!!}
</td>
<td class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_paginhlow'] ?? '&nbsp;'!!}
@@ -1252,7 +1267,7 @@
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_pagifq'] ?? '&nbsp;'!!}
</td>
<td colspan=2 class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_pagiinvalid'] ?? '&nbsp;'!!}
&nbsp;
</td>
</tr>
<tr style='height:16.0pt'>
@@ -1262,9 +1277,9 @@
<td class=xl80>Amk</td>
<td class=xl80>Km</td>
<td class=xl80>Cm</td>
<td colspan=2 class=xl80>Eto</td>
<td colspan=2 class=xl80>Error</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>No Result</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>Eto</td>
<td colspan=2 class=xl80>&nbsp;</td>
<td colspan=2 class=xl80>&nbsp;</td>
</tr>
<tr style='height:16.0pt'>
<td style='height:16.0pt'>&nbsp;</td>
@@ -1282,10 +1297,10 @@
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_pagieto'] ?? '&nbsp;'!!}
</td>
<td colspan=2 class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_pagierror'] ?? '&nbsp;'!!}
&nbsp;
</td>
<td colspan=2 class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_paginoresult'] ?? '&nbsp;'!!}
&nbsp;
</td>
</tr>
<tr style='height:16.0pt'>
@@ -1312,26 +1327,41 @@
<td class=xl70>&nbsp;</td>
<td class=xl71>&nbsp;</td>
</tr>
@php
$hasiltcmxdrswaktu = $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktu'] ?? '';
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuneg']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuneg'] != ''){
$hasiltcmxdrswaktu = $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuneg'];
}
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuinvalid']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuinvalid'] != ''){
$hasiltcmxdrswaktu = $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuinvalid'];
}
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuerror']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuerror'] != ''){
$hasiltcmxdrswaktu = $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuerror'];
}
if (isset($data['hasilpemeriksaanttcmmtbxdrxpert_sewaktunoresult']) AND $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktunoresult'] != ''){
$hasiltcmxdrswaktu = $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktunoresult'];
}
@endphp
<tr style='height:16.0pt'>
<td style='height:16.0pt'>&nbsp;</td>
<td colspan=2 class=xl85 style='border-right:.5pt solid black'>&nbsp;</td>
<td colspan=5 rowspan=4 class=xl87 style='border-right:.5pt solid black'>{!! $data['hasilpemeriksaanttcmmtbxdrxpert_tglsewaktu'] ?? '' !!}</td>
<td colspan=5 rowspan=4 class=xl87 style='border-right:.5pt solid black'>{{$data['hasilpemeriksaanttcmmtbxdrxpert_tglsewaktu'] ?? ''}}</td>
<td colspan=4 rowspan=4 class=xl87 style='border-right:.5pt solid black'><img src="{!! route('generate.barcode', ['data' => $data['hasilpemeriksaanttcmmtbxdrxpert_kodeunik'] ?? $periksa->nofoto]) !!}" alt="Barcode" style="max-width: 100%; height: auto;"</td>
<td>&nbsp;</td>
<td class=xl80>Neg</td>
<td class=xl80>MTB</td>
<td class=xl80>H Low</td>
<td class=xl80>H</td>
<td colspan=2 class=xl80>FQ Low</td>
<td colspan=2 class=xl80>FQ</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>Invalid</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>FQ</td>
<td colspan=2 class=xl80>&nbsp;</td>
</tr>
<tr style='height:16.0pt'>
<td style='height:16.0pt'>&nbsp;</td>
<td class=xl64>{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktu'] ?? '' !!}</td>
<td class=xl73>Sewaktu / Pagi</td>
<td class=xl64>{!! $hasiltcmxdrswaktu !!}</td>
<td class=xl73>Sewaktu</td>
<td>&nbsp;</td>
<td class=xl79>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuneg'] ?? '&nbsp;'!!}
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktu'] ?? '&nbsp;'!!}
</td>
<td class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktunhlow'] ?? '&nbsp;'!!}
@@ -1346,7 +1376,7 @@
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktufq'] ?? '&nbsp;'!!}
</td>
<td colspan=2 class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuinvalid'] ?? '&nbsp;'!!}
&nbsp;
</td>
</tr>
<tr style='height:16.0pt'>
@@ -1356,9 +1386,9 @@
<td class=xl80>Amk</td>
<td class=xl80>Km</td>
<td class=xl80>Cm</td>
<td colspan=2 class=xl80>Eto</td>
<td colspan=2 class=xl80>Error</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>No Result</td>
<td colspan=2 class=xl80 style='border-right:.5pt solid black'>Eto</td>
<td colspan=2 class=xl80>&nbsp;</td>
<td colspan=2 class=xl80>&nbsp;</td>
</tr>
<tr style='height:16.0pt'>
<td style='height:16.0pt'>&nbsp;</td>
@@ -1376,10 +1406,10 @@
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktueto'] ?? '&nbsp;'!!}
</td>
<td colspan=2 class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktuerror'] ?? '&nbsp;'!!}
&nbsp;
</td>
<td colspan=2 class=xl79 style='border-left:none'>
{!! $data['hasilpemeriksaanttcmmtbxdrxpert_sewaktunoresult'] ?? '&nbsp;'!!}
&nbsp;
</td>
</tr>
<tr style='height:16.0pt'>
@@ -0,0 +1,105 @@
@extends('base.layout')
@section('content')
<div class="wrapper">
<div class="container-fluid">
<div class="row">
<div class="col-sm-7">
<div class="card-box ribbon-box">
<div class="ribbon ribbon-danger">Rekapitulasi TAT Data Bulan {{$bulan}} Tahun {{$tahun}}</div>
<p></p>
<div class="table-responsive">
<button type="button" class="btn btn-primary" id="btnexport"><i class="fa fa-print"></i> Export</button>
<table class="table table-bordered table-striped" id="tattablereport">
<thead>
<tr>
<th>Jenis Pemeriksaan</th>
<th>Memenuhi Target</th>
<th>Tidak Memenuhi Target</th>
<th>Tidak Ada Hasil</th>
<th>Jumlah</th>
</tr>
</thead>
<tbody>
@foreach($rekap as $r)
<tr>
<td>{{ $r['jenis_pemeriksaan'] }}</td>
<td class="text-success fw-bold">{{ $r['memenuhi'] }}</td>
<td class="text-danger fw-bold">{{ $r['tidak_memenuhi'] }}</td>
<td class="text-warning fw-bold">{{ $r['tidak_ada_hasil'] }}</td>
<td class="fw-bold">{{ $r['total'] }}</td>
</tr>
@endforeach
</tbody>
<tfoot>
<tr class="fw-bold">
<td>Total Keseluruhan</td>
<td>{{ $rekap->sum('memenuhi') }}</td>
<td>{{ $rekap->sum('tidak_memenuhi') }}</td>
<td>{{ $rekap->sum('tidak_ada_hasil') }}</td>
<td>{{ $rekap->sum('total') }}</td>
</tr>
</tfoot>
</table>
</div>
<div class="card-footer">
</div>
</div>
</div>
<div class="col-sm-5">
<div class="card-box ribbon-box">
<div class="ribbon ribbon-info">Grafik TAT Data Bulan {{$bulan}} Tahun {{$tahun}}</div>
<p></p>
<div class="card-body">
<canvas id="pieChart" height="100"></canvas>
</div>
</div>
</div>
</div>
</div>
</div>
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
@endsection
@push('script')
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.17.0/xlsx.full.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function() {
const totalMemenuhi = {{ $rekap->sum('memenuhi') }};
const totalTidak = {{ $rekap->sum('tidak_memenuhi') }};
const totalTidakAda = {{ $rekap->sum('tidak_ada_hasil') }};
const ctxPie = document.getElementById('pieChart').getContext('2d');
new Chart(ctxPie, {
type: 'pie',
data: {
labels: [
'Memenuhi Target',
'Tidak Memenuhi Target',
'Tidak Ada Hasil'
],
datasets: [{
data: [totalMemenuhi, totalTidak, totalTidakAda],
backgroundColor: [
'rgba(46, 204, 113, 0.8)', // hijau
'rgba(231, 76, 60, 0.8)', // merah
'rgba(241, 196, 15, 0.8)' // kuning
]
}]
}
});
document.getElementById('btnexport').addEventListener('click', function() {
var table = document.getElementById('tattablereport');
if (table) {
var wb = XLSX.utils.table_to_book(table, { sheet: "Report" });
XLSX.writeFile(wb, "TAT_{{$bulan}}_Tahun{{$tahun}}.xlsx");
} else {
console.error('Tabel dengan ID "tattablereport" tidak ditemukan.');
}
});
});
</script>
@endpush
@@ -0,0 +1,144 @@
@extends('base.layout')
@section('content')
<style>
table {
margin-bottom: 30px;
}
</style>
<div class="wrapper">
<div class="container-fluid">
<div class="row">
<div class="col-sm-6">
<div class="card-box ribbon-box">
<div class="ribbon ribbon-primary">Rekapitulasi Data Ziehl Laki-Laki Bulan {{$bulan}} Tahun {{$tahun}}</div>
<p></p>
<div class="table-responsive">
<button type="button" class="btn btn-primary" id="btnexport"><i class="fa fa-print"></i> Export</button>
<table cellpadding="0" cellspacing="0" id="znreporttable" class="table table-striped table-bordered">
<thead>
<tr>
<th>Nilai</th>
@foreach($kdSpesimenList as $sp)
<th>{{ $sp }}</th>
@endforeach
</tr>
</thead>
<tbody>
@foreach($nilaiList as $nilai)
<tr>
<td>{{ $nilai }}</td>
@foreach($kdSpesimenList as $sp)
<td>{{ $rekapLaki[$nilai][$sp] }}</td>
@endforeach
</tr>
@endforeach
</tbody>
</table>
</div>
<div class="card-footer">
</div>
</div>
</div>
<div class="col-sm-6">
<div class="card-box ribbon-box">
<div class="ribbon ribbon-danger">Rekapitulasi Data Ziehl Perempuan Bulan {{$bulan}} Tahun {{$tahun}}</div>
<p></p>
<div class="table-responsive">
<button type="button" class="btn btn-primary" id="btnexportperempuan"><i class="fa fa-print"></i> Export</button>
<table cellpadding="0" cellspacing="0" id="znreporttableperempuan" class="table table-striped table-bordered">
<thead>
<tr>
<th>Nilai</th>
@foreach($kdSpesimenList as $sp)
<th>{{ $sp }}</th>
@endforeach
</tr>
</thead>
<tbody>
@foreach($nilaiList as $nilai)
<tr>
<td>{{ $nilai }}</td>
@foreach($kdSpesimenList as $sp)
<td>{{ $rekapPerempuan[$nilai][$sp] }}</td>
@endforeach
</tr>
@endforeach
</tbody>
</table>
</div>
<div class="card-footer">
</div>
</div>
</div>
<div class="col-sm-12">
<div class="card-box ribbon-box">
<div class="ribbon ribbon-danger">Diagram Batang Bulan {{$bulan}} Tahun {{$tahun}}</div>
<p></p>
<div class="card-body">
<canvas id="chartZiehl" height="100"></canvas>
</div>
</div>
</div>
</div>
</div>
</div>
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
@endsection
@push('script')
<script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.17.0/xlsx.full.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', function() {
document.getElementById('btnexport').addEventListener('click', function() {
var table = document.getElementById('znreporttable');
if (table) {
var wb = XLSX.utils.table_to_book(table, { sheet: "Report" });
XLSX.writeFile(wb, "ziehlnielsenlakilaki_{{$bulan}}_Tahun{{$tahun}}.xlsx");
} else {
console.error('Tabel dengan ID "znreporttable" tidak ditemukan.');
}
});
document.getElementById('btnexportperempuan').addEventListener('click', function() {
var table = document.getElementById('znreporttableperempuan');
if (table) {
var wb = XLSX.utils.table_to_book(table, { sheet: "Report" });
XLSX.writeFile(wb, "ziehlnielsenperempuan_{{$bulan}}_Tahun{{$tahun}}.xlsx");
} else {
console.error('Tabel dengan ID "znreporttableperempuan" tidak ditemukan.');
}
});
});
var ctx = document.getElementById('chartZiehl').getContext('2d');
var chart = new Chart(ctx, {
type: 'bar',
data: {
labels: @json($nilaiList),
datasets: [
{
label: 'Laki-Laki',
data: @json($chartL),
backgroundColor: 'rgba(54, 162, 235, 0.7)'
},
{
label: 'Perempuan',
data: @json($chartP),
backgroundColor: 'rgba(255, 99, 132, 0.7)'
}
]
},
options: {
responsive: true,
scales: {
y: {
beginAtZero: true,
title: {
display: true,
text: 'Jumlah Pasien'
}
}
}
}
});
</script>
@endpush
File diff suppressed because it is too large Load Diff
@@ -1329,19 +1329,27 @@
<div class="form-row">
<div class="form-group col-lg-6">
<div class="form-row">
<div class="form-group col-lg-8">Neg</div>
<div class="form-group col-lg-8">TCM XDR</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_pagineg" name="hasilpemeriksaanttcmmtbxdrxpert_pagineg">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_pagi" name="hasilpemeriksaanttcmmtbxdrxpert_pagi">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Negatif">Negatif</option>
<option value="Valid">Valid</option>
<option value="Invalid">Invalid</option>
<option value="No Result">No Result</option>
<option value="Error">Error</option>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">MTB</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_pagimtb" name="hasilpemeriksaanttcmmtbxdrxpert_pagimtb">
<option value=""></option>
<option value="D">MTB Detected (D)</option>
<option value="ND">MTB Not Detected (ND)</option>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">H Low</div>
<div class="form-group col-lg-4">
@@ -1394,21 +1402,9 @@
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">Invalid</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_pagiinvalid" name="hasilpemeriksaanttcmmtbxdrxpert_pagiinvalid">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Invalid">Invalid</option>
<option value="Error">Error</option>
</select>
</div>
</div>
</div>
<div class="form-group col-lg-6">
<div class="form-row">
<div class="form-group col-lg-8">Amk</div>
<div class="form-group col-lg-4">
@@ -1461,33 +1457,6 @@
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">Error</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_pagierror" name="hasilpemeriksaanttcmmtbxdrxpert_pagierror">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Invalid">Invalid</option>
<option value="Error">Error</option>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">No Result</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_paginoresult" name="hasilpemeriksaanttcmmtbxdrxpert_paginoresult">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Invalid">Invalid</option>
<option value="Error">Error</option>
<option value="No Result">No Result</option>
</select>
</div>
</div>
</div>
</div>
</div>
@@ -1512,16 +1481,24 @@
<div class="form-row">
<div class="form-group col-lg-6">
<div class="form-row">
<div class="form-group col-lg-8">Neg</div>
<div class="form-group col-lg-8">TCM XDR</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_sewaktuneg" name="hasilpemeriksaanttcmmtbxdrxpert_sewaktuneg">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_sewaktu" name="hasilpemeriksaanttcmmtbxdrxpert_sewaktu">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Valid">Valid</option>
<option value="Invalid">Invalid</option>
<option value="Error">Error</option>
<option value="No Result">No Result</option>
<option value="Error">Error</option>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">MTB</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_sewaktumtb" name="hasilpemeriksaanttcmmtbxdrxpert_sewaktumtb">
<option value=""></option>
<option value="D">MTB Detected (D)</option>
<option value="ND">MTB Not Detected (ND)</option>
</select>
</div>
</div>
@@ -1581,20 +1558,6 @@
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">Invalid</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_sewaktuinvalid" name="hasilpemeriksaanttcmmtbxdrxpert_sewaktuinvalid">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Invalid">Invalid</option>
<option value="Error">Error</option>
<option value="No Result">No Result</option>
</select>
</div>
</div>
</div>
<div class="form-group col-lg-6">
<div class="form-row">
@@ -1653,34 +1616,6 @@
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">Error</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_sewaktuerror" name="hasilpemeriksaanttcmmtbxdrxpert_sewaktuerror">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Invalid">Invalid</option>
<option value="Error">Error</option>
<option value="No Result">No Result</option>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-lg-8">No Result</div>
<div class="form-group col-lg-4">
<select class="form-control ekspertiseseletc" id="hasilpemeriksaanttcmmtbxdrxpert_sewaktunoresult" name="hasilpemeriksaanttcmmtbxdrxpert_sewaktunoresult">
<option value=""></option>
<option value="S">S</option>
<option value="I">I</option>
<option value="R">R</option>
<option value="Invalid">Invalid</option>
<option value="Error">Error</option>
<option value="No Result">No Result</option>
</select>
</div>
</div>
</div>
</div>
</div>
@@ -2357,50 +2292,64 @@
<input type="text" id="id_mediasda" name="id_mediasda" class="form-control ekspertiseteks">
</div>
<div class="form-group">
<label for="sda_pemeriksaanhemolisa" class="col-form-label">Hemolisa</label>
<label for="sda_pemeriksaanhemolisa" class="col-form-label">Inkubasi suhu ruang 1 (R1)</label>
<select class="form-control ekspertiseseletc" id="sda_pemeriksaanhemolisa" name="sda_pemeriksaanhemolisa">
<option value="">Pilih Salah Satu</option>
<option value="&#646; hemolisa">&#646; hemolisa</option>
<option value="&#946; hemolisa">&#946; hemolisa</option>
<option value="S">S: steril (tidak ada pertumbuhan)</option>
<option value="B">B: Bakteri</option>
<option value="Y">Y: Yeast</option>
<option value="M">M: Mold</option>
</select>
</div>
<div class="form-group">
<label for="sda_pemeriksaankatalase" class="col-form-label">Katalase</label>
<label for="sda_pemeriksaankatalase" class="col-form-label">Inkubasi suhu ruang 2 (R2)</label>
<select class="form-control ekspertiseseletc" id="sda_pemeriksaankatalase" name="sda_pemeriksaankatalase">
<option value="">Pilih Salah Satu</option>
<option value="Katalase +">Katalase +</option>
<option value="Katalase -">Katalase -</option>
<option value="S">S: steril (tidak ada pertumbuhan)</option>
<option value="B">B: Bakteri</option>
<option value="Y">Y: Yeast</option>
<option value="M">M: Mold</option>
</select>
</div>
<div class="form-group">
<label for="sda_pemeriksaankabulase" class="col-form-label">Koagulase</label>
<label for="sda_pemeriksaankabulase" class="col-form-label">Inkubasi suhu inkubator 1 (I1)</label>
<select class="form-control ekspertiseseletc" id="sda_pemeriksaankabulase" name="sda_pemeriksaankabulase">
<option value="">Pilih Salah Satu</option>
<option value="Koagulase +">Koagulase +</option>
<option value="Koagulase -">Koagulase -</option>
<option value="S">S: steril (tidak ada pertumbuhan)</option>
<option value="B">B: Bakteri</option>
<option value="Y">Y: Yeast</option>
<option value="M">M: Mold</option>
</select>
</div>
<div class="form-group">
<label for="id_ujioksidasesda" class="col-form-label">Oksidase</label>
<input type="text" id="id_ujioksidasesda" name="id_ujioksidasesda" class="form-control ekspertiseteks">
<label for="id_ujioksidasesda" class="col-form-label">Inkubasi suhu inkubator 2 (I2)</label>
<select class="form-control ekspertiseseletc" id="id_ujioksidasesda" name="id_ujioksidasesda">
<option value="">Pilih Salah Satu</option>
<option value="S">S: steril (tidak ada pertumbuhan)</option>
<option value="B">B: Bakteri</option>
<option value="Y">Y: Yeast</option>
<option value="M">M: Mold</option>
</select>
</div>
<div class="form-group">
<label for="id_ujialainnyasda" class="col-form-label">Uji Lainnya</label>
<input type="text" id="id_ujialainnyasda" name="id_ujialainnyasda" class="form-control ekspertiseteks">
<label for="id_ujialainnyasda" class="col-form-label">Tumbuh di Area Inokulasi</label>
<select class="form-control ekspertiseseletc" id="id_ujialainnyasda" name="id_ujialainnyasda">
<option value="">Pilih Salah Satu</option>
<option value="YA">YA</option>
<option value="TIDAK">TIDAK</option>
</select>
</div>
<div class="form-group">
<label for="id_statusmediasda" class="col-form-label">Status</label>
<select class="form-control ekspertiseseletc" id="id_statusmediasda" name="id_statusmediasda">
<option value="">Pilih Salah Satu</option>
<option value="Inkubasi Lanjutan">Inkubasi Lanjutan</option>
<option value="Sub Kultur">Sub Kultur</option>
<option value="Proses Vitek">Proses Vitek</option>
<option value="Proses Manual">Proses Manual</option>
<option value="Proses Malditof">Proses Malditof</option>
<option value="Tidak Lanjut Identifikasi">Tidak Lanjut Identifikasi</option>
<option value="PATOGEN (Lanjut Identifikasi Vitek)">PATOGEN (Lanjut Identifikasi Vitek)</option>
<option value="PATOGEN (Lanjut Identifikasi Manual)">PATOGEN (Lanjut Identifikasi Manual)</option>
<option value="Kontaminasi (Tidak ada pertumbuhan jamur patogen)">Kontaminasi (Tidak ada pertumbuhan jamur patogen)</option>
<option value="Kolonisasi (Tidak ada pertumbuhan jamur patogen)">Kolonisasi (Tidak ada pertumbuhan jamur patogen)</option>
</select>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id="btnsimpanpertumbuhankolonisda">Simpan</button>
<button type="button" class="btn btn-outline pull-left" data-dismiss="modal">Close</button>
@@ -2576,10 +2525,6 @@
<input type="hidden" name="template_jenis" id="template_jenis">
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
<div style="overflow: hidden; display: none;">
<div class="form-group col-lg-12">
<label for="hasilpemeriksaanttcmmtbxdrxpert_pagi" class="col-form-label">Pagi</label>
<input type="text" id="hasilpemeriksaanttcmmtbxdrxpert_pagi" class="form-control ekspertiseteks">
</div>
<div class="form-group col-lg-12">
<label for="hasilpemeriksaanttcmmtbxdrxpert_sewaktu" class="col-form-label">Sewaktu</label>
<input type="text" id="hasilpemeriksaanttcmmtbxdrxpert_sewaktu" class="form-control ekspertiseteks">
@@ -3192,14 +3137,15 @@
pageable : true,
altrows : true,
columns : [
{ text: 'Tanggal', datafield: 'tglpenyimpanan', width: '15%', cellsalign: 'left', align: 'center' },
{ text: 'Petugas', datafield: 'created_by', width: '15%', cellsalign: 'left', align: 'center' },
{ text: 'Tanggal', datafield: 'tglpenyimpanan', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Petugas', datafield: 'created_by', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Kuman', datafield: 'kuman', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Hemolisa', datafield: 'hemolisa', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Katalase', datafield: 'katalase', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Koagulase', datafield: 'koagulase', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Oksidase', datafield: 'oksidase', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Lainnya', datafield: 'lainnya', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'R1', datafield: 'hemolisa', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'R2', datafield: 'katalase', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'I1', datafield: 'koagulase', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'I2', datafield: 'oksidase', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Inokulasi', datafield: 'lainnya', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Status', datafield: 'status', width: '10%', cellsalign: 'left', align: 'center' },
{ text: 'Edit', filterable: false, columntype: 'button', align: 'center', width: '10%', cellsrenderer: function () {
return "Edit";
}, buttonclick: function (row) {
+1
View File
@@ -130,6 +130,7 @@ Route::group(['middleware' => 'project.ipg'], function() {
Route::get('rekapantibiotik', [ReportController::class, 'genRekapAntibiotik']);
Route::get('glassreport', [ReportController::class, 'genGlassReport']);
Route::get('znreport', [ReportController::class, 'genZNreport']);
Route::get('tatreport', [ReportController::class, 'genTATreport']);
Route::get('list', [ListController::class, 'index']);
Route::get('list/getlist', [ListController::class, 'getList'])->name('getList');