Last active
August 29, 2015 14:03
-
-
Save khaeransori/8d20985ab6f1840922c1 to your computer and use it in GitHub Desktop.
remote anggota buat jati
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); | |
class Anggota extends CI_Controller { | |
public function __construct() | |
{ | |
parent::__construct(); | |
header('Content-type: application/json'); | |
header('Access-Control-Allow-Origin: *'); | |
$this->load->model('model_konsultasi'); | |
$this->load->model('model_anggota'); | |
} | |
public function get_jadwal_konsultasi() | |
{ | |
$negara = $this->input->post('negara'); | |
$prop = $this->input->post('provinsi'); | |
$kota = $this->input->post('kota'); | |
$klinik = $this->input->post('klinik'); | |
$dokter = $this->input->post('dokter'); | |
$spesialis = $this->input->post('spesialis'); | |
$result = $this->model_anggota->remote_get_jadwal_konsultasi($negara, $prop, $kota, $klinik, $dokter, $spesialis); | |
echo json_encode($result); | |
} | |
public function daftar_jadwal_konsultasi($id) | |
{ | |
$this->form_validation->set_rules('id', 'ID', 'required'); | |
$this->form_validation->set_rules('pasien', 'Pasien', 'required'); | |
$this->form_validation->set_rules('tanggal', 'Tanggal', 'required'); | |
$this->form_validation->set_rules('hari', 'Hari', 'required'); | |
$this->form_validation->set_rules('keluhan', 'Keluhan', 'required'); | |
if (FALSE === $this->form_validation->run()) { | |
$status = $this->model_anggota->getJadwalDetail($id); | |
$now = date("w"); | |
$data['fasilitas'] = $status->fasilitas; | |
$data['spesialis'] = $status->spesialis; | |
$data['konsultan'] = $status->konsultan; | |
$hari = $this->model_anggota->gethari($now, $status->hari); | |
$data['tanggal'] = $hari['tanggal'] ; | |
$data['hari'] = $hari['hari']; | |
$data['jam'] = $status->jam; | |
$data['id'] = $status->id; | |
echo json_encode($data); | |
} else { | |
$idjadwal = $this->input->post('id'); | |
$idpasien = $this->input->post('pasien'); | |
$tgl = $this->input->post('tanggal'); | |
$hari = $this->input->post('hari'); | |
$keluhan = $this->input->post('keluhan'); | |
$jadwal = $this->model_anggota->getJadwalKonsultan($idjadwal); | |
$pasien = $this->model_anggota->manage_anggota('cek', $idpasien, null); | |
$tanggal = date('Y-m-d', strtotime($tgl)); | |
$data['id_pasien'] = $idpasien; | |
$data['nama_pasien'] = $pasien['baris']->nama_anggota; | |
$data['id_fasilitas'] = $jadwal->id_fasilitas; | |
$data['id_konsultan'] = $jadwal->id_konsultan; | |
$data['id_spesialis'] = $jadwal->id_spesialis; | |
$data['tanggal'] = $tanggal; | |
$data['hari'] = $hari; | |
$data['jam'] = $jadwal->jam_awal; | |
$data['keluhan'] = $keluhan; | |
$data['status'] = 'Pending'; | |
$data['create_date'] = date('Y-m-d H:i:s', strtotime('+7 hour')); | |
$data['utama'] = '1'; | |
$data['tampilkan'] = '1'; | |
if ($this->model_anggota->manage_pasien('insert', null, $data)) { | |
$error = false; | |
$id_konsultasi = $this->db->insert_id(); | |
$info = $data['nama_pasien'] . ' mendaftar'; | |
// init email | |
$this->load->plugin('phpmailer'); | |
$emailFrom = $this->config->item('email'); | |
$namaFrom = $this->config->item('appname'); | |
$subjectMsg = 'Notifikasi'; | |
// email ke anggota | |
send_email_smtp($emailFrom,$namaFrom,$pasien['baris']->email,$subjectMsg,$info,true); | |
// notifikasi ke superadmin | |
$link = 'admin/home/lihatrespon/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->superadmin($idpasien, 'anggota', 'superadmin', 0, $info, $link); | |
// email ke superadmin | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas(0); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
// notifikasi ke dokter | |
$link = 'konsultan/home/lihatrespon/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->konsultan('single', $idpasien, 'anggota', $data['id_konsultan'], $info, $link); | |
// email ke dokter | |
$konsultan = $this->konsultan_model->getKonsultanDetail($data['id_konsultan']); | |
send_email_smtp($emailFrom,$namaFrom,$konsultan->email,$subjectMsg,$info,true); | |
// notifikasi ke fasilitas yang dikehendaki | |
$link = 'fasilitas/home/detailpasien/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->fasilitas('single', $idpasien, 'anggota', $data['id_fasilitas'], $info, $link); | |
// email ke fasilitas yang dikehendaki | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas($data['id_fasilitas']); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
$kota = $this->model_anggota->getIDKota($jadwal->id_fasilitas)->id_kota; | |
$fasilitas = $this->model_anggota->getFasilitasSekota($kota, $jadwal->id_fasilitas); | |
if ($fasilitas) { | |
foreach ($fasilitas as $id): | |
$data['id_fasilitas'] = $id->id_fasilitas; | |
$data['utama'] = '0'; | |
$data['tampilkan'] = '0'; | |
$this->model_anggota->manage_pasien('insert', null, $data); | |
// notifikasi ke se kota | |
$link = 'fasilitas/home/detailpasien/' . $this->db->insert_id(); | |
$this->model_notifikasi_konsultasi->fasilitas('single', $idpasien, 'anggota', $data['id_fasilitas'], $info, $link); | |
// email ke fasilitas yang se kota | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas($data['id_fasilitas']); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
endforeach; | |
} | |
$message = 'Permintaan konsultasi di klinik sudah diterima dan sedang diproses. Konfirmasi mengenai jadwal konsultasi yang diminta, akan dikirimkan secepat mungkin.'; | |
} else { | |
$message = 'Maaf, ada kesalahan, mohon ulangi lagi isi data.'; | |
$error = true; | |
} | |
$result = array( | |
'error' => $error, | |
'message' => $message | |
); | |
echo json_encode($result); | |
} | |
} | |
public function get_status_konsultasi() | |
{ | |
$id_anggota = $this->input->post('id_anggota'); | |
$jumlah = $this->model_anggota->countKonsultasiPending($id_anggota); | |
$data = $this->model_anggota->getKonsultasiPending($id_anggota); | |
$result = array( | |
'jumlah' => $jumlah, | |
'data' => $data | |
); | |
echo json_encode($result); | |
} | |
public function get_detail_konsultasi() | |
{ | |
$id_konsultasi = $this->input->post('id_konsultasi'); | |
$data = $this->model_anggota->lihatrespon($id_konsultasi); | |
echo json_encode($data); | |
} | |
public function accept_konsultasi() | |
{ | |
$id_konsultasi = $this->input->post('id_konsultasi'); | |
$data['respon_pasien'] = '1'; | |
$this->model_anggota->manage_pasien('update', $id_konsultasi, $data); | |
// detail konsultasi | |
$detail_konsultasi = $this->model_anggota->manage_pasien('cek', $id_konsultasi, ''); | |
$detail_konsultasi = $detail_konsultasi['baris']; | |
$id_anggota = $detail_konsultasi->id_pasien; | |
$id_konsultan = $detail_konsultasi->id_konsultan; | |
$id_fasilitas = $detail_konsultasi->id_fasilitas; | |
// detail pasien | |
$detail_pasien = $this->model_anggota->manage_anggota('cek', $id_anggota, ''); | |
$detail_pasien = $detail_pasien['baris']; | |
// info notifikasi | |
$info = $detail_pasien->nama_anggota . 'menerima konsultasi'; | |
$idpasien = $detail_pasien->id_anggota; | |
// init email | |
$this->load->plugin('phpmailer'); | |
$emailFrom = $this->config->item('email'); | |
$namaFrom = $this->config->item('appname'); | |
$subjectMsg = 'Notifikasi'; | |
// notifikasi ke superadmin | |
$link = 'admin/home/lihatrespon/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->superadmin($idpasien, 'anggota', 'superadmin', 0, $info, $link); | |
// email ke superadmin | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas(0); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
// notifikasi ke dokter | |
$link = 'konsultan/home/lihatrespon/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->konsultan('single', $idpasien, 'anggota', $id_konsultan, $info, $link); | |
// email ke dokter | |
$konsultan = $this->konsultan_model->getKonsultanDetail($id_konsultan); | |
send_email_smtp($emailFrom,$namaFrom,$konsultan->email,$subjectMsg,$info,true); | |
// notifikasi ke fasilitas yang dikehendaki | |
$link = 'fasilitas/home/detailpasien/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->fasilitas('single', $idpasien, 'anggota', $id_fasilitas, $info, $link); | |
// email ke fasilitas yang dikehendaki | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas($id_fasilitas); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
$tgl = $this->db->query('select create_date from tbl_konsultasi where id_konsultasi="'.$id_konsultasi.'" ')->row()->create_date; | |
$idkonsultasi = $this->db->query('select id_konsultasi from tbl_konsultasi WHERE create_date="'.$tgl.'" and id_konsultasi <> "'.$id.'" ')->result(); | |
foreach ($idkonsultasi as $row): | |
$this->db->query('UPDATE tbl_konsultasi SET status="Cancel", respon_pasien="0" WHERE id_konsultasi="'.$row->id_konsultasi.'" '); | |
endforeach; | |
$message = 'Jadwal Konsultasi berhasil ditambahkan.'; | |
$error = false; | |
$result = array( | |
'message' => $message, | |
'error' => $error | |
); | |
echo json_encode($result); | |
} | |
public function get_konsultasi_terjadwal() | |
{ | |
$id_anggota = $this->input->post('id_anggota'); | |
$jumlah = $this->model_anggota->countKonsultasiAccept($id_anggota); | |
$data = $this->model_anggota->getKonsultasiAccept($id_anggota); | |
$result = array( | |
'jumlah' => $jumlah, | |
'data' => $data | |
); | |
echo json_encode($result); | |
} | |
public function get_pembatalan_klinik() | |
{ | |
$id_konsultasi = $this->input->post('id_konsultasi'); | |
$hasil = $this->model_anggota->manage_pasien('cek', $id, null); | |
$result = array( | |
'id' => $hasil['baris']->id_konsultasi, | |
'pesan' => $hasil['baris']->saran | |
); | |
echo json_encode($result); | |
} | |
public function proccess_pembatalan_konsultasi() | |
{ | |
$id = $this->input->post('id_konsultasi'); | |
$data['status'] = 'Reject'; | |
$data['respon_pasien'] = '3'; | |
$this->model_anggota->manage_pasien('update', $id, $data); | |
// MULAI NOTIFIKASI BATAL KONSULTASI | |
$id_konsultasi = $id; | |
// detail konsultasi | |
$detail_konsultasi = $this->model_anggota->manage_pasien('cek', $id, ''); | |
$detail_konsultasi = $detail_konsultasi['baris']; | |
$id_anggota = $detail_konsultasi->id_pasien; | |
$id_konsultan = $detail_konsultasi->id_konsultan; | |
$id_fasilitas = $detail_konsultasi->id_fasilitas; | |
// detail pasien | |
$detail_pasien = $this->model_anggota->manage_anggota('cek', $id_anggota, ''); | |
$detail_pasien = $detail_pasien['baris']; | |
// info notifikasi | |
$info = $detail_pasien->nama_anggota . 'membatalkan konsultasi'; | |
$idpasien = $detail_pasien->id_anggota; | |
// init email | |
$this->load->plugin('phpmailer'); | |
$emailFrom = $this->config->item('email'); | |
$namaFrom = $this->config->item('appname'); | |
$subjectMsg = 'Notifikasi'; | |
// notifikasi ke superadmin | |
$link = 'admin/home/lihatrespon/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->superadmin($idpasien, 'anggota', 'superadmin', 0, $info, $link); | |
// email ke superadmin | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas(0); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
// notifikasi ke dokter | |
$link = 'konsultan/home/lihatrespon/' . $id_konsultasi; | |
$this->model_notifikasi_konsultasi->konsultan('single', $idpasien, 'anggota', $id_konsultan, $info, $link); | |
// email ke dokter | |
$konsultan = $this->konsultan_model->getKonsultanDetail($id_konsultan); | |
send_email_smtp($emailFrom,$namaFrom,$konsultan->email,$subjectMsg,$info,true); | |
// notifikasi ke fasilitas yang dikehendaki | |
$link = 'fasilitas/home/lihathistory/' . $id_fasilitas; | |
$this->model_notifikasi_konsultasi->fasilitas('single', $idpasien, 'anggota', $id_fasilitas, $info, $link); | |
// email ke fasilitas yang dikehendaki | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas($id_fasilitas); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
$kota = $this->model_anggota->getIDKota($detail_konsultasi->id_fasilitas)->id_kota; | |
$fasilitas = $this->model_anggota->getFasilitasSekota($kota, $detail_konsultasi->id_fasilitas); | |
if ($fasilitas) { | |
foreach ($fasilitas as $id): | |
// notifikasi ke se kota | |
$link = 'fasilitas/home/lihathistory/' . $id->id_fasilitas; | |
$this->model_notifikasi_konsultasi->fasilitas('single', $idpasien, 'anggota', $id->id_fasilitas, $info, $link); | |
// email ke fasilitas yang se kota | |
$superadmin = $this->superadmin_model->get_all_by_fasilitas($id->id_fasilitas); | |
send_email_smtp($emailFrom,$namaFrom,$superadmin,$subjectMsg,$info); | |
endforeach; | |
} | |
// AKHIR NOTIFIKASI BATAL KONSULTASI | |
$message = 'Konsultasi telah dibatalkan'; | |
$error = false; | |
$result = array( | |
'message' => $message, | |
'error' => $error | |
); | |
echo json_encode($result); | |
} | |
public function get_histori_konsultasi() | |
{ | |
$id_anggota = $this->input->post('id_anggota'); | |
$jumlah = $this->model_anggota->countKonsultasiHistori($id_anggota); | |
$data = $this->model_anggota->getKonsultasiHistori($id_anggota); | |
$result = array( | |
'jumlah' => $jumlah, | |
'data' => $data | |
); | |
echo json_encode($result); | |
} | |
public function get_detail_histori_konsultasi() | |
{ | |
$id_konsultasi = $this->input->post('id_konsultasi'); | |
$data = $this->model_anggota->detailpasien($id_konsultasi); | |
echo json_encode($data); | |
} | |
} | |
/* End of file anggota.php */ | |
/* Location: ./application/controllers/remote/anggota.php */ | |
kondisi khusus untuk yang konsultasi terjadwal | |
<?php $i=1;foreach($opt_pasien as $row): | |
if (date('Y-m-d', strtotime($row->tanggal)) >= date('Y-m-d', strtotime("Today"))) {?> | |
<tr> | |
<td><b>Fasilitas :</b> <?php echo $row->klinik;?><br> | |
<?php echo $row->hari . ' <b>|</b> ' . date("d-m-Y", strtotime($row->tanggal)) . ' <b>|</b> ' . $row->jam;?></td> | |
<td><?php echo $row->dokter;?><br>(<?php echo $row->spesialis;?>)</td> | |
<td><?php if($row->status=="FBatal"){ echo "dibatalkan oleh klinik"; } else { echo $row->status; }?></td> | |
<td> | |
<?php if ($row->respon_pasien=="2") { ?> | |
<a href="<?php echo base_url();?>index.php?/anggota/home/pembatalanklinik/<?php echo $row->id;?>" class="btn" rel="tooltip" title="" data-original-title="lihat pesan klinik"><i class="icon-list"></i></a> | |
<?php } elseif (date('Y-m-d', strtotime($row->tanggal)) > date('Y-m-d', strtotime("Today"))) { ?> | |
<a href="<?php echo base_url();?>index.php?/anggota/home/batalkonsultasi3/<?php echo $row->id;?>" class="btn" rel="tooltip" title="" data-original-title="Batalkan Konsultasi"><i class="icon-remove"></i></a> | |
<?php } ?> | |
</td> | |
</tr> | |
<?php } $i++;endforeach;?> | |
// ini yang list respon konsultasi | |
<tbody> | |
<?php | |
$tgl = $this->model_anggota->getTanggal($detail->id); | |
$klinik = $this->model_anggota->getKlinikSekota($tgl); | |
$i=1; | |
foreach($klinik as $row):?> | |
<?php if(($row->utama=="1" or $row->disetujui=="1" or $row->disetujui=="3") and $row->tampilkan=="1") { ?> | |
<tr> | |
<td><?php echo $i;?></td> | |
<td><b>Fasilitas :</b> <?php echo $row->klinik;?><br> | |
<?php echo $row->hari.' | '.date("d-m-Y", strtotime($row->tanggal));?> | Jam <?php echo $row->jam;?> | |
</td> | |
<td> | |
<?php | |
if ($row->disetujui=="0") { | |
echo "Belum direspon"; } | |
elseif ($row->disetujui=="1") { | |
echo "Accept"; } | |
elseif ($row->disetujui=="2") { | |
echo "Decline"; } | |
elseif ($row->disetujui=="3") { | |
echo "Alternative"; } | |
?> | |
</td> | |
<td> | |
<?php if ($row->keterangan == ''):?> | |
<?php echo '-';?> | |
<?php else:?> | |
<?php echo $row->keterangan;?> | |
<?php endif;?> | |
</td> | |
<td> | |
<?php if ($row->disetujui=="1") { ?> | |
<a href="<?php echo base_url();?>index.php?/anggota/home/terimakonsultasi/<?php echo $row->idkonsultasi .'/'. $this->uri->segment(4);?>" class="btn" rel="tooltip" title="" data-original-title="Accept"><i class="icon-ok"></i></a> | |
<?php } ?> | |
<?php if (date('Y-m-d', strtotime($row->tanggal)) > date('Y-m-d', strtotime("Today"))) { ?> | |
<a href="<?php echo base_url();?>index.php?/anggota/home/batalkonsultasi0/<?php echo $row->idkonsultasi;?>" class="btn" rel="tooltip" title="" data-original-title="Batalkan Konsultasi"><i class="icon-remove"></i></a> | |
<?php } ?> | |
</td> | |
</tr> | |
<?php } ?> | |
<?php $i++; endforeach;?> | |
</tbody> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment