select('poli')->get(); $data = []; $i = 0; foreach ($ruangpolis as $ruangpoli) { $j = 0; $ruangpoli = $ruangpoli->poli; $rooms = Ruangan::where('poli', $ruangpoli)->get(); foreach ($rooms as $room) { $data['ruangans'][$i][$j]['id'] = $room->id; $data['ruangans'][$i][$j]['ruangan'] = $room->ruangan; $j++; } $i++; } $x = 0; foreach ($ruangpolis as $ruangpoli) { $data['ruangpolis'][$x] = $ruangpoli->poli; $x++; } $data['polis'] = $polis; $data['dokters'] = $dokters; $data['answers'] = $answers; $data['details'] = $details; return view('admin.list', $data); } } public function getList(Request $request) { $jenis = $request->input('jenis'); $mulai = $request->input('mulai'); $akhir = $request->input('akhir'); $lokasi = $request->input('poli'); $valcari = $request->input('valcari'); $master = $request->input('master'); $lamanurlhasil = url('/').'/hasil/'; if ($jenis === null){$jenis = '';} if ($master == 'logbook') { list($start, $end) = explode(' - ', $mulai); $startDate = Carbon::createFromFormat('m/d/Y', $start)->format('Y-m-d'); $endDate = Carbon::createFromFormat('m/d/Y', $end)->format('Y-m-d'); $arraylist = Periksa::select('id', 'mulai', 'akhir', 'noloket', 'nofoto', 'noregister', 'asalpasien', 'nmrs', 'pasien_id', 'nmpasien', 'jkpasien', 'tgllahirpasien', 'tlppasien', 'alamatpasien', 'reques', 'usia', 'berat', 'ruangan_id', 'ruangan', 'dokter_id', 'ppdssenior', 'middleppds', 'ppdsjunior', 'ppdsmiddle2', 'ppdsjunior2', 'analis', 'excutor', 'nmdokter', 'nmppdssenior', 'nmmiddleppds', 'nmppdsjunior', 'nmppdsmiddle2', 'nmppdsjunior2', 'nmanalis', 'nmexcutor', 'klinisi', 'klinis', 'keterangan', 'kesimpulan', 'poli_id', 'asuransi', 'urgensi', 'diagnosa', 'diagnosa2', 'modality', 'dlp', 'daftar', 'foto', 'tgldraft', 'nmdrafter', 'baca', 'nmpembaca', 'verifikasi', 'export', 'tgladendum', 'nmadendum', 'filefoto', 'status', 'created_at', 'updated_at', DB::raw("CASE WHEN ppdssenior = $valcari THEN 'SENIOR' WHEN middleppds = $valcari THEN 'MIDDLE' WHEN ppdsjunior = $valcari THEN 'JUNIOR' WHEN ppdsmiddle2 = $valcari THEN 'MIDDLE' ELSE 'JUNIOR' END AS role")); $arraylist = $arraylist->whereBetween('daftar', [$startDate, $endDate]); $arraylist = $arraylist->where(function($query) use ($valcari) { $query->where('ppdssenior', $valcari) ->orWhere('middleppds', $valcari) ->orWhere('ppdsjunior', $valcari) ->orWhere('ppdsmiddle2', $valcari) ->orWhere('ppdsjunior2', $valcari); })->get(); } else if ($master == 'pengambilan') { $arraylist = Periksa::select( DB::raw("CONCAT('', nofoto, '') as tlsnofoto"), DB::raw("CONCAT('', noregister, '') as tlsnoregister"), DB::raw("CONCAT('', nmpasien, '') as tlsnama"), DB::raw("CONCAT('', urgensi, '') as tlsurgensi"), DB::raw("CONCAT('', reques, '') as tlsreques"), DB::raw("CONCAT('', ruangan, '') as tlsruangan"), DB::raw("CONCAT('', daftar, '') as tlsdaftar"), DB::raw("CONCAT('', status, '') as tlsstatus"), DB::raw("CONCAT('', asalpasien, '') as asalpasien"), 'tlppasien as telpon', 'ruangan_id as idruangan', 'dokter_id as iddokter', 'id', 'daftar', 'nofoto', 'noloket', 'nmdokter as dokter')->whereNotNull('verifikasi')->where('status', '!=', 'Arsip'); if ($valcari != ''){ if ($jenis == 'norm'){ $arraylist = $arraylist->where('noregister', $valcari); } else { $arraylist = $arraylist->where('nofoto', $valcari); } } if ($akhir != '' AND $mulai != $akhir){ $arraylist = $arraylist->whereBetween('daftar', [$mulai, $akhir]); } else { if ($jenis == 'ThisDay' OR $jenis == ''){ if ($mulai == '' OR is_null($mulai)){ $mulai = date('Y-m-d'); } $arraylist = $arraylist->whereDate('daftar', $mulai); } else if ($jenis == 'mundur2'){ $arraylist = $arraylist->whereDate('daftar', '>=', Carbon::today()->subDays(2)); } else if ($jenis == 'mundur3'){ $arraylist = $arraylist->whereDate('daftar', '>=', Carbon::today()->subDays(2)); } else { } } $arraylist = $arraylist->get(); } else if ($master == 'verificationppds') { $arraylist = Periksa::select('id', 'mulai', 'akhir', 'noloket', 'nofoto', 'noregister', 'asalpasien', 'nmrs', 'pasien_id', 'nmpasien', 'jkpasien', 'tgllahirpasien', 'tlppasien', 'alamatpasien', 'reques', 'usia', 'berat','ruangan', 'nmdokter', 'nmppdssenior', 'nmmiddleppds', 'nmppdsjunior', 'nmppdsmiddle2', 'nmppdsjunior2', 'nmanalis', 'nmexcutor', 'klinisi', 'klinis', 'asuransi', 'urgensi', 'diagnosa', 'diagnosa2', 'modality', 'dlp', 'daftar', 'foto', 'tgldraft', 'nmdrafter', 'baca', 'nmpembaca', 'verifikasi', 'export', 'tgladendum', 'nmadendum', 'filefoto', 'status', DB::raw('DATE(daftar) as daftartgl'), DB::raw('TIME(daftar) as daftarjam'), DB::raw('TIME(export) as cetakjam'), DB::raw('TIME(verifikasi) as verifikasijam'), DB::raw('TIME(baca) as bacajam'), DB::raw('TIME(foto) as fotojam'), DB::raw("GROUP_CONCAT(nofoto SEPARATOR '
') as nofoto_list"), DB::raw("GROUP_CONCAT(reques SEPARATOR '
') as reques_list"), DB::raw("CASE WHEN jkpasien = 'L' THEN '1' ELSE '' END AS l"), DB::raw("CASE WHEN jkpasien = 'P' THEN '1' ELSE '' END AS p"), DB::raw("CASE WHEN asuransi = 'JKN' THEN '1' WHEN asuransi = 'BPJS' THEN '1' ELSE '' END AS jkn"), DB::raw("CASE WHEN asuransi = 'Billing' THEN '1' ELSE '' END AS billing"), DB::raw("CASE WHEN asuransi = 'GCU' THEN '1' ELSE '' END AS gcu"), DB::raw("CASE WHEN asuransi = 'MANDIRI' THEN '1' WHEN asuransi = 'Umum' THEN '1' ELSE '' END AS umum"), DB::raw("CASE WHEN asuransi = 'SWASTA' THEN '1' ELSE '' END AS swasta"), DB::raw("CASE WHEN asuransi = 'TAG' THEN '1' ELSE '' END AS tag"), DB::raw("CASE WHEN urgensi != 'CITO' THEN '1' ELSE '' END AS elective"), DB::raw("CASE WHEN urgensi = 'CITO' THEN '1' ELSE '' END AS cito"), DB::raw("CASE WHEN nofoto LIKE '%IGD%' THEN 'IGD' WHEN nofoto LIKE '%PAV%' THEN 'PAVILIUN' ELSE 'SENTRAL' END AS inputor"), DB::raw("CASE WHEN status IS NULL THEN 'NEW' WHEN status LIKE '%Dibatalkan%' THEN 'Batal' WHEN status LIKE '%Telah%' THEN 'Telah di kirim ke worklist/modalitas' WHEN status LIKE '%Diperiksa%' THEN 'Diperiksa' WHEN status LIKE '%Draft%' THEN 'Draft' WHEN status LIKE '%Expertise%' THEN 'Expertise' WHEN status LIKE '%Decliend%' THEN 'Decliend' WHEN status LIKE '%Selesai%' THEN 'Selesai' WHEN status LIKE '%Arsip%' THEN 'Arsip' ELSE 'Unkown' END AS status_label")); if ($valcari == 'allspv'){ $arraylist = $arraylist->where('status', 'LIKE', 'Expertise Saved (Un Verified)')->whereNull('periksa.verifikasi'); } else { $arraylist = $arraylist->where('status', 'LIKE', 'Expertise Saved (Un Verified)')->whereNull('periksa.verifikasi')->where('periksa.dokter_id', Session('id')); } $arraylist = $arraylist->get(); } else { $arraylist = Periksa::select('id', 'mulai', 'akhir', 'noloket', 'nofoto', 'noregister', 'asalpasien', 'nmrs', 'pasien_id', 'nmpasien', 'jkpasien', 'tgllahirpasien', 'tlppasien', 'alamatpasien', 'reques', 'usia', 'berat', 'ruangan_id', 'ruangan', 'dokter_id', 'ppdssenior', 'middleppds', 'ppdsjunior', 'ppdsmiddle2', 'ppdsjunior2', 'analis', 'excutor', 'nmdokter', 'nmppdssenior', 'nmmiddleppds', 'nmppdsjunior', 'nmppdsmiddle2', 'nmppdsjunior2', 'nmanalis', 'nmexcutor', 'klinisi', 'klinis', 'keterangan', 'kesimpulan', 'poli_id', 'asuransi', 'urgensi', 'diagnosa', 'diagnosa2', 'modality', 'dlp', 'daftar', 'foto', 'tgldraft', 'nmdrafter', 'baca', 'nmpembaca', 'verifikasi', 'export', 'tgladendum', 'nmadendum', 'filefoto', 'status', 'created_at', 'updated_at', DB::raw('DATE(daftar) as daftartgl'), DB::raw('TIME(daftar) as daftarjam'), DB::raw('TIME(export) as cetakjam'), DB::raw('TIME(verifikasi) as verifikasijam'), DB::raw('TIME(baca) as bacajam'), DB::raw('TIME(foto) as fotojam'), DB::raw("CASE WHEN jkpasien = 'L' THEN '1' ELSE '' END AS l"), DB::raw("CASE WHEN jkpasien = 'P' THEN '1' ELSE '' END AS p"), DB::raw("CONCAT('https://10.10.123.218/hasil/', nofoto) as urlhasil"), DB::raw("CASE WHEN asuransi = 'JKN' THEN '1' WHEN asuransi = 'BPJS' THEN '1' ELSE '' END AS jkn"), DB::raw("CASE WHEN asuransi = 'Billing' THEN '1' ELSE '' END AS billing"), DB::raw("CASE WHEN asuransi = 'GCU' THEN '1' ELSE '' END AS gcu"), DB::raw("CASE WHEN asuransi = 'MANDIRI' THEN '1' WHEN asuransi = 'Umum' THEN '1' ELSE '' END AS umum"), DB::raw("CASE WHEN asuransi = 'SWASTA' THEN '1' ELSE '' END AS swasta"), DB::raw("CASE WHEN asuransi = 'TAG' THEN '1' ELSE '' END AS tag"), DB::raw("CASE WHEN urgensi != 'CITO' THEN '1' ELSE '' END AS elective"), DB::raw("CASE WHEN urgensi = 'CITO' THEN '1' ELSE '' END AS cito"), DB::raw("CASE WHEN status IS NULL THEN 'NEW' WHEN status LIKE '%Dibatalkan%' THEN 'Batal' WHEN status LIKE '%Telah%' THEN 'Telah di kirim ke worklist/modalitas' WHEN status LIKE '%Diperiksa%' THEN 'Diperiksa' WHEN status LIKE '%Draft%' THEN 'Draft' WHEN status LIKE '%Expertise%' THEN 'Expertise' WHEN status LIKE '%Decliend%' THEN 'Decliend' WHEN status LIKE '%Selesai%' THEN 'Selesai' WHEN status LIKE '%Arsip%' THEN 'Arsip' ELSE 'Unkown' END AS status_label"), DB::raw("CASE WHEN status IS NULL THEN CONCAT('', nofoto, '') WHEN status LIKE '%Dibatalkan%' THEN CONCAT('', nofoto, '') WHEN status LIKE '%Telah%' THEN CONCAT('', nofoto, '') WHEN status LIKE '%Diperiksa%' THEN CONCAT('', nofoto, '') WHEN status LIKE '%Draft%' THEN CONCAT('', nofoto, '') WHEN status LIKE '%Expertise%' THEN CONCAT('', nofoto, '') WHEN status LIKE '%Decliend%' THEN CONCAT('', nofoto, '') WHEN status LIKE '%Selesai%' THEN CONCAT('', nofoto, '') WHEN status LIKE '%Arsip%' THEN CONCAT('', nofoto, '') ELSE CONCAT('', nofoto, '') END AS tlsnofoto"), DB::raw("CASE WHEN status IS NULL THEN CONCAT('', noregister, '') WHEN status LIKE '%Dibatalkan%' THEN CONCAT('', noregister, '') WHEN status LIKE '%Telah%' THEN CONCAT('', noregister, '') WHEN status LIKE '%Diperiksa%' THEN CONCAT('', noregister, '') WHEN status LIKE '%Draft%' THEN CONCAT('', noregister, '') WHEN status LIKE '%Expertise%' THEN CONCAT('', noregister, '') WHEN status LIKE '%Decliend%' THEN CONCAT('', noregister, '') WHEN status LIKE '%Selesai%' THEN CONCAT('', noregister, '') WHEN status LIKE '%Arsip%' THEN CONCAT('', noregister, '') ELSE CONCAT('', noregister, '') END AS tlsnoregister"), DB::raw("CASE WHEN status IS NULL THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Dibatalkan%' THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Telah%' THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Diperiksa%' THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Draft%' THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Expertise%' THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Decliend%' THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Selesai%' THEN CONCAT('', nmpasien, '') WHEN status LIKE '%Arsip%' THEN CONCAT('', nmpasien, '') ELSE CONCAT('', nmpasien, '') END AS tlsnama"), DB::raw("CASE WHEN status IS NULL THEN CONCAT('', reques, '') WHEN status LIKE '%Dibatalkan%' THEN CONCAT('', reques, '') WHEN status LIKE '%Telah%' THEN CONCAT('', reques, '') WHEN status LIKE '%Diperiksa%' THEN CONCAT('', reques, '') WHEN status LIKE '%Draft%' THEN CONCAT('', reques, '') WHEN status LIKE '%Expertise%' THEN CONCAT('', reques, '') WHEN status LIKE '%Decliend%' THEN CONCAT('', reques, '') WHEN status LIKE '%Selesai%' THEN CONCAT('', reques, '') WHEN status LIKE '%Arsip%' THEN CONCAT('', reques, '') ELSE CONCAT('', reques, '') END AS tlsreques") ); if ($jenis == 'ThisDay') { $arraylist = $arraylist->where(function($q) { $q->where(function($sub) { $sub->whereNotIn('status', ['Selesai', 'Arsip']) ->where('status', 'not like', 'Dibatalkan%'); })->orWhereNull('status'); }); } else if ($jenis == 'ThisDayPendaftaran') { $arraylist = $arraylist->whereDate('daftar', Carbon::today()); } else if ($jenis == 'mundur2') { $arraylist = $arraylist->whereDate('daftar', '>=', Carbon::today()->subDays(2)); } else if ($jenis == 'mundur3') { $arraylist = $arraylist->whereDate('daftar', '>=', Carbon::today()->subDays(3)); } else if ($jenis === 'searchbydate') { $mulai = $mulai ?: date("Y-m-d"); $akhir = $akhir ?: date("Y-m-d"); if ($mulai >= $akhir) { $akhir = date('Y-m-d', strtotime($akhir . ' +1 day')); } $arraylist = $arraylist->whereBetween('daftar', [$mulai, $akhir]); } else if ($jenis === 'searchbydatemanual') { $mulai = $mulai ?: date("Y-m-d"); $akhir = $akhir ?: date("Y-m-d"); if ($mulai >= $akhir) { $akhir = date('Y-m-d', strtotime($akhir . ' +1 day')); } $arraylist = $arraylist->whereBetween('daftar', [$mulai, $akhir])->whereNotIn('pendaftar', ['supervisor', 'admin', 'analis', 'ppds', 'developer']); } else { switch ($jenis) { case 'norm': $arraylist = $arraylist->where('noregister', 'LIKE', '%'.$valcari.'%'); case 'nofoto': $arraylist = $arraylist->where('nofoto', 'LIKE', '%'.$valcari.'%'); case 'rekues': $arraylist = $arraylist->where('reques', 'LIKE', '%'.$valcari.'%'); case 'keterangan': $arraylist = $arraylist->where('keterangan', 'LIKE', '%'.$valcari.'%'); case 'kesimpulan': $arraylist = $arraylist->where('keterangan', 'LIKE', '%'.$valcari.'%'); default: $arraylist = $arraylist->where('nmpasien', 'LIKE', '%'.$valcari.'%'); } } $arraylist = $arraylist->orderBy('id', 'DESC')->get(); } echo json_encode($arraylist); } public function listDetail(Request $request) { $id = $request->input('id'); $periksa = DB::table('periksa')->where('id', $id)->first(); echo json_encode($periksa); } public function delete(Request $request) { $id = $request->input('val01'); $alasan = $request->input('val02'); $tabel = $request->input('val03'); if ($id == 'buatulang'){ $getdata= Periksa::where('id', $request->input('val02'))->first(); if (isset($getdata->nofoto)){ $ceksudah = Periksa::where('nofoto', 'LIKE', $getdata->nofoto.'_%')->count(); $nomorbaru = $ceksudah++; $periksaid = Periksa::insertGetId([ 'mulai' => $getdata->mulai, 'akhir' => $getdata->akhir, 'noloket' => $getdata->noloket, 'nofoto' => $getdata->nofoto.'_'.$nomorbaru, 'noregister' => $getdata->noregister, 'asalpasien' => $getdata->asalpasien, 'nmrs' => $getdata->nmrs, 'pasien_id' => $getdata->pasien_id, 'nmpasien' => $getdata->nmpasien, 'jkpasien' => $getdata->jkpasien, 'ktp' => $getdata->ktp, 'bpjs' => $getdata->bpjs, 'tgllahirpasien'=> $getdata->tgllahirpasien, 'tlppasien' => $getdata->tlppasien, 'alamatpasien' => $getdata->alamatpasien, 'reques' => $getdata->reques, 'usia' => $getdata->usia, 'berat' => $getdata->berat, 'ruangan_id' => $getdata->ruangan_id, 'ruangan' => $getdata->ruangan, 'klinisi' => $getdata->klinisi, 'klinis' => $getdata->klinis, 'poli_id' => $getdata->poli_id, 'kd_spesimen' => $getdata->kd_spesimen, 'nm_spesimen' => $getdata->nm_spesimen, 'keterangan' => '', 'kesimpulan' => '', 'asuransi' => $getdata->asuransi, 'urgensi' => $getdata->urgensi, 'daftar' => $getdata->daftar, 'pendaftar' => Session('id'), 'nmpendaftar' => Session('nama'), 'orderid' => $getdata->orderid, ]); try { if ($getdata->kd_spesimen != '' AND $getdata->nm_spesimen != ''){ PendaftaranOnListiner::updateOrCreate( [ 'rnoreg' => $getdata->nofoto, ], [ 'rtglast' => date('Y-m-d'), 'norm' => $getdata->noregister, 'nama' => $getdata->nmpasien, 'alamat' => $getdata->alamatpasien, 'telp' => $getdata->tlppasien, 'hp' => $getdata->tlppasien, 'tgllahir' => $getdata->tgllahirpasien, 'umur' => $getdata->usia, 'rjenis' => $getdata->jkpasien, 'kodedok' => Session('id'), 'namadok' => Session('nama'), 'ruangan' => $getdata->ruangan, 'tes' => '', 'alat' => 'All', 'kd_spesimen' => $getdata->kd_spesimen, 'nm_spesimen' => $getdata->nm_spesimen, ] ); } return response()->json(['status' => 'Sukses', 'message' => 'Data Order Berhasil di Gandakan'], 201); } catch (Exception $e) { return response()->json(['status' => 'Sukses', 'message' => 'Data Order Berhasil di Gandakan'], 201); } } else { return response()->json(['icon' => 'error', 'warna' => '#bf441d', 'status' => 'Gagal', 'message' => 'Data Tidak Valid']); return back(); } } else { if ($alasan == ''){ return response()->json(['icon' => 'error', 'warna' => '#bf441d', 'status' => 'Gagal', 'message' => 'Mohon isi semua form']); return back(); } else { if ($tabel == 'aktif'){ $alasan = 'Dibatalkan dengan alasan '.$alasan; $input = Periksa::where('id', $id)->update([ 'noloket' => null, 'status' => $alasan ]); $pesan = 'Order Expertise Canceled'; } else if ($tabel == 'arsip'){ $total = 0; $input = Periksa::whereIn('id', $id)->update([ 'status'=> 'Arsip' ]); if ($input){ $total++; } $pesan = 'Expertise Archieved '.$total; } else { $alasan = 'Dibatalkan dengan alasan '.$alasan; $input = Jadwalperiksa::where('id', $id)->update([ 'noloket' => null, 'status' => $alasan ]); $pesan = 'Schedulling Canceled'; } if ($input){ return response()->json(['icon' => 'success', 'warna' => '#5ba035', 'status' => 'Sukses', 'message' => $pesan]); return back(); }else { return response()->json(['icon' => 'error', 'warna' => '#bf441d', 'status' => 'Gagal', 'message' => 'System Down, please try again in a few years...']); return back(); } } } } }