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_bk/Minimum_wages_report.php
<?php if ( ! defined('BASEPATH')) exit('No direct script is allowed');
require_once("Action_controller.php");
class Minimum_wages_report  extends Action_controller{	
	public function __construct(){
		parent::__construct('minimum_wages_report');
	}

	// 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;
		$this->load->view("$this->control_name/manage",$data);
	}
	
	public function get_minimum_wage_report(){
		$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);
		}
		$report_type    = $this->input->post('report_type');
		$process_month  = $this->input->post('from_date');
		$to_dates       = $this->input->post('to_date');    
		$start_date     = date("Y-m-d",strtotime('01-'.$this->input->post('from_date')));
		$end_date       = date("Y-m-t",strtotime('01-'.$this->input->post('from_date')));
		$from_date      = date("d-m-Y", strtotime('01-'.$process_month));
		$to_date        = date("t-m-Y", strtotime('01-'.$to_dates));
		//QUERY FOR GET LABEL NAME
		$column_name_qry = 'SELECT prime_form_id,label_name,view_name FROM cw_form_setting';
			$column_info     = $this->db->query("CALL sp_a_run('SELECT','$column_name_qry')");
			$column_result   = $column_info->result_array();
			$column_info->next_result();
		
			$column_arr = array_column($column_result, 'view_name','label_name');
			
		//REPORT TYPE 1 IS GET MONTH YEAR
		//REPORT TYPE 2 IS FROM_DATE TO DATE
		if($report_type   === '1'){

			$details_report_query = $this->db->query("CALL sp_min_wage_report('$process_month', '$start_date', '$end_date')");
			$report_result        = $details_report_query->result_array();
			$details_report_query->next_result();

			// $where_condition  = ' AND DATE_FORMAT(cw_sap_minimum_wage.app_from_date,"%Y-%m") >= "'.$from_date.'" 
			// AND DATE_FORMAT(cw_sap_minimum_wage.app_to_date,"%Y-%m")<="'.$to_date.'" GROUP BY cw_transactions_fms.employee_code';

			//-----------------------START DETAILS REPORT QUERY---------------------------//
			// $where_condition     = ' and  DATE_FORMAT(cw_sap_minimum_wage.app_from_date,"%Y-%m-%d") =  "'.$from_date.'"  GROUP BY cw_transactions_fms.employee_code';

			// $details_report_query   ='SELECT cw_transactions_fms.employee_code AS trans_Employee_Code,cw_transactions_fms.emp_name AS trans_Employee_Name,cw_transactions_fms.position AS trans_Designation,cw_transactions_fms.personal_code AS trans_Personal_Area,cw_sap_wbs.wbs_project_id,cw_sap_project.pro_desc,cw_sap_wbs.wbs_id,cw_sap_wbs.wbs_desc,cw_transactions_fms.transactions_month AS trans_Process_month,cw_transactions_fms.pd AS trans_Paid_Days,cw_transactions_fms.md AS trans_Month_days,cw_transactions_fms.fbasic AS trans_Fixed_Basic,cw_transactions_fms.fgross AS trans_Fixed_Gross,cw_transactions_fms.fda AS trans_Fixed_DA,cw_sap_minimum_wage.app_from_date,cw_sap_minimum_wage.app_to_date,cw_sap_minimum_wage.min_wage_type,cw_sap_minimum_wage.state,cw_sap_minimum_wage.state_min_wage,cw_sap_minimum_wage.mw_zone,cw_sap_minimum_wage.index_key,cw_sap_minimum_wage.industry_type,cw_sap_minimum_wage.category_index_no,cw_sap_minimum_wage.category_name,cw_sap_minimum_wage.basic_amt,cw_sap_minimum_wage.da_amt,cw_sap_minimum_wage.hra_amt,cw_sap_minimum_wage.ot_amt,cw_sap_minimum_wage.total_amt,(cw_transactions_fms.fbasic + cw_transactions_fms.pd_basic) AS Trans_Basic_Amount,(cw_transactions_fms.fda + cw_transactions_fms.pd_other) AS Trans_DA_Amount,(cw_transactions_fms.fhra + cw_transactions_fms.pd_hra) AS Trans_HRA_Amount,(cw_transactions_fms.fother + cw_transactions_fms.pd_other) AS Trans_Other_Amount,cw_transactions_fms.egross AS Trans_Earned_Salary_gross,cw_transactions_fms.ebasic AS Trans_Earned_Salary_basic,cw_transactions_fms.eda AS Trans_Earned_Salary_DA  FROM cw_transactions_fms INNER JOIN cw_sap_wbs ON cw_sap_wbs.wbs_id = cw_transactions_fms.wbs_element  INNER JOIN cw_sap_project ON cw_sap_project.pro_id = cw_sap_wbs.wbs_project_id INNER JOIN cw_sap_activity ON cw_sap_activity.prime_sap_activity_id = cw_transactions_fms.activity_no INNER JOIN cw_sap_minimum_wage ON cw_sap_minimum_wage.state = cw_sap_wbs.wbs_state AND cw_sap_wbs.wbs_zone = cw_sap_minimum_wage.mw_zone  AND cw_sap_project.pro_industry_type = cw_sap_minimum_wage.index_key AND cw_sap_minimum_wage.app_from_date <= DATE_FORMAT(STR_TO_DATE("'.$prc_month.'" , "%d-%m-%Y"),"%Y-%m-%d") AND cw_sap_minimum_wage.app_to_date >=  DATE_FORMAT(STR_TO_DATE("'.$last_date.'", "%d-%m-%Y"),"%Y-%m-%d") WHERE cw_transactions_fms.transactions_month = "'.$start_date.'" GROUP BY prime_transactions_fms_id;';
			// echo $details_report_query; die;
			// $report_info     = $this->db->query("CALL sp_a_run('SELECT','$details_report_query')");
			// $report_result   = $report_info->result_array();
			// $report_info->next_result();
			//---------------------------------END DETAILS REPORT QUERY------------------------------------//
		}else{
			// $where_condition  = ' AND DATE_FORMAT(cw_sap_minimum_wage.app_from_date,"%Y-%m-%d") >= "'.$from_date.'" 
			// AND DATE_FORMAT(cw_sap_minimum_wage.app_to_date,"%Y-%m-%d")<="'.$to_date.'" GROUP BY cw_transactions_fms.employee_code';
			$summary_report_query = 'SELECT cw_transactions_fms.employee_code AS trans_Employee_Code,cw_transactions_fms.emp_name AS trans_Employee_Name,cw_sap_project.pro_desc,cw_transactions_fms.personal_code AS trans_Personal_Area,cw_sap_wbs.wbs_project_id,cw_sap_wbs.wbs_id,cw_sap_wbs.wbs_desc,SUM(cw_transactions_fms.pd) AS trans_Paid_Days,SUM(cw_transactions_fms.egross)AS trans_egross	FROM cw_transactions_fms INNER JOIN cw_sap_wbs ON cw_sap_wbs.wbs_id = cw_transactions_fms.wbs_element INNER JOIN cw_sap_project ON cw_sap_project.pro_id = cw_sap_wbs.wbs_project_id INNER JOIN cw_sap_activity ON cw_sap_activity.prime_sap_activity_id = cw_transactions_fms.activity_no	INNER JOIN cw_sap_minimum_wage ON cw_sap_minimum_wage.state = cw_sap_wbs.wbs_state AND cw_sap_wbs.wbs_zone = cw_sap_minimum_wage.mw_zone AND cw_sap_project.pro_industry_type = cw_sap_minimum_wage.index_key AND cw_sap_minimum_wage.app_from_date <= DATE_FORMAT(STR_TO_DATE("'.$from_date.'" , "%d-%m-%Y"),"%Y-%m-%d") AND cw_sap_minimum_wage.app_to_date >=  DATE_FORMAT(STR_TO_DATE("'.$to_date.'", "%d-%m-%Y"),"%Y-%m-%d") WHERE cw_transactions_fms.trans_status=1 GROUP BY prime_transactions_fms_id';
			$summary_info     = $this->db->query("CALL sp_a_run('SELECT','$summary_report_query')");
			$report_result   = $summary_info->result_array();
			$summary_info->next_result();
			//cw_transactions_fms.transactions_month = '02-2023'
		}
		$rslt_arr   = array();
		foreach($report_result as $report_key => $report_arr){
			foreach($report_arr as $column_key => $column_val){	
				$col_key  = $column_arr[$column_key];
				if (array_key_exists($column_key,$column_arr)){
					$rslt_arr[$report_key][$col_key] = $column_val;
				}else{
					$form_name = str_replace('_', ' ', $column_key);
					$rslt_arr[$report_key][$form_name] = $column_val;
				}
			}
		}
		if($rslt_arr){
			echo json_encode(array("success"=>true,'message'=>"data successfully downloaded","json_data"=>$rslt_arr));
		}else{
			echo json_encode(array("success"=>false,"message"=>"No data found"));
		}
	}
}
?>