?
Current Path : /home1/savoy/public_html/savoyglobal.net/hr/application/models/ |
Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 |
Current File : /home1/savoy/public_html/savoyglobal.net/hr/application/models/reportmodel.php |
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Reportmodel extends CI_Model { function __construct() { // Call the Model constructor parent::__construct(); } function get_absencelist($postdata) { $data=array(); $qry="SELECT id,attendance_date,ea.employee_id,attendance_reason_id,em.emp_non_no_old,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no,em.emp_non_full_name,al.attendance_list_reason FROM `employee_absent` ea join employee_non_main em on em.emp_non_id=ea.employee_id JOIN visa_processing ON `visa_processing`.`employee_id` = `ea`.`employee_id` join attendance_list al on al.attendance_list_id=ea.attendance_reason_id where ea.employee_id != '' "; if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and ea.attendance_date between '$fromdate' and '$todate'"; } if($postdata['reason']!="") $qry.=" and attendance_reason_id = '".$postdata['reason']."'"; $qry.=" GROUP BY id order by ea.attendance_date desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_campreport($postdata) { $data=array(); $on_date=$this->mastermodel->convertdateformat($postdata['on_date']); $camp_id=$postdata['camp_name']; $qry="SELECT tt.*,employee_non_main.*,camp_name, GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no FROM camp_allotment tt INNER JOIN employee_non_main on employee_non_main.emp_non_id=tt.employee_id JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` INNER JOIN camp on tt.camp_id=camp.camp_id INNER JOIN (SELECT employee_id, MAX(camp_allotment_date) AS alloted_date FROM camp_allotment GROUP BY employee_id) groupedtt ON tt.employee_id = groupedtt.employee_id AND tt.camp_allotment_date = groupedtt.alloted_date where emp_non_id !=''"; if($camp_id!="") { $qry.=" and tt.camp_id = '$camp_id'"; } if($on_date!="") { $qry.=" and tt.camp_allotment_date <= '$on_date'"; } if($postdata['employee_status']!="") { $qry.=" and active = '".$postdata['employee_status']."'"; } $qry.=" GROUP BY emp_non_id order by camp_id,tt.camp_allotment_date desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_campshift($postdata) { $data=array(); $qry="select *,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `camp_allotment` inner join employee_non_main on `camp_allotment`.employee_id = employee_non_main.emp_non_id JOIN visa_processing ON `visa_processing`.`employee_id` = `camp_allotment`.`employee_id` where employee_non_main.emp_non_id != '' "; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and camp_allotment_date between '$fromdate' and '$todate'"; } if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; $qry.=" GROUP BY camp_allotment_id order by camp_allotment.camp_id, camp_allotment_date desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_siteshift($postdata) { $data=array(); $qry="select *,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `site_allotment` inner join employee_non_main on `site_allotment`.employee_id = employee_non_main.emp_non_id JOIN visa_processing ON `visa_processing`.`employee_id` = `site_allotment`.`employee_id` where employee_non_main.emp_non_id != '' "; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and site_allotment_date between '$fromdate' and '$todate'"; } if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; $qry.=" GROUP BY site_allotment_id order by site_allotment.site_id, site_allotment_date desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_leave($postdata) { $data=array(); $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry="select *,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `leave` inner join employee_non_main on `leave`.employee_id = employee_non_main.emp_non_id inner join leave_type on `leave`.leave_type_id = leave_type.leave_type_id JOIN visa_processing ON `visa_processing`.`employee_id` = `leave`.`employee_id` where employee_non_main.emp_non_id != '' "; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and ".$postdata['date_filter']." between '$fromdate' and '$todate'"; } if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; if($postdata['leave_type']!="") $qry.=" and `leave`.leave_type_id = '".$postdata['leave_type']."'"; if($postdata['leave_status']!="") $qry.=" and `leave`.leave_status = '".$postdata['leave_status']."'"; if($postdata['leave_reason']!="") $qry.=" and `leave`.leave_reason = '".$postdata['leave_reason']."'"; $qry.=" GROUP BY leave_id order by leave_id desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_employeestatus($postdata) { $data=array(); $qry="select *,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `employee_non_main` inner join emp_non_personal on employee_non_main.emp_non_id = emp_non_personal.emp_non_id inner join trade on employee_non_main.emp_non_trade_id = trade.trade_id JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id`"; if($postdata['employee_status']!="") $qry.=" where active = '".$postdata['employee_status']."' and"; else $qry.=" where"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" employee_non_main.emp_non_date_joining between '$fromdate' and '$todate'"; } else $qry.=" employee_non_main.emp_non_id != ''"; $qry.=" GROUP BY employee_non_main.emp_non_id order by employee_non_main.emp_non_date_joining desc, employee_non_main.emp_non_full_name"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_visa($postdata) { if($postdata['date_filter']!="visa_issue_date") { $data=array(); $qry="SELECT ifnull(vp2.employee_id,vp1.employee_id) as employee_id,IFNULL(vp2.employee_no,vp1.employee_no) as employee_no,emp_non_no_old,emp_non_passport_no,emp_non_full_name,visa_type_name,IFNULL(vp2.visa_issue_date,vp1.visa_issue_date) as visa_issue_date,ifnull(vp2.medical,vp1.medical) as medical,ifnull(vp2.fingerprint,vp1.fingerprint) as fingerprint ,ifnull(vp2.health_card_no,vp1.health_card_no) as health_card_no,ifnull(vp2.id_card_no,vp1.id_card_no) as id_card_no,ifnull(vp2.blood_group,vp1.blood_group) as blood_group,emp_non_date_joining,IFNULL(vp2.visa_expiry_date,vp1.visa_expiry_date) AS visa_expiry_date ,IFNULL(vp2.visa_expiry_date,vp1.visa_expiry_date) AS expiry_date FROM .`visa_processing` AS `vp1` INNER JOIN employee_non_main ON (vp1.employee_no = employee_non_main.emp_non_no) INNER JOIN visa_type ON visa_type.visa_type_id = vp1.visa_type_id LEFT OUTER JOIN .`visa_processing` AS `vp2` ON (`vp1`.`employee_id` = `vp2`.`employee_id` AND vp1.visa_expiry_date < vp2.visa_expiry_date) where (vp1.`employee_id` != '' or vp2.`employee_id` != '') "; if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; if($postdata['visa_type']!="") $qry.=" and (vp1.`visa_type_id` = '".$postdata['visa_type']."' or vp2.`visa_type_id` = '".$postdata['visa_type']."')"; $qry.=" GROUP BY employee_id"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" having ".$postdata['date_filter']." between '$fromdate' and '$todate'"; } $qry.=" order by expiry_date desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } else { $data=array(); $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry="select * from `visa_processing` inner join employee_non_main on `visa_processing`.employee_id = employee_non_main.emp_non_id inner join visa_type on `visa_processing`.`visa_type_id` = visa_type.visa_type_id where employee_non_main.emp_non_id != '' "; if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and ".$postdata['date_filter']." between '$fromdate' and '$todate'"; } if($postdata['visa_type']!="") $qry.=" and `visa_processing`.`visa_type_id` = '".$postdata['visa_type']."'"; $qry.=" order by ".$postdata['date_filter']." desc "; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } } function get_passport($postdata) { $data=array(); $qry="select * ,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `passport_processing` inner join employee_non_main on `passport_processing`.employee_id = employee_non_main.emp_non_id JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` where employee_non_main.emp_non_id != ''"; if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and ".$postdata['date_filter']." between '$fromdate' and '$todate'"; } $qry.=" group by `employee_non_main`.`emp_non_id` order by passport_processing_id desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_disciplinary($postdata) { $data=array(); $qry="select *,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `cir` inner join employee_non_main on `cir`.employee_id = employee_non_main.emp_non_id JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` where emp_non_id !=''"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and ".$postdata['date_filter']." between '$fromdate' and '$todate'"; } if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; $qry.=" GROUP BY employee_non_main.emp_non_id order by cir_date desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_purchase($postdata) { $data=array(); $qry= "SELECT `item_tool_allotment`.`allotment_id`, `employee_non_main`.`emp_non_id`,`employee_non_main`.`emp_non_passport_no`,emp_non_no_old ,`employee_non_main`.`emp_non_full_name` ,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no ,`employee_non_main`.`emp_non_date_joining` FROM `employee_non_main` INNER JOIN `item_tool_allotment` ON (`item_tool_allotment`.`employee_id` = `employee_non_main`.`emp_non_id`) JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id`"; if($postdata['employee_status']!="") $qry.=" where employee_non_main.active = '".$postdata['employee_status']."'"; $qry .= " GROUP BY `employee_non_main`.`emp_non_id` order by emp_non_id desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_settlement($postdata) { $data=array(); $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry= "SELECT `settlement`.`settlement_id`,`settlement`.`basic_salary`,`settlement`.`final_amount`,`settlement`.`date`, `employee_non_main`.`emp_non_id`,`employee_non_main`.`emp_non_passport_no` ,`employee_non_main`.`emp_non_full_name`,emp_non_no_old ,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no ,`employee_non_main`.`emp_non_date_joining` FROM `employee_non_main` INNER JOIN `leave` ON (`leave`.`employee_id` = `employee_non_main`.`emp_non_id`) INNER JOIN `settlement` ON (`settlement`.`leave_id` = `leave`.`leave_id`) JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id`"; if($postdata['employee_status']!="") $qry.=" where active = '".$postdata['employee_status']."' and"; else $qry.=" where"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" `settlement`.`date` between '$fromdate' and '$todate'"; } else $qry.=" employee_non_main.emp_non_id != ''"; $qry .= " GROUP BY `settlement`.`settlement_id` order by settlement_id desc"; $qry1= "SELECT `settlement_direct`.`settlement_direct_id`,`settlement_direct`.`basic_salary`,`settlement_direct`.`final_amount`,`settlement_direct`.`date`, `employee_non_main`.`emp_non_id`,`employee_non_main`.`emp_non_passport_no` ,`employee_non_main`.`emp_non_full_name`,emp_non_no_old ,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no ,`employee_non_main`.`emp_non_date_joining` FROM `employee_non_main` INNER JOIN `settlement_direct` ON (`settlement_direct`.`employee_id` = `employee_non_main`.`emp_non_id`) JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id`"; if($postdata['employee_status']!="") $qry1.=" where active = '".$postdata['employee_status']."' and"; else $qry1.=" where"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry1.=" `settlement_direct`.`date` between '$fromdate' and '$todate'"; } else $qry1.=" employee_non_main.emp_non_id != ''"; $qry1 .= " GROUP BY `settlement_direct`.`settlement_direct_id` order by settlement_direct_id desc"; $query= "(".$qry.") UNION (".$qry1.")"; $res=$this->db->query($query); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_missing($postdata) { $data=array(); $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry="select * ,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `missing` inner join employee_non_main on `missing`.employee_id = employee_non_main.emp_non_id JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` where employee_non_main.emp_non_id != ''"; if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and ".$postdata['date_filter']." between '$fromdate' and '$todate'"; } $qry.=" group by employee_non_main.emp_non_id order by missing_id desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_exit($postdata) { $data=array(); $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry="select *,GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id) AS emp_non_no from `exit` inner join `leave` on `leave`.`leave_id`=`exit`.`leave_id` inner join employee_non_main on employee_non_main.emp_non_id=`leave`.`employee_id` inner join leave_type on `leave`.leave_type_id = leave_type.leave_type_id JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` where employee_non_main.emp_non_id != '' "; if($postdata['employee_status']!="") $qry.=" and active = '".$postdata['employee_status']."'"; if($postdata['from_date']!="" && $postdata['to_date']!="") { $fromdate= $this->mastermodel->convdatformat($postdata['from_date']); $todate=$this->mastermodel->convdatformat($postdata['to_date']); $qry.=" and exit_date between '$fromdate' and '$todate'"; } if($postdata['leave_type']!="" ) { $qry.=" and leave.leave_type_id = '".$postdata['leave_type']."'"; } if($postdata['exit_permit']!="" ) { $qry.=" and exit_permit = '".$postdata['exit_permit']."'"; } $qry.=" group by employee_non_main.emp_non_id order by exit_id desc"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_employee($postdata) { $data=array(); $employee_name = $postdata['employee_name']; if($employee_name!="" && (strstr($employee_name, '<') != "")) { $no_array = explode('<', $employee_name); $employee_no = trim($no_array[1],">"); $this->db->join('employee_non_main','employee_non_main.emp_non_id = emp_non_personal.emp_non_id'); $this->db->where('emp_non_no',$employee_no); $Q= $this->db->get('emp_non_personal'); $row=$Q->row(); return $row; } else { return 0; } } function findemployeeleave($date) { $qry="SELECT employee_id, attendance_list_reason,emp_non_full_name,emp_non_no FROM `employee_absent` ea join attendance_list al on al.attendance_list_id=ea.attendance_reason_id join employee_non_main enm on enm.emp_non_id=ea.employee_id where ea.attendance_date = '$date'"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function findemployeecamp($empid,$date) { $date = $this->mastermodel->convertdateformat($date); $qry="SELECT `camp`.`camp_name`,`camp`.`camp_id` , `camp_allotment`.`camp_allotment_date` FROM `camp_allotment` INNER JOIN `camp` ON (`camp_allotment`.`camp_id` = `camp`.`camp_id`) WHERE employee_id = '$empid' AND camp_allotment_date <='$date' and camp_allotment_date=(select max(camp_allotment_date) from camp_allotment INNER JOIN `camp` ON (`camp_allotment`.`camp_id` = `camp`.`camp_id`) WHERE employee_id = '$empid' AND camp_allotment_date <='$date' ) "; $res=$this->db->query($qry); $data=$res->row(); return $data; } function findemployeepreviouscamp($empid,$date) { $date = $this->mastermodel->convertdateformat($date); $qry="SELECT `camp`.`camp_name`,`camp`.`camp_id` , `camp_allotment`.`camp_allotment_date` FROM `camp_allotment` INNER JOIN `camp` ON (`camp_allotment`.`camp_id` = `camp`.`camp_id`) WHERE employee_id = '$empid' AND camp_allotment_date <'$date' and camp_allotment_date=(select max(camp_allotment_date) from camp_allotment INNER JOIN `camp` ON (`camp_allotment`.`camp_id` = `camp`.`camp_id`) WHERE employee_id = '$empid' AND camp_allotment_date <'$date' ) "; $res=$this->db->query($qry); $data=$res->row(); return $data; } function findemployeetrade($empid,$date) { $date = $this->mastermodel->convertdateformat($date); $qry=" SELECT `trade`.`trade_name` FROM `trade_change` INNER JOIN `trade` ON (`trade_change`.`trade_id` = `trade`.`trade_id`) WHERE employee_id = '$empid' AND trade_change_date <='$date' and trade_change_date=(select max(trade_change_date) FROM `trade_change` INNER JOIN `trade` ON (`trade_change`.`trade_id` = `trade`.`trade_id`) WHERE employee_id = '$empid' AND trade_change_date <='$date') "; $res=$this->db->query($qry); $data=$res->row(); return $data; } function findemployeesite($empid,$date) { $date = $this->mastermodel->convertdateformat($date); $qry="SELECT `site`.`site_name`,`site`.`site_id` , `site_allotment`.`site_allotment_date` FROM `site_allotment` INNER JOIN `site` ON (`site_allotment`.`site_id` = `site`.`site_id`) WHERE employee_id = '$empid' AND site_allotment_date <='$date' and site_allotment_date=(select max(site_allotment_date) from site_allotment INNER JOIN `site` ON (`site_allotment`.`site_id` = `site`.`site_id`) WHERE employee_id = '$empid' AND site_allotment_date <='$date' ) "; $res=$this->db->query($qry); $data=$res->row(); return $data; } function findcampemployee($date,$campid) { $qry="SELECT `employee_id` FROM `camp_allotment` WHERE `camp_allotment_date`<='$date' and camp_id='$campid'"; $res=$this->db->query($qry); if ($res->num_rows() > 0) { foreach ($res->result_array() as $row) { $data[] = $row; } } $res->free_result(); return $data; } function get_all_employees() { $data = array(); $sql = "select employee_non_main.emp_non_id, emp_non_full_name, emp_non_date_joining, batch_code, trade_name, emp_non_no from employee_non_main inner join emp_non_personal on emp_non_personal.emp_non_id=employee_non_main.emp_non_id inner join batch on id=batch_id inner join trade on emp_non_trade_id=trade_id"; $sql.= " order by emp_non_full_name"; $Q = $this->db->query($sql); if ($Q->num_rows() > 0) { foreach ($Q->result_array() as $row) { $data[] = $row; } } $Q->free_result(); return $data; } function get_reason_absent_count($camp_id,$reason_id,$from_date,$to_date,$employee_status) { $from_date = $this->mastermodel->convertdateformat($from_date); $to_date = $this->mastermodel->convertdateformat($to_date); $count = 0; $sql = "SELECT * FROM `employee_absent` where attendance_reason_id = '$reason_id' and `employee_absent`.`attendance_date` BETWEEN '$from_date' AND '$to_date'"; $Q = $this->db->query($sql); if ($Q->num_rows() > 0) { foreach ($Q->result_array() as $row) { $camp=$this->reportmodel->findemployeecamp($row['employee_id'],$row['attendance_date']); if($camp->camp_id == $camp_id) $count++; } } return $count; } }