153 lines
5.0 KiB
PHP
153 lines
5.0 KiB
PHP
<?php
|
|
include("core/main.php");
|
|
|
|
$NIP1 = (array_key_exists('NIP', $_SESSION)) ? $_SESSION['NIP'] : $_REQUEST['EMAIL'];
|
|
$sql = "SELECT * FROM m_login WHERE NIP = '".$NIP1."' and aktif = 1";
|
|
$query = $db->query($sql);
|
|
|
|
if($query->numRows() > 0){
|
|
$data = $query->fetchAll()[0];
|
|
if(password_verify($_REQUEST['PWD'],$data['pwd']))
|
|
{
|
|
$_SESSION['SES_REG'] = $data['ses_reg'];
|
|
$_SESSION['SES_KDUNIT'] = $data['kdunit'];
|
|
$_SESSION['KDUNIT'] = $data['kdunit'];
|
|
$_SESSION['NIP'] = $data['nip'];
|
|
$_SESSION['NAMA_PEGAWAI'] = ($data['nama_pegawai'] != NULL || $data['nama_pegawai'] != '') ? $data['nama_pegawai'] : $NIP1;
|
|
$_SESSION['KDPERAWAT'] = ($data['kdperawat'] != NULL || $data['kdperawat'] != '') ? $data['kdperawat'] : NULL;
|
|
$_SESSION['KDDOKTER'] = ($data['kddokter'] != NULL || $data['kddokter'] != '') ? $data['kddokter'] : NULL;
|
|
$_SESSION['SHIFT'] = $_REQUEST['SHIFT'];
|
|
$_SESSION['DEPARTEMEN'] = $data['departemen'];
|
|
$_SESSION['nipb'] = $data['nipb'];
|
|
$get_tempat_layanan = $db->query("SELECT no,nama from m_ruang where kdunit = ".$data['kdunit']." order by no");
|
|
if($get_tempat_layanan->numRows() > 0) {
|
|
$_SESSION['tempat_layanan'] = $get_tempat_layanan->fetchFirst()['no'];
|
|
}
|
|
// GET PAGE ROLES
|
|
$sql_page = "SELECT * FROM m_login_akses WHERE NIP = '$NIP1' AND ROLES = '{$data['roles']}' AND KDUNIT = '{$data['kdunit']}'";
|
|
$sql_page_akses = $db->query($sql_page);
|
|
$arr_akses = array();
|
|
|
|
foreach($sql_page_akses->fetchAll() as $ds){
|
|
$arr_akses[$ds['link']] = array(
|
|
'v'=>$ds['can_view'],
|
|
'e'=>$ds['can_edit'],
|
|
'd'=>$ds['can_delete'],
|
|
'perawat'=>$ds['is_perawat'],
|
|
'dokter'=>$ds['is_dokter'],
|
|
'verif'=>$ds['is_verifikator'],
|
|
'piutang'=>$ds['is_kreditur'],
|
|
'kasir'=>$ds['is_kasir'],
|
|
'pelunasan'=>$ds['is_pelunasan'],
|
|
'rajal_emergency'=>$ds['rajal_emergency'],
|
|
'rajal_reguler'=>$ds['rajal_reguler'],
|
|
'rajal_eksekutif'=>$ds['rajal_eksekutif'],
|
|
'ranap_highcare'=>$ds['ranap_highcare'],
|
|
'ranap_reguler'=>$ds['ranap_reguler'],
|
|
'ranap_eksekutif'=>$ds['ranap_eksekutif'],
|
|
);
|
|
}
|
|
|
|
// GET UNIT KERJA & RUANG USER
|
|
if($data['kdperawat'] != 0 && $data['kddokter'] == 0)
|
|
{
|
|
// select perawat
|
|
$q_perawat = "SELECT unit_kerja,m_perawat.ruang,m_ruang.kelompok FROM m_perawat
|
|
LEFT JOIN m_ruang on m_ruang.kdunit = m_perawat.unit_kerja
|
|
where IDPERAWAT = ".$data['kdperawat']." and m_perawat.aktif = 1 and m_ruang.jumlah_tt > 0 LIMIT 1";
|
|
$d_perawat = $db->query($q_perawat);
|
|
|
|
if($d_perawat->numRows() > 0) {
|
|
$fetch_perawat = $d_perawat->fetchAll()[0];
|
|
$_SESSION['SES_RUANG'] = $fetch_perawat['ruang'];
|
|
$_SESSION['SES_KELRUANG'] = $fetch_perawat['kelompok'];
|
|
}
|
|
}
|
|
// jika dokter login maka beri pilihan rajal atau ranap
|
|
if($_REQUEST['status_login'] == 'dokter')
|
|
{
|
|
$_SESSION['disable_warning'] = false;
|
|
$tempat = $_REQUEST['tempat_layanan'];
|
|
if($tempat == 'ranap')
|
|
{
|
|
$data['roles'] = "11";
|
|
}
|
|
elseif($tempat == 'rtindakan')
|
|
{
|
|
$data['roles'] = "28";
|
|
}
|
|
elseif($data['st_dokter_emergency'] == 1) {
|
|
$_SESSION['SES_KDUNIT'] = $_SESSION['poli_igd'];
|
|
$_SESSION['KDUNIT'] = $_SESSION['poli_igd'];
|
|
$get_tempat_layanan = $db->query("SELECT no,nama from m_ruang where kdunit = ".$_SESSION['poli_igd']);
|
|
if($get_tempat_layanan->numRows() > 0) {
|
|
$_SESSION['tempat_layanan'] = $get_tempat_layanan->fetchFirst()['no'];
|
|
}
|
|
}
|
|
}
|
|
elseif($_REQUEST['status_login'] == 'perawat') {
|
|
$tempat = $_REQUEST['tempat_layanan'];
|
|
if($tempat == 'rtindakan')
|
|
{
|
|
$data['roles'] = "28";
|
|
}
|
|
elseif($tempat == 'ranap')
|
|
{
|
|
$data['roles'] = "11";
|
|
}
|
|
}
|
|
|
|
$_SESSION['page_akses'] = $arr_akses;
|
|
|
|
$cek_versi = $db->query("SELECT * from app_version order by publish_date desc");
|
|
$data_versi = $cek_versi->fetchFirst();
|
|
|
|
$_SESSION['app_version'] = $data_versi['version'];
|
|
$_SESSION['app_publish'] = $data_versi['publish_date'];
|
|
|
|
// get rolemenu from this user
|
|
$get_role = $db->query("SELECT * from user_roles where ROLEID = {$data['roles']}");
|
|
if($get_role->numRows() > 0)
|
|
{
|
|
$data_roles = $get_role->fetchFirst();
|
|
$_SESSION['ROLES'] = $data['roles'];
|
|
$_SESSION['rolename'] = $data_roles['rolename'];
|
|
$_SESSION['user_rolemenu'] = $data_roles['rolemenu'];
|
|
// $get_role_menu = $db->query("SELECT m_menu.link from role_menu
|
|
// join m_menu on m_menu.menu_id = role_menu.menu_id
|
|
// where role_id = {$data['roles']}");
|
|
// $arr_role_menu = [];
|
|
// if($get_role_menu->numRows() > 0) {
|
|
// foreach($get_role_menu->fetchAll() as $rm) {
|
|
// if($rm['link'] != null || $rm['link'] != '') {
|
|
// $arr_role_menu[] = $rm['link'];
|
|
// }
|
|
// }
|
|
|
|
// }
|
|
// $_SESSION['user_rolemenu'] = implode(",", $arr_role_menu);
|
|
$_SESSION['first_direction'] = $data_roles['first_direction'];
|
|
if($data_roles['first_direction'] != '')
|
|
{
|
|
header("location:index.php?link=".$data_roles['first_direction']);
|
|
}
|
|
else {
|
|
header("location:index.php");
|
|
}
|
|
}
|
|
else {
|
|
header("location:index.php");
|
|
}
|
|
|
|
}
|
|
else {
|
|
header('location:login.php?e=2');
|
|
}
|
|
|
|
}else{
|
|
header('location:login.php?e=1');
|
|
}
|
|
|
|
?>
|
|
|