<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class CT_production_new_data extends CI_Controller {
    function __construct()
    {
       parent::__construct();
		if (!$this->dx_auth->is_logged_in()) {
            header('HTTP/1.1 401 Unauthorize');die('expire'); 
        }
        
        $uid = $this->session->userdata('DX_user_id');
        
        if(!permissionAuth(2) && $uid != RID){ 
            header('HTTP/1.1 401 Unauthorize');die('noaccess');
        }
		
		$this->load->model("production/mdl_production", 'mdl_production');
		
    }
    
    
    function index()
    {
        $this->load->view('production/view_planprod');
    }

    function loaddata_bom(){; 
		$def_col= array();    
		$spt='dbo.SPX_PASI_BOM_HEADER'; 
		$def_col['rID']=array("db" => "rID" ,"sc" => "rID","ctype"=>"int", "bypassvalue"=>"");
		$def_col['r1']=array("db" => "r1" ,"sc" => "r1","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r2']=array("db" => "r2" ,"sc" => "r2","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r3']=array("db" => "r3" ,"sc" => "r3","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r4']=array("db" => "r4" ,"sc" => "r4","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r5']=array("db" => "r5" ,"sc" => "r5","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r6']=array("db" => "r6" ,"sc" => "r6","ctype"=>"int", "bypassvalue"=>"");
		$def_col['r7']=array("db" => "r7" ,"sc" => "r7","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r8']=array("db" => "r8" ,"sc" => "r8","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r9']=array("db" => "r9" ,"sc" => "r9","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r10']=array("db" => "r10" ,"sc" => "r10","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r11']=array("db" => "r11" ,"sc" => "r11","ctype"=>"date", "bypassvalue"=>"");
		$def_col['r12']=array("db" => "r12" ,"sc" => "r12","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r13']=array("db" => "r13" ,"sc" => "r13","ctype"=>"date", "bypassvalue"=>"");
		$def_col['r14']=array("db" => "r14" ,"sc" => "r14","ctype"=>"text", "bypassvalue"=>"");
		$def_col['r15']=array("db" => "r15" ,"sc" => "r15","ctype"=>"int", "bypassvalue"=>"");
		$def_col['r16']=array("db" => "r16" ,"sc" => "r16","ctype"=>"int", "bypassvalue"=>"");
		$def_col['r17']=array("db" => "r17" ,"sc" => "r17","ctype"=>"int", "bypassvalue"=>"");
		$def_col['r18']=array("db" => "r18" ,"sc" => "r17","ctype"=>"int", "bypassvalue"=>"");
 		
 		$search = isset($_POST['_search'])?$_POST['_search']:false; 
		$searchField = isset($_POST['searchField'])?$_POST['searchField']:''; 
		$searchString = isset($_POST['searchString'])?$_POST['searchString']:''; 
		$filters =  isset($_POST['filters'])?$_POST['filters']:''; 
	 	 
        $page = isset($_POST['page'])?$_POST['page']:1; // get the requested page 
		$limit = isset($_POST['rows'])?$_POST['rows']:10; // get how many rows we want to have into the grid 
		$sidx = isset($_POST['sidx'])?$_POST['sidx']:'rID'; // get index row - i.e. user click to sort 
		$sord = isset($_POST['sord'])?$_POST['sord']:'0'; // get the direction 
  		$ms_type_id = isset($_POST['ms_type_id'])?$_POST['ms_type_id']:-1; // get the direction 
  	   
		if ($sord == 'asc') { $sord = '0'; } else if ($sord == 'desc') { $sord = '1'; } 
 		 
		if (array_key_exists($sidx, $def_col)) {  
				$fsidx=$def_col[$sidx];
				$sidx=$fsidx['db'];
		}else{
				$sidx='rID'; //DEFAULT SORT KALU GA ADA
		}
        $sidx=$sidx.'='. $sord;
		  
		$xmldoc =  XMLbasic($spt); 
		paramViewJSON($xmldoc, $limit, $page,  $sidx, $sord); 
  		AddField($xmldoc ,'ms_type_id',$ms_type_id); 
		$adaSearchStatus=0;
		 
        if ($search == 'true'){ 
            if (!empty($filters)){ 
				$array = json_decode($filters); 
                foreach($array->rules as $arr=>$k){ 
						$fcr=$def_col[$k->field]; 
	 					if ($fcr != null) 
						{ 
							if ($fcr['ctype']=='int'){ 
								$searchString = $k->data; 
								if ($searchString!=$fcr['bypassvalue']) { 
									addSearchNum($xmldoc,$fcr['sc'],$searchString,'2','1');  
									  if (($fcr['sc'])=='r1' || ($fcr['sc'])=='r16'){
										$adaSearchStatus=1;
									  }
								}
							 
							} 
							elseif ($fcr['ctype']=='text'){ 
					        	$searchString = $k->data; 
								if ($searchString!=$fcr['bypassvalue']) 
							     addSearchText($xmldoc,$fcr['sc'],'1','1',$searchString); 
							}  
							elseif ($fcr['ctype']=='date'){ 
								$searchString = $k->data; 
								if (trim($searchString) != '' ){ 
									$dateArray=explode('/',$searchString);  
									$searchString = $dateArray[2].$dateArray[1].$dateArray[0]; 
								} 
								 addSearchDate($xmldoc,$fcr['sc'],$searchString,'1','1'); 
							} 
						} 
                 } 
             } 
	   }  
  
		if ($adaSearchStatus==0){
			addSearchNum($xmldoc,'r16','-1','3','-1'); 
		}
  
  
		$str = $xmldoc->saveXML();   
		exec_sp_json($xmldoc, $spt,$sts,$des,$rows,$detail);  
  		echo $rows; 
		}
		
		 
		function find_material(){
			$findtext = isset($_REQUEST['findtext']) ? $_REQUEST['findtext']:'';  
			$xmldata = XMLbasic('dbo.SPX_FIND_MATERIAL');
			AddField($xmldata,'findtext',$findtext);   
			AddField($xmldata,'rows','10');  
			  exec_sp_xml($xmldata, 'dbo.SPX_FIND_MATERIAL',$stsno,$stsdes,$rows,$detail);
			   $i=0;
			foreach ($rows as $per_row) {
				$responce->rows[$i]['rID']=getXMLValue($per_row,'rID');
				$responce->rows[$i]['r1']=getXMLValue($per_row,'r1');   
				$responce->rows[$i]['r2']=getXMLValue($per_row,'r2');   
				$responce->rows[$i]['r3']=getXMLValue($per_row,'r3');   
				$responce->rows[$i]['r4']=getXMLValue($per_row,'r4');   
				$i++; 
			}
			 if ($i==0)
			{
			 die('empty data'); 
			  }
			echo json_encode($responce);
	   
		}    	 
		

		function loaddata_bom_detail(){; 
			$def_col= array();    
			$spt='dbo.SPX_PASI_BOM_DETAIL'; 
			$def_col['rID']=array("db" => "rID" ,"sc" => "rID","ctype"=>"int", "bypassvalue"=>"");
			$def_col['r1']=array("db" => "r1" ,"sc" => "r1","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r2']=array("db" => "r2" ,"sc" => "r2","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r3']=array("db" => "r3" ,"sc" => "r3","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r4']=array("db" => "r4" ,"sc" => "r4","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r5']=array("db" => "r5" ,"sc" => "r5","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r6']=array("db" => "r6" ,"sc" => "r6","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r7']=array("db" => "r7" ,"sc" => "r7","ctype"=>"date", "bypassvalue"=>"");
			$def_col['r8']=array("db" => "r8" ,"sc" => "r8","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r9']=array("db" => "r9" ,"sc" => "r9","ctype"=>"date", "bypassvalue"=>"");
			$def_col['r10']=array("db" => "r10" ,"sc" => "r10","ctype"=>"text", "bypassvalue"=>"");
			$def_col['r11']=array("db" => "r11" ,"sc" => "r11","ctype"=>"int", "bypassvalue"=>"");
			$def_col['r_s']=array("db" => "r_s" ,"sc" => "r_s","ctype"=>"int", "bypassvalue"=>"");
			
			 $search = isset($_POST['_search'])?$_POST['_search']:false; 
			$searchField = isset($_POST['searchField'])?$_POST['searchField']:''; 
			$searchString = isset($_POST['searchString'])?$_POST['searchString']:''; 
			$filters =  isset($_POST['filters'])?$_POST['filters']:''; 
			  
			$page = isset($_POST['page'])?$_POST['page']:1; // get the requested page 
			$limit = isset($_POST['rows'])?$_POST['rows']:10; // get how many rows we want to have into the grid 
			$sidx = isset($_POST['sidx'])?$_POST['sidx']:'rID'; // get index row - i.e. user click to sort 
			$sord = isset($_POST['sord'])?$_POST['sord']:'0'; // get the direction 
			
			  $header_id = isset($_POST['header_id'])?$_POST['header_id']:-1; // get the direction 
			 
			if ($sord == 'asc') { $sord = '0'; } else if ($sord == 'desc') { $sord = '1'; } 
			  
			if (array_key_exists($sidx, $def_col)) {  
					$fsidx=$def_col[$sidx];
					$sidx=$fsidx['db'];
			}else{
					$sidx='rID'; //DEFAULT SORT KALU GA ADA
			}
			$sidx=$sidx.'='. $sord;
			  
			$xmldoc =  XMLbasic($spt); 
			paramViewJSON($xmldoc, $limit, $page,  $sidx, $sord); 
			  AddField($xmldoc ,'header_id',$header_id); 
			 
			if ($search == 'true'){ 
				if (!empty($filters)){ 
					$array = json_decode($filters); 
					foreach($array->rules as $arr=>$k){ 
							$fcr=$def_col[$k->field]; 
							 if ($fcr != null) 
							{ 
								if ($fcr['ctype']=='int'){ 
									$searchString = $k->data; 
									if ($searchString!=$fcr['bypassvalue'])  
										addSearchNum($xmldoc,$fcr['sc'],$searchString,'2','1');  
									   
								} 
								elseif ($fcr['ctype']=='text'){ 
									$searchString = $k->data; 
									if ($searchString!=$fcr['bypassvalue']) 
									 addSearchText($xmldoc,$fcr['sc'],'1','1',$searchString); 
								}  
								elseif ($fcr['ctype']=='date'){ 
									$searchString = $k->data; 
									if (trim($searchString) != '' ){ 
										$dateArray=explode('/',$searchString);  
										$searchString = $dateArray[2].$dateArray[1].$dateArray[0]; 
									} 
									 addSearchDate($xmldoc,$fcr['sc'],$searchString,'1','1'); 
								}  
							} 
					 } 
				 } 
		   }  
	  
	  
			$str = $xmldoc->saveXML();   
			exec_sp_json($xmldoc, $spt,$sts,$des,$rows,$detail);  
			  echo $rows; 
			}

}    