db->get('master_loket'); return $query->result(); } function insert() { $datpelayanan = ""; if(isset($_POST['klinik'])){ $dataklinik=$this->input->post('klinik'); $jumlahklinik = count($this->input->post('klinik')); for($x = 0; $x <= $jumlahklinik; $x++){ if(isset($dataklinik[$x])){ $datpelayanan = $datpelayanan.$dataklinik[$x].","; } } } $insert_loket = array( 'ml_nama' => $this->input->post('nama'), 'ml_pelayanan' => $datpelayanan, 'ml_quota_bangku' => $this->input->post('quota'), 'ml_pembayaran' => $this->input->post('pembayaran'), 'ml_online' => $this->input->post('online'), 'ml_statuspelayanan'=> $this->input->post('statuspelayanan'), ); $insert = $this->db->insert('master_loket', $insert_loket); } function edit($id) { $this->db->where('ml_id', $id); $query = $this->db->get('master_loket'); return $query; } function prosesedit() { $datpelayanan = ""; if(isset($_POST['klinik'])){ $dataklinik=$this->input->post('klinik'); $jumlahklinik = count($this->input->post('klinik')); for($x = 0; $x <= $jumlahklinik; $x++){ if(isset($dataklinik[$x])){ $datpelayanan = $datpelayanan.$dataklinik[$x].","; } } } $update_loket = array( 'ml_nama' => $this->input->post('nama'), 'ml_pelayanan' => $datpelayanan, 'ml_quota_bangku' => $this->input->post('quota'), 'ml_pembayaran' => $this->input->post('pembayaran'), 'ml_online' => $this->input->post('online'), 'ml_statuspelayanan'=> $this->input->post('statuspelayanan'), ); $id = $this->input->post('id'); $this->db->where('ml_id', $id); $this->db->update('master_loket', $update_loket); } function view($id) { $this->db->where('ml_id', $id); $query = $this->db->get('master_loket'); return $query; } function delete($id) { $this->db->where('ml_id', $id); $this->db->delete('master_loket'); } //-------------------------------------Loket Admin--------------------------------// function pengunjung() { $this->db->order_by('pp_fasttrack', 'desc'); $this->db->order_by('pp_tanggal_datang', 'asc'); $this->db->join('proses_pengunjung', 'pp_id = prt_pengunjung_id', 'left'); $this->db->join('master_klinik', 'mk_id = pp_klinik_id', 'left'); $this->db->where('pp_tanggal_periksa', date('Y-m-d')); $this->db->where('pp_loket', $this->session->userdata('s_loket')); $this->db->where('prt_aktif ', '0'); $this->db->where('prt_status <', '5'); $query = $this->db->get('proses_ruang_tunggu'); return $query->result(); } function pengunjungklinik() { $this->db->join('proses_pengunjung', 'pp_id = prt_pengunjung_id', 'left'); $this->db->join('master_klinik', 'mk_id = pp_klinik_id', 'left'); $this->db->where('pp_tanggal_periksa', date('Y-m-d')); $this->db->where('prt_aktif ', '0'); $this->db->where('prt_status >', '3'); $this->db->where('prt_status <', '6'); $query = $this->db->get('proses_ruang_tunggu'); return $query->result(); } function panggil($jumlah){ $iduser = $this->session->userdata('s_ID_User'); $dataklinik=""; $datapembayaran=""; $this->db->join('master_loket', 'ml_id = mu_loket_id'); $this->db->where('mu_id', $iduser); $user = $this->db->get('master_user'); foreach ($user->result() as $datuser){ $dataklinik = $datuser->ml_pelayanan; $datapembayaran = $datuser->ml_pembayaran; } $klinikpecah = explode(",",$dataklinik); //$this->db->join('proses_ruang_tunggu', 'prt_pengunjung_id = pp_id','LEFT'); $this->db->order_by('pp_tanggal_datang', 'asc'); $this->db->or_where_in('pp_klinik_id', $klinikpecah); $this->db->where('pp_status', null); $this->db->where('pp_tanggal_periksa', date('Y-m-d')); $this->db->where('pp_pembayaran', $datapembayaran); $pengunjung = $this->db->get('proses_pengunjung'); $nomor=1; $this->db->join('proses_pengunjung', 'pp_id = prt_pengunjung_id'); $this->db->where('pp_tanggal_periksa', date("Y-m-d")); $this->db->where('prt_aktif', 2); $rt = $this->db->get('proses_ruang_tunggu'); foreach ($rt->result() as $datruangtunggu){ if($nomor<=$jumlah){$nomor++; $update_ruangtunggu = array( 'prt_aktif' => 0, ); $this->db->where('prt_id', $datruangtunggu->prt_id); $this->db->update('proses_ruang_tunggu', $update_ruangtunggu); $updatepengunjung = array('pp_status'=> 1,'pp_panggil_anjungan'=> date("Y-m-d H:i:s")); $this->db->where('pp_id', $datruangtunggu->pp_id); $this->db->update('proses_pengunjung', $updatepengunjung); } } foreach ($pengunjung->result() as $datpengunjung){ $this->db->where('mk_id', $datpengunjung->pp_klinik_id); $kl = $this->db->get('master_klinik'); foreach ($kl->result() as $datklinik){ //-------------cek shift buka----------// if($datpengunjung->pp_shift <= $datklinik->mk_shift_buka){ //echo $datpengunjung->pp_id; echo $nomor; if($nomor<=$jumlah){$nomor++; $input_ruangtunggu = array( 'prt_status' => 0, 'prt_tanggal' => date("Y-m-d H:i:s"), 'prt_aktif' => 0, 'prt_pengunjung_id' => $datpengunjung->pp_id, ); $insert = $this->db->insert('proses_ruang_tunggu', $input_ruangtunggu); $updatepengunjung = array('pp_status'=> 1,'pp_panggil_anjungan'=> date("Y-m-d H:i:s"),'pp_loket'=>$this->session->userdata('s_loket')); //$updatepengunjung = array('pp_status'=> 1,'pp_panggil_anjungan'=> date("Y-m-d H:i:s")); $this->db->where('pp_id', $datpengunjung->pp_id); $this->db->update('proses_pengunjung', $updatepengunjung); } } } } } function proses($pengunjung,$kode){ $update_rt = array( 'prt_status' => $kode, ); $this->db->where('prt_id', $pengunjung); $this->db->update('proses_ruang_tunggu', $update_rt); } function barcode($pengunjung){ $update_prt = array( 'prt_status' =>1, ); $this->db->where('prt_id', $pengunjung); $this->db->update('proses_ruang_tunggu', $update_prt); } function terlambat($pengunjung){ $update_prt = array( 'prt_aktif' =>1, 'prt_status' =>0, ); $this->db->where('prt_id', $pengunjung); $this->db->update('proses_ruang_tunggu', $update_prt); } function aktif($pengunjung){ $update_prt = array( 'prt_aktif' =>0, 'prt_status' =>1, ); $this->db->where('prt_id', $pengunjung); $this->db->update('proses_ruang_tunggu', $update_prt); } function infopengunjung(){ $this->db->join('proses_ruang_tunggu', 'prt_pengunjung_id = pp_id','LEFT'); $this->db->where('pp_tanggal_periksa', date("Y-m-d")); $query = $this->db->get('proses_pengunjung'); return $query->result(); } function ubahklinik(){ $update_pp = array( 'pp_klinik_id' => $this->input->post('klinik'), 'pp_pembayaran' => $this->input->post('pembayaran'), 'pp_loket' => null, ); $this->db->where('pp_id', $this->input->post('idpengunjung')); $this->db->update('proses_pengunjung', $update_pp); $update_prt = array( 'prt_status' =>1, ); $this->db->where('prt_id', $this->input->post('idprt')); $this->db->update('proses_ruang_tunggu', $update_prt); } function kunjunganterlambat(){ $this->db->join('proses_pengunjung', 'pp_id = prt_pengunjung_id'); $this->db->join('master_klinik', 'mk_id = pp_klinik_id'); $this->db->where('pp_tanggal_periksa', date("Y-m-d")); $this->db->where('prt_status', 0); $this->db->where('prt_aktif', 1); $query = $this->db->get('proses_ruang_tunggu'); return $query->result(); } function proses_pengunjung(){ $idprt = $this->input->post('idprt_proses'); $idpp = $this->input->post('idpp_proses'); $idkl = $this->input->post('idklinik_proses'); $kodekl = $this->input->post('kodeklinik_proses'); $rm = $this->input->post('norm'); $fasttr = $this->input->post('data_fastrack'); $kode = 4; $no_klinik=""; $i=0; $hasil_nomor = ""; $this->db->order_by('pp_nomor_antrian_klinik', "asc"); $this->db->where('pp_klinik_id', $idkl); $this->db->where('pp_tanggal_periksa', date("Y-m-d")); $this->db->like('pp_nomor_antrian_klinik', 'KL'.$kodekl); $query_pengunjung = $this->db->get('proses_pengunjung'); foreach ($query_pengunjung->result() as $datpengunjung){ if(isset($datpengunjung->pp_nomor_antrian_klinik)){ $no_klinik = $datpengunjung->pp_nomor_antrian_klinik; } } if($fasttr!=null){$kode=5;} if(isset($no_klinik)){ $urutan = (int) substr($no_klinik, 4, 3); $urutan++; $hasil_nomor = "KL".$kodekl.sprintf("%03s", $urutan); }else { $hasil_nomor="KL".$kodekl."001"; } $this->db->where('pp_tanggal_periksa', date('Y-m-d')); $this->db->where('pp_nomor_antrian_klinik', $hasil_nomor); $query_cek_nomor = $this->db->get('proses_pengunjung'); if($query_cek_nomor->num_rows()!=0){ return FALSE; }else{ $update_pp = array( 'pp_nomor_antrian_klinik' => $hasil_nomor, 'pp_rekamedik' => $rm, ); $this->db->where('pp_id', $idpp); $this->db->update('proses_pengunjung', $update_pp); $update_rt = array( 'prt_status' => $kode, ); $this->db->where('prt_id', $idprt); $this->db->update('proses_ruang_tunggu', $update_rt); } } function proses_panggil($idpp, $idloket){ $namaloket = ""; $this->db->where('ml_id', $idloket); $query_loket = $this->db->get('master_loket'); foreach ($query_loket->result() as $datloket){ $namaloket = $datloket->ml_nama; } $update_pp = array( 'pp_panggil' => date("Y-m-d H:i:s"), 'pp_panggil_loket' => $namaloket, ); $this->db->where('pp_id', $idpp); $this->db->update('proses_pengunjung', $update_pp); } function proses_panggil_anjungan($idpp){ $update_pp = array( 'pp_panggil_anjungan' => date("Y-m-d H:i:s"), ); $this->db->where('pp_id', $idpp); $this->db->update('proses_pengunjung', $update_pp); } function proses_panggil_null($idpp){ $update_pp = array( 'pp_panggil' => null, 'pp_panggil_loket' => null, //'pp_panggil_anjungan' => null, ); $this->db->where('pp_id', $idpp); $this->db->update('proses_pengunjung', $update_pp); } function proses_panggil_anjungan_null($idpp){ $update_pp = array( 'pp_panggil_anjungan' => null, ); $this->db->where('pp_id', $idpp); $this->db->update('proses_pengunjung', $update_pp); } function data_pengunjung($idpp){ $this->db->join('master_klinik', 'mk_id = pp_klinik_id'); $this->db->where('pp_id', $idpp); $query = $this->db->get('proses_pengunjung'); return $query->result(); } function proses_checkin($idprt, $idpp){ $update_pp = array( 'pp_tanggal_datang' => date("Y-m-d H:i:s"), ); $this->db->where('pp_id', $idpp); $this->db->update('proses_pengunjung', $update_pp); } } ?>