hcis.php 7.17 KB
<?php defined('BASEPATH') OR exit('No direct script access allowed');

/**
 * Example
 *
 * This is an example of a few basic user interaction methods you could use
 * all done with a hardcoded array.
 *
 * @package		CodeIgniter
 * @subpackage	Rest Server
 * @category	Controller
 * @author		Phil Sturgeon
 * @link		http://philsturgeon.co.uk/code/
*/

// This can be removed if you use __autoload() in config.php OR use Modular Extensions
require APPPATH.'/libraries/REST_Controller.php';

class Hcis extends REST_Controller
{
	function __construct(){
        parent::__construct();
		$this->load->database();
    }
	
	function index_getxxx()
    {
       
		$id = $this->get('id');
		if ($this->get('id') == '') {
            $url = 'http://hcis.wika.co.id/services/rest/?format=json&method=MasterDataPegawai&wsc_id=WSC-000001&pin=D9u84S&active=1';
			$str = file_get_contents($url);
			$json = json_decode($str, true);
			$data = $json['data'];
			foreach($data as $key=>$val){
				if (intval($val['kd_jabatan']) == 0 ){
					$val['kd_jabatan'] ='999';
				}else{
					$val['kd_jabatan'] =intval($val['kd_jabatan']);				
				}
				$no_hp = preg_replace("/[^0-9]/", "", $val['handphone_1']); 
				$subs=substr($no_hp,2);
				$depan=substr($no_hp,0,2);
				if($depan=="62") $no_hp="0".$subs;
				//$mutasi = $val['kd_kantor'].$val['kd_jabatan'].$val['kd_unit_org'].$val['direktorat'].$val['departemen'].$val['biro'].$val['fungsi'].$val['handphone_1'];
				$mutasi = $val['kd_kantor'].$val['kd_jabatan'].$val['kd_unit_org'].$val['direktorat'].$val['departemen'].$val['biro'].$val['fungsi'].$no_hp;
				$hasil 	= $this->db->query("SELECT * FROM tag where nip='".$val['nip']."'")->row_array();
				// print_r($hasil);exit;
				if (($val['direksi'] == 'DIREKTUR UTAMA PT WIJAYA KARYA (PERSERO) Tbk'  and  substr($val['nip'],0,3) !== 'ALT' ) or ($val['kd_kantor'] !='' and (substr($val['nip'],0,1) == 'E' or substr($val['nip'],0,1) == 'LS'))){
					if (!$hasil){
						$sql =$this->db->query("INSERT INTO tag 
									(nip, nama_user, jabatan, departemen, grup, kode_urutan, nama_pendek, telp_user) 
								values 
									('".$val['nip']."','".mysql_escape_string($val['nm_peg'])."', '".$val['nm_jabatan'].' '.$val['nm_unit_org']."','".$val['nm_departemen']."','".$val['nm_jabatan']."','".$val['kd_jabatan']."','".$val['kd_kantor'].$val['kd_jabatan'].$val['kd_unit_org'].$val['direktorat'].$val['departemen'].$val['biro'].$val['fungsi'].$no_hp."','".$no_hp."')");
						
					}else{
						if ($hasil['nama_pendek'] != $mutasi){
							if(strpos($val['nm_jabatan'],"DIREKTUR")<0 or strpos($val['nm_jabatan'],"DIREKSI")<0 or strpos($val['nm_jabatan'],"KOMISARIS")<0 or strpos($val['nm_jabatan'],"DIREKTORAT")<0){
								$sql ="UPDATE tag SET jabatan='".$val['nm_jabatan'].' '.$val['nm_unit_org']."', departemen='".$val['nm_departemen']."', grup='".$val['nm_jabatan']."', kode_urutan='".$val['kd_jabatan']."', nama_pendek='".$mutasi."', telp_user='".$no_hp."' where nip='".$val['nip']."'";
							}else{
								$sql ="UPDATE tag SET jabatan='".$val['nm_jabatan'].' '.$val['nm_unit_org']."', departemen='".$val['nm_departemen']."', grup='".$val['nm_jabatan']."', kode_urutan='".$val['kd_jabatan']."', nama_pendek='".$mutasi."' where nip='".$val['nip']."'";
							}
							//$sql ="UPDATE tag SET jabatan='".$val['nm_jabatan'].' '.$val['nm_unit_org']."', departemen='".$val['nm_departemen']."', grup='".$val['nm_jabatan']."', kode_urutan='".$val['kd_jabatan']."', nama_pendek='".$mutasi."', telp_user='".$val['handphone_1']."' where nip='".$val['nip']."'";
							
							$result = $this->db->query($sql);
							
						}
					}
				}
			}
			echo 'ok';
		}else{
            	$user =$this->db->query("SELECT * FROM tag where nip='{$id}'")->result();
			$this->response($user, 200); // 200 being the HTTP response code
		}
		
    }
	
	function index_get()
    {
		$hasil 	= $this->db->query("SELECT nip FROM tag ")->result_array();
		$hasil_np 	= $this->db->query("SELECT nip,nama_pendek FROM tag ")->result_array();
		// masukan hasil ke array map
		$hasil = array_map(function($val) {
						return $val['nip'];
					},array_values($hasil));
					
		$hasil_np = array_reduce(array_values($hasil_np),function(&$arr,$val) {
						$arr[$val['nip']] = $val['nama_pendek'];
						return $arr;
					});
			//print_r($hasil_np);exit();		
		$id = $this->get('id');
		if ($this->get('id') == '') {
            $url = 'http://hcis.wika.co.id/services/rest/?format=json&method=MasterDataPegawai&wsc_id=WSC-000001&pin=D9u84S&active=1';
			$str = file_get_contents($url);
			$json = json_decode($str, true);
			$data = $json['data'];
			$sql = '';
			foreach($data as $key=>$val){
				if (intval($val['kd_jabatan']) == 0 ){
					$val['kd_jabatan'] ='999';
				}else{
					$val['kd_jabatan'] =intval($val['kd_jabatan']);				
				}
				$no_hp = preg_replace("/[^0-9]/", "", $val['handphone_1']); 
				$subs=substr($no_hp,2);
				$depan=substr($no_hp,0,2);
				if($depan=="62") $no_hp="0".$subs;
				//$mutasi = $val['kd_kantor'].$val['kd_jabatan'].$val['kd_unit_org'].$val['direktorat'].$val['departemen'].$val['biro'].$val['fungsi'].$val['handphone_1'];
				$mutasi = $val['kd_kantor'].$val['kd_jabatan'].$val['kd_unit_org'].$val['direktorat'].$val['departemen'].$val['biro'].$val['fungsi'].$no_hp;
				//$hasil 	= $this->db->query("SELECT * FROM tag where nip='".$val['nip']."'")->row_array();
				// print_r($hasil);exit;
				
				if(in_array($val['nip'],$hasil)){
					//if ($hasil['nama_pendek'] != $mutasi){
					if ($hasil_np[$val['nip']] != $mutasi){
						if(strpos($val['nm_jabatan'],"DIREKTUR")<0 or strpos($val['nm_jabatan'],"DIREKSI")<0 or strpos($val['nm_jabatan'],"KOMISARIS")<0 or strpos($val['nm_jabatan'],"DIREKTORAT")<0){
							$sql ="UPDATE tag SET jabatan='".$val['nm_jabatan'].' '.$val['nm_unit_org']."', departemen='".$val['nm_departemen']."', grup='".$val['nm_jabatan']."', kode_urutan='".$val['kd_jabatan']."', nama_pendek='".$mutasi."', telp_user='".$no_hp."' where nip='".$val['nip']."';";
						}else{
							$sql ="UPDATE tag SET jabatan='".$val['nm_jabatan'].' '.$val['nm_unit_org']."', departemen='".$val['nm_departemen']."', grup='".$val['nm_jabatan']."', kode_urutan='".$val['kd_jabatan']."', nama_pendek='".$mutasi."' where nip='".$val['nip']."';";
						}
						$hsl.=$sql.'<br/>';
						//$result = $this->db->query($sql);
					}
				}else{
					$sql = "INSERT INTO tag 
									(nip, nama_user, jabatan, departemen, grup, kode_urutan, nama_pendek, telp_user) 
								values 
									('".$val['nip']."','".mysql_escape_string(preg_replace("/&#?[a-z0-9]{2,8};/i","",$val['nm_peg']))."', '".$val['nm_jabatan'].' '.$val['nm_unit_org']."','".$val['nm_departemen']."','".$val['nm_jabatan']."','".$val['kd_jabatan']."','".$val['kd_kantor'].$val['kd_jabatan'].$val['kd_unit_org'].$val['direktorat'].$val['departemen'].$val['biro'].$val['fungsi'].$no_hp."','".$no_hp."');";
					$hsl.=$sql.'<br/>';
					//$result = $this->db->query($sql);
				}
				
				
			}
			$this->response($hsl, 200);
		}else{
            $user =$this->db->query("SELECT * FROM tag where nip='{$id}'")->result();
			$this->response($user, 200); // 200 being the HTTP response code
		}
		
		//print_r($sql);
	}
   
	public function send_post()
	{
		var_dump($this->request->body);
	}


	public function send_put()
	{
		var_dump($this->put('foo'));
	}
}