MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: /home/cafsindia/uds.cafsinfotech.in/application/controllers/Emp_pay_details.php
<?php if ( ! defined('BASEPATH')) exit('No direct script is allowed');
require_once("Action_controller.php");
class Emp_pay_details  extends Action_controller{	
	public function __construct(){
		parent::__construct('emp_pay_details');
	}
	// LOAD PAGE QUICK LINK,FILTERS AND TABLE HEADERS
	public function index(){
		//PAGE INFO FUNCTION
		$this->page_info();	
		$data['encKey']        = $this->generateKey();	
		$data['module_sts']    = (int)$this->module_sts;
		$data['quick_link']    = $this->quick_link;
		$data['pick_list']     = $this->pick_list;
		$data['form_info']     = $this->form_info;
		$data['table_head']    = $this->table_head;
		$data['fliter_list']   = $this->fliter_list;
		$data['freeze_list']   = $this->freeze_list;
		//select query for get personal area details 
		$per_area_rslt             = $this->query_build_function('personal_code,personal_name','cw_sap_personal_area','','trans_status = 1 and FIND_IN_SET(personal_code, "'.$this->logged_area_access.'") ');
		//Generate list for Datalist
		$per_area_list             = "";
		foreach($per_area_rslt as $for){
			$personal_code         = $for['personal_code'];
			$personal_name         = $for['personal_name'];
            if($personal_code !== ""){
                $per_area_list    .= "<option data-value='".$personal_code."'  value='".trim($personal_code)."' >".trim($personal_name)."</option>";
            }
		}
		$data['per_area_list']     = $per_area_list;
		$this->load->view("$this->control_name/manage",$data);
	}
	//DR CODE FOR WBS ELEMENT FETCH BASED ON PERSONAL AREA
	public function get_project(){
		$encString         = file_get_contents('php://input');
		$_POST             = $this->cryptoDecrypt($encString);
		if(!$_POST){
			echo json_encode(array('success' => false,'message' => 'Invalid Request..','table_data' => ""));
			exit(0);
		}
		$search_term      = $this->input->post_get('term');		
		$personal_code    = $this->input->post('personal_code');
		$search_info      = $this->db->query("CALL sp_sap_project ('$search_term','$personal_code')");
		$search_rslt      = $search_info->result();
		$search_info->next_result();
		if($search_rslt[0]){
			echo json_encode(array('success' => true, 'search_rslt' => $search_rslt));
		}else{
			echo json_encode(array('success' => false, 'message' => "No Data Found..!"));
		}
	}
	//DR CODE FOR WBS ELEMENT FETCH BASED ON PERSONAL AREA
	public function get_wbs(){
		$encString         = file_get_contents('php://input');
		$_POST             = $this->cryptoDecrypt($encString);
		if(!$_POST){
			echo json_encode(array('success' => false,'message' => 'Invalid Request..','table_data' => ""));
			exit(0);
		}
		$search_term      = $this->input->post_get('term');		
		$personal_code    = $this->input->post('personal_code');
		$search_info      = $this->db->query("CALL sp_sap_picks ('$search_term','$personal_code','wbs_element')");
		$search_rslt      = $search_info->result();
		$search_info->next_result();
		if($search_rslt[0]){
			echo json_encode(array('success' => true, 'search_rslt' => $search_rslt));
		}else{
			echo json_encode(array('success' => false, 'message' => "No Data Found..!"));
		}
	}

	public function pay_details(){
		$encString         = file_get_contents('php://input');
		$_POST             = $this->cryptoDecrypt($encString);
		if(!$_POST){
			echo json_encode(array('success' => false,'message' => 'Invalid Request..','table_data' => ""));
			exit(0);
		}
		$employee_code     = $this->input->post('employee_code');
		$personal_code     = $this->input->post('personal_code');
		$project           = $this->input->post('project_id');
		$wbs_element       = $this->input->post('wbs_element');
		$search_by         = $this->input->post('search_by');
		$start_date        = $this->input->post('start_date');
		$end_date          = $this->input->post('end_date');
		$area_access       = '"'.str_replace(',', '","', $this->logged_area_access).'"';
		//date format !
		$formattedStartDate = date("Y-m-d", strtotime($start_date));
		$formattedEndDate   = date("Y-m-d", strtotime($end_date));

		//Emp pay details query !
		$details_info      = $this->db->query("CALL sp_master_report ('$employee_code','$personal_code','$project','$wbs_element','$search_by','$formattedStartDate','$formattedEndDate','$area_access')");
		$details_rslt      = $details_info->result();
		$details_info->next_result();

		$view_details 		= 'SELECT view_name, label_name ,field_type FROM cw_form_setting WHERE prime_module_id ="employees"';
		$view_info 			= $this->db->query($view_details);
		$view_rslt 			= $view_info->result();	
		foreach ($view_rslt as $row){
		    $label_name 		= $row->label_name;
		    $view_name 		= $row->view_name;
		    $field_type     = $row->field_type;
		    $header[]  = array('label_name' => $label_name, 'view_name' => $view_name,'field_type' => $field_type);
		}
		//static array -> for label_name which is not in the form setting !
		$header[] = ['label_name'=>'pro_desc','view_name'=>'Pro Desc'];
		$header[] = ['label_name'=>'day_type','view_name'=>'Day Type'];
		$header[] = ['label_name'=>'wbs_desc','view_name'=>'Web Desc'];
		$header[] = ['label_name'=>'day_count','view_name'=>'Day Count'];
		$header[] = ['label_name'=>'pf_limit','view_name'=>'Pf Limit Status'];
		$header[] = ['label_name'=>'esi_limit','view_name'=>'ESI Limit Status'];
		$header[] = ['label_name'=>'pf_exempt','view_name'=>'PF Exemption'];
		$header[] = ['label_name'=>'esi_exempt','view_name'=>'ESI Exemption'];
		$header[] = ['label_name'=>'lwf_exempt','view_name'=>'LWF Exemption'];
		$header[] = ['label_name'=>'ptax_name','view_name'=>'Professional TaxName'];
		$header[] = ['label_name'=>'challenge_name','view_name'=>'Challenge Name'];
		$header[] = ['label_name'=>'esi_location','view_name'=>'ESI Location'];
		$header[] = ['label_name'=>'fromdate','view_name'=>'From Date','field_type'=>'4'];
		$header[] = ['label_name'=>'todate','view_name'=>'To Date','field_type'=>'4'];
		$header[] = ['label_name'=>'gross','view_name'=>'Gross','field_type'=>'2'];
		$header[] = ['label_name'=>'ear_gross','view_name'=>'Gross','field_type'=>'2'];
		$header[] = ['label_name'=>'pf_gross','view_name'=>'PF Gross','field_type'=>'2'];
		$header[] = ['label_name'=>'esi_gross','view_name'=>'ESI Gross','field_type'=>'2'];
		$header[] = ['label_name'=>'trans_created_date','view_name'=>'Created Date'];
		$header[] = ['label_name'=>'effective_date','view_name'=>'Effective Date','field_type'=>'4'];

		if($details_rslt[0]){
			echo json_encode(array('success' => true,'message'=>'Records found.!', 'view_rslt' => $header,'emp_rslt' => $details_rslt));
		}else{
			echo json_encode(array('success' => false, 'message' => "No Record Found..!"));
		}
	} 
}
?>