Académique Documents
Professionnel Documents
Culture Documents
php
Class Guest_model extends Model
{
function __construct()
{
parent::Model();
}
function getIdPerusahaan($name)
{
return $this->db->query("select id_prs from tb_wf_perusahaan where n
ame='".$name."'")->row()->id_prs;
}
function getNamaPerusahaan($id_prs)
{
return $this->db->query('select name from tb_wf_perusahaan where id_
prs='.$id_prs)->row()->name;
}
function getCodeTravel($namaPerusahaan)
{
return $this->db->query("EXEC sp_wf_carinomortransaksi '".date("Y",t
ime())."', '".$namaPerusahaan."', 'TR', 1")->row()->computed;
}
function updateCodeTravel($namaPerusahaan)
{
return $this->db->query("EXEC sp_wf_carinomortransaksi '".date("Y",t
ime())."', '".$namaPerusahaan."', 'TR', 2");
}
function dataDepartemen()
{
if(in_array('SUPERVISOR', $this->session->userdata('tipe_user')))
{
return $this->db->query("select distinct UPPER(LTRIM(RTRIM(depar
temen))) as departemen
from tb_wf_levelapproval
where NIK='".$this->session->userdata('NIK')
."'
order by departemen");
}
else
{
$where = "";
if(in_array('USER', $this->session->userdata('tipe_user')))
$where = " and departemen='".$this->session->userdata('depar
temen')."' ";
return $this->db->query("select distinct UPPER(LTRIM(RTRIM(depar
temen))) as departemen
from tb_wf_infokaryawan
where id_prs=".$this->session->userdata(
'id_prs')." ".$where."
order by departemen");
}
}
function jml_data_karyawan()
{
$this->db->select('count(NIK) as jml');
$this->db->from('tb_wf_infokaryawan');
return $this->db->get();
}
function data_karyawan_master($limit, $offset)
{
if($offset == 0)
{
$sql = " SELECT distinct TOP $limit *
from tb_wf_infokaryawan
order by NIK asc";
}
else
{
$sql = "SELECT distinct TOP $limit *
from tb_wf_infokaryawan
WHERE NIK NOT IN (
SELECT distinct TOP $offset NIK
from tb_wf_infokaryawan
order by NIK asc
)
order by NIK asc ";
}
$query = $this->db->query($sql);
if ($query->result())
{
return $query->result();
}
else
{
return null;
}
}
function data_nik()
{
return $this->db->query("select NIK, nmkaryawan from tb_wf_infok
aryawan where id_prs=".$this->session->userdata('id_prs')." order by nmkaryawan
");
}
function data_nik_edit($id_prs)
{
return $this->db->query("select NIK, nmkaryawan from tb_wf_infok
aryawan where id_prs=".$id_prs." order by nmkaryawan");
}
function data_bisnisunit()
{
return $this->db->query("EXEC sp_wf_caricostcenter ' '");
}
/*
{
");
}
function data_detTransport($code_travel)
{
return $this->db->query(' select * '
. ' from tr_wf_t
ravel_detTransport as dt '
. ' inner join t
b_wf_travel_transport as t on dt.idtrans=t.idtrans '
. ' inner join t
b_wf_travel_shift as s on dt.idshift=s.idshift '
. ' where notrav
el="'.$code_travel.'" order by id');
}
function data_detHotel($code_travel)
{
return $this->db->query(' select * '
. ' from tr_travel_detHotel as dh '
. ' inner join tb_wf_travel_inap as i on dh.
idinap=i.idinap '
. ' inner join tb_wf_travel_zona as z on dh.
zonaID=z.idzona '
. ' where notravel="'.$code_travel.'" order
by id');
}
function data_detVisa($code_travel)
{
return $this->db->query(' select * '
. ' from tr_wf_travel_detVisa as dv '
. ' inner join tb_wf_negara as n on dv.negar
aID=n.id '
. ' where codeTravel=\''.$code_travel.'\' or
der by dv.id');
}
//untuk simpan data
function save_upload($names,
$codetravel,
$dept,
$uploadby,
$status,
$updatedby,
$nik,
$nama,
$jabatan,
$bank_name,
$account_no,
$phone_number,
$departemen,
$atasnama,
$nik_atasnama,
$lokasi,
$kategori,
$datepicker,
$datepicker2,
$lama,
$atasan,
$atasan2,
$maksud,
$bisnisunit,
$costcenter,
$cashadvance,
$hotel,
$uangsaku,
$u_training,
$CAamount,
$CAremark
)
{
if (empty($atasan2) or ($atasan2=='') or ($atasan2==null)){
$atasan2 = '-';
}
#bank_name, account_no, phone_number
if ($names!='')
{
$sp ="insert into tb_request(filename,uploadby,status,updatedby,
updatedon,dept,nama,nik,jabatan,bank_name, account_no, phone_number,
lokasi_tujuan,tgl_mulai,tgl_akhir,maksud,hotel,uangsaku,
atasnama,nik_atasnama,kategori,lama,app1,app1b,app2,app3,app4,app5,posisinik,
posisiapp,code_travel,atasan,atasan2,bisnisunit,costcent
er,cashadvance,CAamount,CAremark) values
('$names','$uploadby','$status','$updatedby',GETDATE(),'
$departemen','$nama','$nik','$jabatan','$bank_name','$account_no','$phone_number
',
'$lokasi','$datepicker','$datepicker2','$maksud',
$hotel,$u_training,'$atasnama','$nik_atasnama','$kategor
i','$lama',0,0,0,0,0,0,'$atasan','app1','$codetravel','$atasan','$atasan2','$bis
nisunit','$costcenter','$cashadvance',$CAamount,'$CAremark')";
$data_upload=$this->db->query($sp);
}
else
{
$sp ="insert into tb_request(filename,uploadby,status,updatedby,
updatedon,dept,nama,nik,jabatan,bank_name, account_no, phone_number,
lokasi_tujuan,tgl_mulai,tgl_akhir,maksud,hotel,uangsaku,
atasnama,nik_atasnama,kategori,lama,app1,app1b,app2,app3,app4,app5,posisinik,
posisiapp,code_travel,atasan,atasan2,bisnisunit,costcent
er,cashadvance,CAamount,CAremark) values
('kosong','$uploadby','$status','$updatedby',GETDATE(),'$departe
men','$nama','$nik','$jabatan','$bank_name','$account_no','$phone_number',
'$lokasi','$datepicker','$datepicker2','$maksud',
$hotel,$u_training,'$atasnama','$nik_atasnama','$kategor
i','$lama',0,0,0,0,0,0,'$atasan','app1','$codetravel','$atasan','$atasan2','$bis
nisunit','$costcenter','$cashadvance',$CAamount,'$CAremark')";
$data_upload=$this->db->query($sp);
}
return $data_upload;
}
function saveDetTransport($rec)
{
$this->db->insert("tr_wf_travel_detTransport", $rec);
}
function saveDetHotel($rec)
{
$this->db->insert("tr_travel_detHotel", $rec);
}
function saveDetVisa($rec)
{
$this->db->insert("tr_wf_travel_detVisa", $rec);
}
function data_request($nik)
{
return $this->db->query("select * from tb_request where uploadby
='$nik' order by noid desc");
}
function get_data_request($code_travel)
{
return $this->db->query("select * from tb_request where code_tra
vel='$code_travel'");
}
function get_data_requestx($noid)
{
return $this->db->query("select a.*, b.kdgol
from tb_request
a
inner join tb_wf
_infokaryawan b on a.nik_atasnama=b.NIK
where noid='$noi
d'");
}
function cekDetTransport($codetravel)
{
return $this->db->query("select count(id) as jumlah from tr_wf_trav
el_detTransport where notravel='".$codetravel."'")->row()->jumlah;
}
function hapusDetTransport($codetravel)
{
$this->db->where("notravel", $codetravel);
$this->db->delete("tr_wf_travel_detTransport");
}
function cekDetHotel($codetravel)
{
return $this->db->query("select count(id) as jumlah from tr_travel_
detHotel where notravel='".$codetravel."'")->row()->jumlah;
}
function hapusDetHotel($codetravel)
{
$this->db->where("notravel", $codetravel);
$this->db->delete("tr_travel_detHotel");
}
function cekDetVisa($codetravel)
{
return $this->db->query("select count(id) as jumlah from tr_wf_trav
el_detVisa where codeTravel='".$codetravel."'")->row()->jumlah;
}
function hapusDetVisa($codetravel)
{
$this->db->where("codeTravel", $codetravel);
$this->db->delete("tr_wf_travel_detVisa");
}
function cekFileExist($noid)
{
$this->db->select("filename");
$this->db->from("tb_request");
$this->db->where("noid", $noid);
return $this->db->get();
}
function edit_request($rec, $noid)
{
$this->db->where("noid", $noid);
return $this->db->update("tb_request", $rec);
}
function getEmailEditRequest($noid, $app3)
{
$sql ="select distinct(k.email) as email"
. " from tb_notes as n "
. " inner join tb_wf_infokaryawan as k on n.uid=k.NIK "
. " where noid=".$noid." and uid!='".$this->session->userdata("n
ik")."' and departemen!='FINANCE' ";
if($app3==0)
{
$sql .= " and departemen!='GA'";
}
return $this->db->query($sql);
}
function confirm_request($code_travel,$app1,$NIK,$name)
{
if ($app1==0)
{
$spx ="select noid from tb_request where code_travel='".$code_tr
avel."'";
$data_id=$this->db->query($spx);
foreach($data_id->result() as $rowx)
{
$nomid = $rowx->noid;
}
$jabatan = 'USER';
/*$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_d
ate) values
DATE())";
('$nomid','$NIK','$name','CONFIRM','SUBMIT BY $user',GET
*/
$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values
('$nomid','$NIK','$name','SUBMIT','$jabatan',GETDATE())"
;
$this->db->query($sp2);
}
}
function get_email_app1($nik)
{
return $this->db->query("select * from tb_wf_infokaryawan where
NIK='$nik'");
}
function get_email($NIK)
{
return $this->db->query("select * from tb_wf_infokaryawan where
NIK='$NIK'");
}
/*function get_email_dept_approved($noid, $nikAtasan)
{
return $this->db->query(" select distinct a.uid, b.email
from tb_
notes a
inner jo
in tb_wf_infokaryawan b on a.uid=b.NIK
where a.
noid='$noid' and a.uid!='".$nikAtasan."'");
}*/
function get_email_dept_approved($noid, $nikAtasan)
{
return $this->db->query("select distinct a.uid, b.email, a.nom
from tb_
notes a
inner jo
in tb_wf_infokaryawan b on a.uid=b.NIK
where a.
noid='$noid'
and a.n
om=(select MIN(nom) from tb_notes where noid='$noid')
");
}
/*
function get_email_dept($noid)
{
return $this->db->query("
notes a
inner jo
in tb_wf_infokaryawan b on a.uid=b.NIK
where a.
noid='$noid'");
}
*/
function get_email_dept($noid)
{
return $this->db->query("
from tb_
notes a
inner jo
in tb_wf_infokaryawan b on a.uid=b.NIK
where a.
noid='$noid'");
}
function get_email_NIK_TRAVEL($nik)
{
return $this->db->query("select distinct (NIK) as NIK from tb_wf
_approval_travel where NIK='".$nik."'");
}
function get_email_GA($id_prs, $office)
#Unit
{
return $this->db->query("select distinct at2.GA as NIK ,k.email,
k.nmkaryawan from tb_wf_approval_travel2 at2
inner jo
in tb_wf_infokaryawan k on at2.GA=k.NIK
where at2.id_prs
='".$id_prs."' and at2.office='".$office."'");
}
function get_email_GA_TRAVEL($id_prs, $office)
#HO
{
return $this->db->query("select distinct at2.GA as NIK ,k.email,
k.nmkaryawan from tb_wf_approval_travel2 at2
inner jo
in tb_wf_infokaryawan k on at2.GA=k.NIK
where at2.id_prs
='".$id_prs."' and at2.office='".$office."'");
}
function get_email_Director($nikAtasan2)
{
return $this->db->query("select distinct a.NIK,a.email,nmkaryawa
n
from tb_wf_infok
aryawan a
inner join tb_wf
_user b on a.NIK=b.NIK
where a.NIK='$ni
kAtasan2'");
}
function CekIDPrs($NIK)
{
return $this->db->query("select id_prs as id_prs from tb_wf_info
karyawan where nik='".$NIK."' ");
}
function CekRegion($NIK)
{
return $this->db->query("select k.*, p.region as Region from tb_
wf_infokaryawan k, tb_wf_perusahaan p where k.nik='".$NIK."' and k.id_prs=p.id_p
rs");
}
function get_email_GAMGR($Region)
{
return $this->db->query("select distinct a.NIK,a.email,nmkaryawa
n, p.region
from tb_wf_infokaryawan
a
inner jo
in tb_wf_user b on a.NIK=b.NIK
inner jo
in tb_wf_perusahaan p on a.id_prs=p.id_prs
where b.
roleID='3' and p.region='".$Region."' ");
}
function get_email_FINANCE($id_prs ,$office)
{
return $this->db->query("select distinct at2.FINANCE as NIK ,k.e
mail,k.nmkaryawan from tb_wf_approval_travel2 at2
inner jo
in tb_wf_infokaryawan k on at2.FINANCE=k.NIK
where at2.id_prs
='".$id_prs."' and at2.office='".$office."'");
}
function get_email_ACCOUNTING($id_prs, $office)
{
return $this->db->query("select distinct at2.ACCOUNTING as NIK ,
k.email,k.nmkaryawan from tb_wf_approval_travel2 at2
inner jo
in tb_wf_infokaryawan k on at2.ACCOUNTING=k.NIK
where at2.id_prs
='".$id_prs."' and at2.office='".$office."'");
}
function data_request_app($nik,$tipe)
{
$data_request=$this->db->query("select * from tb_request where (
CHARINDEX('".$nik."',posisinik) > 0) and ((status not like '%COMPLETED%' ) and
(status not like '%REJECTED%')) order by noid desc ");
return $data_request;
}
function approval($noid,$app1,$app1b,$app2,$app3,$app4,$app5,$dept,$NIK,
$nama,$posisinik)
{
if($app1==0 && $app2==0 && $app3==0 && $app4==0 && $app5==0)
{
if(in_array('SUPERVISOR', $this->session->userdata('tipe
_user')))
{
if ($app1b==1){
$data_request=$this->db->query("update t
b_request set app1='1', app1b='".$app1b."', status='WAITING GA VERIFICATION', p
osisinik='".$posisinik."', posisiapp='app2'
where noid='$noid' and app1='0'
and app2='0' and app3='0' and app4='0' and app5='0'");
} elseif ($app1b==0){
$data_request=$this->db->query("
update tb_request set app1=1, app1b='".$app1b."', status='WAITING DIRECTOR VERI
FICATION', posisinik='".$posisinik."', posisiapp='app1b'
where noid='$noid' and app1=0 an
d app2=0 and app3=0 and app4=0 and app5=0");
}
$jabatan = 'SUPERVISOR';
}
}
elseif($app1==1 && $app1b==0 && $app2==0 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('DIRECTOR', $this->session->userdata('tipe_u
ser')))
{
$data_request=$this->db->query("update tb_reques
t set app1b=1, status='WAITING GA VERIFICATION',posisinik='".$posisinik."',posis
iapp='app2'
where status <> 'NEW' and noid='$noid' and app1=1 and app2=0 and app3=0 and app4
=0 and app5=0");
$jabatan = 'DIRECTOR';
}
}
elseif($app1==1 && $app1b==1 && $app2==0 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('GA STAFF', $this->session->userdata('tipe_u
ser')))
{
$data_request=$this->db->query("update tb_reques
t set app2=1,status='WAITING GA MGR APPROVAL',posisinik='".$posisinik."',posisia
pp='app3'
where status<>'NEW' and noid='$noid' and app1=1 and app2=0 and app3=0 and app4=0
and app5=0");
$jabatan = 'GA STAFF';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('GA MGR', $this->session->userdata('tipe_use
r')))
{
$data_request=$this->db->query("update tb_reques
t set app3=1,status='WAITING ACCOUNTING PROCESS',posisinik='".$posisinik."',posi
siapp='app4'
where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=0 and app4=0
and app5=0");
$jabatan = 'GA MGR';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==1 && $app4==0
&& $app5==0)
{
if(in_array('ACCOUNTING TR', $this->session->userdata('t
ipe_user')))
{
$data_request=$this->db->query("update tb_reques
t set app4=1,status='WAITING FINANCE APPROVAL',posisinik='".$posisinik."',posisi
app='app5'
where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=1 and app4=0
and app5=0");
$jabatan = 'ACCOUNTING TR';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==1 && $app4==1
&& $app5==0)
{
if(in_array('FINANCE', $this->session->userdata('tipe_us
er')))
{
$data_request=$this->db->query("update tb_reques
t set app5=1,status='COMPLETED',posisinik='".$posisinik."',posisiapp='app6'
where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=1 and app4=1
and app5=0");
$jabatan = 'FINANCE';
}
}
/*$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_d
ate) values
('$noid','$NIK','$nama','APPROVE
D','APPROVED BY $nama',GETDATE())";
$this->db->query($sp2);*/
$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values
('$noid','$NIK','$nama','APPROVE
D','$jabatan',GETDATE())";
$this->db->query($sp2);
return $data_request;
}
function approve_request($noid,$dept,$tipe,$NIK,$nama,$posisinik)
{
if ($dept!='GA' && $dept!='FINANCE')
{
if ($tipe == 'MGR')
{
$data_request=$this->db->query("update tb_reques
t set app1=1,status='WAITING GA VERIFICATION',posisinik='".$posisinik."',posisia
pp='app2' "
. "
where st
atus<>'NEW' and noid='$noid' and app1=0 and app2=0 and app3=0 and app4=0");
$jabatan = 'MGR';
}
$this->session->set_flashdata('message','<blink>Approved
Success</blink>');
}
else
{
if ($dept=='GA')
{
if ($tipe != 'MGR')
{
$data_request=$this->db->query("update t
b_request set app2=1,status='WAITING GA MGR APPROVAL',posisinik='".$posisinik."'
,posisiapp='app3' "
. " where status<>'NEW' and
noid='$noid' and app1=1 and app2=0 and app3=0 and app4=0");
$this->session->set_flashdata('message','<blink>Approved
Success</blink>');
}
elseif($tipe == 'MGR')
{
$data_request=$this->db->query("update t
b_request set app3=1,status='WAITING ACCOUNTING PROCESS',posisinik='".$posisinik
."',posisiapp='app4' "
. " where status<>'NEW' and
noid='$noid' and app1=1 and app2=1 and app3=0 and app4=0");
$this->session->set_flashdata('message',
'<blink>Approved Success</blink>');
}
}
if ($dept == 'ACCOUNTING TR')
{
$data_request=$this->db->query("update tb_reques
t set app4=1,status='WAITING FINANCE APPROVAL',posisinik='".$posisinik."',posisi
app='app5' "
. " where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=1 and ap
p4=0");
$this->session->set_flashdata('message','<blink>
Approved Success</blink>');
}
if ($dept == 'FINANCE')
{
$data_request=$this->db->query("update tb_reques
t set app5=1,status='COMPLETED',posisinik='".$posisinik."',posisiapp='app6' "
. " where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=1 and ap
p4=1");
$this->session->set_flashdata('message','<blink>
Approved Success</blink>');
}
}
$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values
('$noid','$NIK','$nama','APPROVE
D','APPROVED BY $nama',GETDATE())";
$this->db->query($sp2);
return $data_request;
}
function approval2($noid,$app1,$app1b,$app2,$app3,$app4,$app5,$dept,$NIK
,$nama,$posisinik,$usr_tipe)
{
if($app1==0 && $app2==0 && $app3==0 && $app4==0 && $app5==0)
{
if(in_array('SUPERVISOR', $usr_tipe))
{
if ($app1b==1){
$data_request=$this->db->query("update t
b_request set app1=1, app1b='".$app1b."', status='WAITING GA VERIFICATION', pos
isinik='".$posisinik."', posisiapp='app2'
where noid='$noid' and app1=0 an
d app2=0 and app3=0 and app4=0 and app5=0");
} elseif ($app1b==0){
$data_request=$this->db->query("
update tb_request set app1=1, app1b='".$app1b."', status='WAITING DIRECTOR VERI
FICATION', posisinik='".$posisinik."', posisiapp='app1b'
where noid='$noid' and app1=0 an
d app2=0 and app3=0 and app4=0 and app5=0");
}
$jabatan = 'SUPERVISOR';
}
}
elseif($app1==1 && $app1b==0 && $app2==0 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('DIRECTOR', $usr_tipe))
{
$data_request=$this->db->query("update tb_reques
t set app1b=1, status='WAITING GA VERIFICATION',posisinik='".$posisinik."',posis
iapp='app2'
where status <> 'NEW' and noid='$noid' and app1=1 and app2=0 and app3=0 and app4
=0 and app5=0");
$jabatan = 'DIRECTOR';
}
}
elseif($app1==1 && $app1b==1 && $app2==0 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('GA STAFF', $usr_tipe))
{
$data_request=$this->db->query("update tb_reques
t set app2=1,status='WAITING GA MGR APPROVAL',posisinik='".$posisinik."',posisia
pp='app3'
where status<>'NEW' and noid='$noid' and app1=1 and app2=0 and app3=0 and app4=0
and app5=0");
$jabatan = 'GA STAFF';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('GA MGR', $usr_tipe))
{
$data_request=$this->db->query("update tb_reques
t set app3=1,status='WAITING ACCOUNTING PROCESS',posisinik='".$posisinik."',posi
siapp='app4'
where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=0 and app4=0
and app5=0");
$jabatan = 'GA MGR';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==1 && $app4==0
&& $app5==0)
{
if(in_array('ACCOUNTING TR', $usr_tipe))
{
$data_request=$this->db->query("update tb_reques
t set app4=1,status='WAITING FINANCE APPROVAL',posisinik='".$posisinik."',posisi
app='app5'
where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=1 and app4=0
and app5=0");
$jabatan = 'ACCOUNTING TR';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==1 && $app4==1
&& $app5==0)
{
if(in_array('FINANCE', $usr_tipe))
{
$data_request=$this->db->query("update tb_reques
t set app5=1,status='COMPLETED BY FINANCE',posisinik='".$posisinik."',posisiapp=
'app6'
where status<>'NEW' and noid='$noid' and app1=1 and app2=1 and app3=1 and app4=1
and app5=0");
$jabatan = 'FINANCE';
}
}
$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values
('$noid','$NIK','$nama','APPROVE
D','$jabatan',GETDATE())";
$this->db->query($sp2);
return $data_request;
}
function approve_request_nofinance($noid,$NIK,$nama)
{
$this->db->query("update tb_request set app3=1,status='COMPLETED
' "
. " where noid='$noid' and app1=1 and app2=1 and app3=0 and app4=0");
$jabatan = 'GA MGR';
$this->session->set_flashdata('message','Approved Success');
/*$sql ="insert into tb_notes(noid,uid,name,status,notes,entry_d
ate) values
('$noid','$NIK','$nama','APPROVE
D','APPROVED BY $nama',GETDATE())";*/
$sql ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values
('$noid','$NIK','$nama','APPROVE
D','$jabatan',GETDATE())";
$this->db->query($sql);
}
function data_request_app_email($posisinik)
{
return $this->db->query("select * from tb_request where posisinik='$
posisinik' and app1=0 and app1b=0 and app2=0 and app3=0 and app4=0 order by noi
d desc");
}
/*
function data_request_app_email2($posisinik)
{
return $this->db->query("select * from tb_request where posisini
k='$posisinik' and app1=1 and app2=0 and app3=0 and app4=0 order by noid desc");
}
function data_request_app_email3($posisinik)
{
return $this->db->query("select * from tb_request where posisini
k='".$posisinik."' and status<>'NEW' and app1=1 and app2=1 and app3=0 and app4=0
order by noid desc");
}
function data_request_app_email4($posisinik)
{
return $this->db->query("select * from tb_request where posisini
k='".$posisinik."' and status<>'NEW' and app1=1 and app2=1 and app3=1 and app4=0
order by noid desc");
}*/
function data_request_app_email2($posisinik)
{
return $this->db->query("select * from tb_request where (CHARIND
EX('".$posisinik."',posisinik) > 0) and app1=1 and app1b=1 and app2=0 and app3
=0 and app4=0 order by noid desc");
}
function data_request_app_email1b($posisinik)
{
return $this->db->query("select * from tb_request where (CHARIND
EX('".$posisinik."',posisinik) > 0) and app1=1 and app1b=0 and app2=0 and app3
=0 and app4=0 order by noid desc");
}
function data_request_app_email3($posisinik)
{
return $this->db->query("select * from tb_request where (CHARIND
EX('".$posisinik."',posisinik) > 0) and status<>'NEW' and app1b=1 and app1=1 a
nd app2=1 and app3=0 and app4=0 order by noid desc");
}
function data_request_app_email4($posisinik)
{
return $this->db->query("select * from tb_request where (CHARIND
EX('".$posisinik."',posisinik) > 0) and status<>'NEW' and app1b=1 and app1=1
and app2=1 and app3=1 and app4=0 order by noid desc");
}
function data_request_app_email5($posisinik)
{
return $this->db->query("select * from tb_request where (CHARIND
EX('".$posisinik."',posisinik) > 0) and status<>'NEW' and app1b=1 and app1=1
and app2=1 and app3=1 and app4=1 and app5=0 order by noid desc");
}
function reject_request($noid,$uid,$name,$notes,$app1,$app1b,$app2,$app3
,$app4,$app5)
{
if($app1==0 && $app1b==0 && $app2==0 && $app3==0 && $app4==0 &&
$app5==0)
{
if(in_array('SUPERVISOR', $this->session->userdata('tipe
_user')))
{
$data_request=$this->db->query("update tb_reques
t set app1=2,status='REJECTED' where status<>'NEW' and noid='$noid' and app1=0 a
nd app2=0 and app3=0 and app4=0 and app5=0");
$jabatan = 'SUPERVISOR';
}
}
elseif($app1==1 && $app1b==0 && $app2==0 && $app3==0 && $app4==
0 && $app5==0)
{
if(in_array('DIRECTOR', $this->session->userdata('tipe_u
ser')))
{
$data_request=$this->db->query("update tb_reques
t set app1b=2,status='REJECTED' where status<>'NEW' and noid='$noid' and app1=1
and app1b=0 and app2=0 and app3=0 and app4=0 and app5=0");
$jabatan = 'DIRECTOR';
}
}
elseif($app1==1 && $app1b==1 && $app2==0 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('GA STAFF', $this->session->userdata('tipe_u
ser')))
{
$data_request=$this->db->query("update tb_reques
t set app2=2,status='REJECTED' where status<>'NEW' and noid='$noid' and app1=1 a
nd app2=0 and app3=0 and app4=0 and app5=0");
$jabatan = 'GA STAFF';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==0 && $app4==0
&& $app5==0)
{
if(in_array('GA MGR', $this->session->userdata('tipe_use
r')))
{
$data_request=$this->db->query("update tb_reques
t set app3=2,status='REJECTED' where status<>'NEW' and noid='$noid' and app1=1 a
nd app2=1 and app3=0 and app4=0 and app5=0");
$jabatan = 'GA MGR';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==1 && $app4==0
&& $app5==0)
{
if(in_array('ACCOUNTING TR', $this->session->userdata('t
ipe_user')))
{
$data_request=$this->db->query("update tb_reques
t set app4=2,status='REJECTED' where status<>'NEW' and noid='$noid' and app1=1 a
nd app2=1 and app3=1 and app4=0 and app5=0");
$jabatan = 'ACCOUNTING';
}
}
elseif($app1==1 && $app1b==1 && $app2==1 && $app3==1 && $app4==1
&& $app5==0)
{
if(in_array('FINANCE', $this->session->userdata('tipe_us
er')))
{
$data_request=$this->db->query("update tb_reques
t set app5=2,status='REJECTED' where status<>'NEW' and noid='$noid' and app1=1 a
nd app2=1 and app3=1 and app4=1 and app5=0");
$jabatan = 'FINANCE';
}
}
$this->session->set_flashdata('message','<blink>Rejected Success
</blink>');
/*$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_d
ate) values
('$noid','$uid','$name','REJECTED','REJECTED BY
$name : $notes',GETDATE())";
$data_notes=$this->db->query($sp2);*/
$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values
('$noid','$uid','$name','REJECTED : $notes','$ja
batan',GETDATE())";
$data_notes=$this->db->query($sp2);
return $data_request;
}
function show_notes($noid){
$data_notes=$this->db->query(" select a.code_travel,a.maksud,a.
nik,a.status as status_req,b.status as statusNote,b.notes as log_notes,b.entry_d
ate, b.name, c.departemen
from tb_request a
inner join tb_notes b on a.noid=
b.noid
left join tb_wf_infokaryawan c o
n b.uid=c.NIK
where a.noid='$noid' order by b.
entry_date ");
return $data_notes;
}
function log_approval($tipe_user,$nik) // Log Approval
{
#if(!in_array(6, $this->session->userdata('roleID')))
#{
$data_log=$this->db->query( " select * "
. " from tb_request as r "
. " inner join tb_notes as n on r.noid=n.noid "
. " where uid='".$nik."' and n.status<>'SUBMIT' "
return null;
}
function delete_karyawan($nik)
{
return $this->db->query("delete from tb_wf_infokaryawan where NI
K='$nik'");
}
function save_karyawan($nik,
$nama,
$jabatan,
$departemen,
$seksi,
$golongan,
$title,
$email){
$sp ="insert into tb_wf_infokaryawan(NIK,nmkaryawan,jabatan,depa
rtemen,seksi,kdgol,title,email) values
('$nik','$nama','$jabatan','$departemen','$seksi','$golongan','$
title','$email')";
$data_karyawan=$this->db->query($sp);
return $data_karyawan;
}
function setting_haripengajuan()
{
$this->db->select('value');
$this->db->from('tb_wf_setting');
$this->db->where('id=1');
return $this->db->get()->row()->value;
}
function getReportTravel($tanggalAwal, $tanggalAkhir, $departemen, $nik)
{
$this->db->select('r.*, tr.*, tr1.nmtransport, tr2.shift, ht.*, ht1.
nminap, ht2.nmzona, vs.*, vs1.nama as namaNegara');
$this->db->from('tb_request as r');
$this->db->join("tb_wf_infokaryawan as k", "r.nik=k.NIK", "inner");
$this->db->join("tr_wf_travel_detTransport as tr", "r.code_travel=tr
.notravel", "left");
$this->db->join("tb_wf_travel_transport as tr1", "tr.idtrans=tr1.idt
rans", "left");
$this->db->join("tb_wf_travel_shift as tr2", "tr.idshift=tr2.idshift
", "left");
$this->db->join("tr_travel_detHotel as ht", "r.code_travel=ht.notrav
el", "left");
$this->db->join("tb_wf_travel_inap as ht1", "ht.idinap=ht1.idinap",
"left");
$this->db->join("tb_wf_travel_zona as ht2", "ht.zonaID=ht2.idzona",
"left");
$this->db->join("tr_wf_travel_detVisa as vs", "r.code_travel=vs.code
Travel", "left");
$this->db->join("tb_wf_negara as vs1", "vs.negaraID=vs1.id", "left")
;
$this->db->where('k.id_prs='.$this->session->userdata('id_prs'));
$this->db->where("r.updatedon >= '".$tanggalAwal."' and r.updatedon
<= '".$tanggalAkhir."'");
if($departemen!="All")
$this->db->where("UPPER(LTRIM(RTRIM(r.dept))) = '".$departemen."
'");
if(in_array('USER', $this->session->userdata('tipe_user')) && !in_ar
ray('SUPERVISOR', $this->session->userdata('tipe_user')) && !in_array('GA STAFF'
, $this->session->userdata('tipe_user')))
$this->db->where("r.nik='".$this->session->userdata('NIK')."'");
else
{
if($nik!='All')
{
$this->db->where("r.nik='".$nik."'");
}
}
return $this->db->get();
}
function getDataKaryawan($departemen)
{
$this->db->select('distinct r.nik, r.nama');
$this->db->from('tb_request as r');
$this->db->join("tb_wf_infokaryawan as k", "r.nik=k.NIK", "inner");
$this->db->where('id_prs='.$this->session->userdata('id_prs'));
if($departemen!="All")
$this->db->where("UPPER(LTRIM(RTRIM(dept))) = '".$departemen."'"
);
else
{
if(in_array('SUPERVISOR', $this->session->userdata('tipe_user'))
)
{
$this->db->where("UPPER(LTRIM(RTRIM(dept))) in (select disti
nct UPPER(LTRIM(RTRIM(departemen))) from tb_wf_levelapproval where NIK='".$this>session->userdata('NIK')."') ");
}
}
return $this->db->get();
}
function getCheckClaim($id)
{
#return $this->db->query("select * from tr_wf_claim_request wher
e TravelID='".$id."'");
function PrintDetailLog($noid){
return $this->db->query("select * from tb_notes where noid='".$
noid."'");
return $this->db->get();
}
#20okt2015
function CheckWorkbased($NIK){
return $this->db->query("select NIK,nmkaryawan,workbased from tb
_wf_infokaryawan where nik='".$NIK."'
and work
based is not null
");
return $this->db->get();
}
#Proses Hold
26Okt2015
function prosesHold($noid,$NIK,$nama,$tipeUser,$notes,$app1,$app2,$app3,
$app4,$app5,$tempNIK)
{
if($app1==1 && $app2==1 && $app3==1 && $app4==0 && $app5==0)
{
if(in_array('ACCOUNTING TR', $tipeUser))
{
$data_request=$this->db->query("update tb_reques
t set
app2='0',
app3='0',
app4='0',
app5='0',
status='WAITING GA VERIFICATION', posisiNIK='".$tempNIK."', posisiApp='app2'
where no
id='".$noid."' and app2='1' and app3='1' and app4='0'");
}
}
$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values ('$noid','$NIK','$nama','HOLD','HOLD BY ".$nama." : ".$notes."',GETDAT
E())";
$data_notes=$this->db->query($sp2);
return $data_request;
}
#3des2015
function prosesholdgamgr($noid,$NIK,$nama,$tipeUser,$notes,$app1,$app2,$
app3,$app4,$app5,$tempNIK)
{
if($app1==1 && $app2==1 && $app3==0 && $app4==0 && $app5==0)
{
if(in_array('GA MGR', $tipeUser))
{
$data_request=$this->db->query("update tb_reques
t set
app2='0',
app3='0',
app4='0',
app5='0',
status='WAITING GA VERIFICATION', posisiNIK='".$tempNIK."', posisiApp='app2'
where no
id='".$noid."' and app2='1' and app3='0' and app4='0'");
}
}
$sp2 ="insert into tb_notes(noid,uid,name,status,notes,entry_dat
e) values ('$noid','$NIK','$nama','HOLD','HOLD BY ".$nama." : ".$notes."',GETDAT
E())";
$data_notes=$this->db->query($sp2);
return $data_request;
}
function getReportTravel_STPD_GA()
{
/*return $this->db->query("select updatedon, co
de_travel, nik, nama, nik_atasnama, atasnama,
dept, bisnisunit,costcenter,lokasi_tujuan,tgl_mu
lai, tgl_akhir,kategori, transport,hotel,uangsaku,
CAamount, CAremark from tb_request where app1='
1' and app2='1' and app3='0'");*/
return $this->db->query("exec sp_wf_trav
el_outstand_GAREGION 'tr','".$this->session->userdata('NIK')."'");
}
function data_allowance()
{
return $this->db->query("select * from tb_wf_travel_allowance o
rder by id");
}
function data_zona()
{
return $this->db->query("select *, wilayah from tb_wf_travel_zon
a order by nmzona");
}
function cekDetAllowance($codetravel)
{
return $this->db->query("select count(id) as jumlah from tr_travel_
detAllowance where notravel='".$codetravel."'")->row()->jumlah;
}
function hapusDetAllowance($codetravel)
{
$this->db->where("notravel", $codetravel);
$this->db->delete("tr_travel_detAllowance");
}
function saveDetAllowance($rec)
{
$this->db->insert("tr_travel_detAllowance", $rec);
}
function SaveStatusReSubmit($codeTravel)
{
return $this->db->query("update tb_request set status='WAITING FOR R
E-SUBMIT', posisinik='-' where Code_Travel='$codeTravel'");
}
function data_detAllowance($code_travel)
{
return $this->db->query("select *, a.id as id_allowance from tr_tra
vel_detAllowance as dh
left join tb_wf_travel_zona as z on dh.zonaID=z.
idzona
left join tb_wf_travel_allowance as a on dh.idin
ap=a.id
where dh.notravel='".$code_travel."' order by dh
.id
");
}
function update_status($noid, $nikAtasan)
{
return $this->db->query("update tb_request set
app1='0', app1b='0', app2='0', app3='0', posisinik='$nikAtasan', posisiapp='app1
', status='WAITING SUPERVISOR APPROVAL'
where noid='$noid'
");
}
}
?>