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..!"));
}
}
}
?>