pdnorec) > 8) ? 'pdnorec' : 'nocm'; $getDataPD = PartialController::identitasPasien($filter_identitas_pasien, $request->pdnorec); if(empty($getDataPD)){ Session::flash('message', "Ops!, Data Tidak Ditemukan."); return Redirect::back(); } $dataHistoryCPPT = DB::connection('smart')->select(" select pasiendaftar_t.norec as pd_norec, pegawai_m.namalengkap, pasiendaftar_t.noregistrasi, ruangan_m.id as id_ruangan, ruangan_m.namaruangan, case when cppt_t.flag_ = 1 then 'SOAP' when cppt_t.flag_ = 3 then 'SOAPIE' else 'TBAK' end as keterangan, cppt_t.norec as cpptnorec, cppt_t.tglinput, cppt_t.s, cppt_t.o, cppt_t.a, cppt_t.p, cppt_t.cppt_i, cppt_t.cppt_e, cppt_t.tbak, cppt_t.pegawaifk from cppt_t inner join pegawai_m on cppt_t.pegawaifk = pegawai_m.id inner join antrianpasiendiperiksa_t on cppt_t.noregistrasifk = antrianpasiendiperiksa_t.norec inner join pasiendaftar_t on antrianpasiendiperiksa_t.noregistrasifk = pasiendaftar_t.norec inner join ruangan_m on cppt_t.ruanganfk = ruangan_m.id where cppt_t.statusenabled is true and cppt_t.flag_ in (1,3,4) and cppt_t.isverifikasi is true and cppt_t.pasienfk = ? order by cppt_t.tglinput desc limit 10 ", array($getDataPD[0]->nocmfk)); $dataHistoryResep = DB::connection('smart')->select(" select strukorder_t.tglorder, pegawai_m.namalengkap from t_resep_dokter inner join strukorder_t on t_resep_dokter.strukorderfk = strukorder_t.norec inner join pegawai_m on strukorder_t.objectpegawaiorderfk = pegawai_m.id where t_resep_dokter.statusenabled is true and strukorder_t.statusenabled is true and strukorder_t.nocmfk = ? order by strukorder_t.tglorder desc limit 10 ", array($getDataPD[0]->nocmfk)); $dataMasterObat = DB::connection('smart')->select(" select produk_m.id, produk_m.namaproduk from produk_m inner join detailjenisproduk_m on produk_m.objectdetailjenisprodukfk = detailjenisproduk_m.id where detailjenisproduk_m.objectjenisprodukfk = 97 AND produk_m.statusenabled IS true order by namaproduk limit 20 "); $dataReturn['pdnorec'] = $request->pdnorec; $dataReturn['pasien_identitas'] = $getDataPD[0]; $dataReturn['his_cppt'] = $dataHistoryCPPT; $dataReturn['his_resep'] = $dataHistoryResep; $dataReturn['master_obat'] = $dataMasterObat; $dataReturn['type'] = $filter_identitas_pasien; return view('dokter.emr.form.soap')->with("data", $dataReturn); } public function formSoapCPPT(Request $request) { $filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm'; $getDataPD = PartialController::identitasPasien($filter_identitas_pasien, $request->pdnorec); if(empty($getDataPD)){ Session::flash('message', "Ops!, Data Tidak Ditemukan."); return Redirect::back(); } if(isset($request->cpptnorec)){ $dataHistoryCPPT = DB::connection('smart')->select(" select pasiendaftar_t.norec as pd_norec, pegawai_m.namalengkap, pasiendaftar_t.noregistrasi, ruangan_m.id as id_ruangan, ruangan_m.namaruangan, case when cppt_t.flag_ = 1 then 'SOAP' when cppt_t.flag_ = 3 then 'SOAPIE' else 'TBAK' end as keterangan, cppt_t.norec as cpptnorec, cppt_t.tglinput, cppt_t.s, cppt_t.o, cppt_t.a, cppt_t.p, cppt_t.cppt_i, cppt_t.cppt_e, cppt_t.tbak, cppt_t.pegawaifk from cppt_t inner join pegawai_m on cppt_t.pegawaifk = pegawai_m.id inner join antrianpasiendiperiksa_t on cppt_t.noregistrasifk = antrianpasiendiperiksa_t.norec inner join pasiendaftar_t on antrianpasiendiperiksa_t.noregistrasifk = pasiendaftar_t.norec inner join ruangan_m on cppt_t.ruanganfk = ruangan_m.id where cppt_t.statusenabled is true and cppt_t.flag_ in (1,3,4) and cppt_t.isverifikasi is true and cppt_t.norec = ? order by cppt_t.tglinput desc limit 10 ", array($request->cpptnorec)); } $dataReturn['pdnorec'] = $request->pdnorec; $dataReturn['cpptnorec'] = (isset($request->cpptnorec) ? $request->cpptnorec : null); $dataReturn['pasien_identitas'] = $getDataPD[0]; $dataReturn['his_cppt'] = (isset($request->cpptnorec)) ? $dataHistoryCPPT[0] : []; $dataReturn['type'] = $filter_identitas_pasien; return view('dokter.emr.form.soap-form')->with("data", $dataReturn); } public function simpanSoapCPPT(Request $request) { $filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm'; DB::connection('smart')->beginTransaction(); try { DB::connection('smart')->table('cppt_t')->insert([ 'norec' => $this->generateNorecSmartV1(), 'kdprofile' => 0, 'statusenabled' => 't', 'tglinput' => date('Y-m-d H:i:s'), 'isverifikasi' => true, 'pasienfk' => $request->pasienfk, 'pegawaifk' => Auth::user()->smart_pk, 'noregistrasifk' => $request->noregistrasifk, 'ruanganfk' => $request->ruanganfk, 's' => $request->s, 'o' => $request->o, 'a' => $request->a, 'p' => $request->p, 'flag_' => 1, ]); DB::connection('smart')->commit(); return redirect()->route('dokter.emr.soap.view', [$filter_identitas_pasien => $request->pdnorec])->with('success','SOAP Berhasil Disimpan.'); } catch (\Exception $e) { DB::connection('smart')->rollBack(); return back()->with('error', 'Data gagal disimpan, mohon periksa kembali inputan anda.'); } } public function updateSoapCPPT(Request $request) { $filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm'; DB::connection('smart')->beginTransaction(); try { DB::connection('smart')->table('cppt_t')->where('norec', '=', $request->cpptnorec)->update([ 's' => $request->s, 'o' => $request->o, 'a' => $request->a, 'p' => $request->p, ]); DB::connection('smart')->commit(); return redirect()->route('dokter.emr.soap.view', [$filter_identitas_pasien => $request->pdnorec])->with('success','Edit SOAP Berhasil.'); } catch (\Exception $e) { DB::connection('smart')->rollBack(); return back()->with('error', 'Data gagal disimpan, mohon periksa kembali inputan anda.'); } } public function deleteSoapCPPT(Request $request) { $filter_identitas_pasien = (strlen($request->pdnorec) > 8) ? 'pdnorec' : 'nocm'; DB::connection('smart')->beginTransaction(); try { DB::connection('smart')->table('cppt_t')->where('norec', '=', $request->cpptnorec)->update([ 'statusenabled' => false ]); DB::connection('smart')->commit(); return redirect()->route('dokter.emr.soap.view', [$filter_identitas_pasien => $request->pdnorec])->with('success','Batal SOAP Berhasil.'); } catch (\Exception $e) { DB::connection('smart')->rollBack(); return back()->with('error', 'Gagal Delete Data.'); } } public function generateNorecSmartV1(){ return str_replace("-","",strtolower(Str::uuid()->toString())); } }