?
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/exitsmodel.php |
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Exitsmodel extends CI_Model { function __construct() { // Call the Model constructor parent::__construct(); } /*Search function starts here*/ function search_leave($pagenum) { $data=array(); $this->db->from('leave'); $this->db->join('employee_non_main','leave.employee_id=employee_non_main.emp_non_id'); $this->db->join('master','master_id=emp_non_id'); $this->db->join('leave_type','leave_type.leave_type_id=leave.leave_type_id'); $this->db->join('trade','trade_id=emp_non_trade_id'); $this->db->where('active','1'); $this->db->where('missing_id','0'); $postdata=$_SESSION['searchdata']; if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; $this->db->like($searchfield, $searchtext); } $count= $this->db->count_all_results(); $arr=$this->fpaginate->paginate($pagenum,$count); $data['startpage']=$arr[0]; $data['endpage']=$arr[1]; $start=$arr[2]; $perpage=$arr[3]; $data['count']=$count; $sql =("SELECT leave_id,emp_non_full_name,trade_name,emp_non_id,leave_type_name,leave_reason,leave_starting_date,leave_status, CONCAT(`employee_non_main`.`emp_non_no_old`,',',GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id)) AS emp_non_no FROM (`leave`) JOIN `employee_non_main` ON `emp_non_id`=`employee_id` JOIN `master` ON `master_id`=`emp_non_id` JOIN leave_type on leave_type.leave_type_id=leave.leave_type_id JOIN `trade` ON `trade_id`=`emp_non_trade_id` JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` where active = '1' and missing_id = '0'"); if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; $sql.=" and $searchfield like '%$searchtext%'"; } $sql.=" GROUP BY leave_id ORDER BY `leave_id` DESC limit $start, $perpage"; $data['results']=$this->db->query($sql); return $data; } function search_settlement($pagenum) { $data=array(); $this->db->from('leave'); $this->db->join('employee_non_main','leave.employee_id=employee_non_main.emp_non_id'); $this->db->join('master','master_id=emp_non_id'); $this->db->join('leave_type','leave_type.leave_type_id=leave.leave_type_id'); $this->db->join('trade','trade_id=emp_non_trade_id'); $this->db->where('active','1'); $this->db->where('leave_status','Approved'); $this->db->where('missing_id','0'); $postdata=$_SESSION['searchdata']; if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; if($searchfield == 'emp_non_date_joining') { $searchtext=$this->mastermodel->convdatformat($searchtext); } $this->db->like($searchfield, $searchtext); } $count= $this->db->count_all_results(); $arr=$this->fpaginate->paginate($pagenum,$count); $data['startpage']=$arr[0]; $data['endpage']=$arr[1]; $start=$arr[2]; $perpage=$arr[3]; $data['count']=$count; $sql =("SELECT leave.leave_id,emp_non_full_name,trade_name,emp_non_id,leave_type_name,leave_reason,leave_starting_date,leave_status, CONCAT(`employee_non_main`.`emp_non_no_old`,',',GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id)) AS emp_non_no, IFNULL(`settlement`.`leave_id`,'9999999999999') as leave_id_new FROM (`leave`) JOIN `employee_non_main` ON `emp_non_id`=`employee_id` JOIN `master` ON `master_id`=`emp_non_id` JOIN leave_type on leave_type.leave_type_id=leave.leave_type_id JOIN `trade` ON `trade_id`=`emp_non_trade_id` JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` LEFT JOIN `settlement` ON `settlement`.`leave_id`=`leave`.`leave_id` where active = '1' and leave_status = 'Approved' and missing_id = '0'"); if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; $sql.=" and $searchfield like '%$searchtext%'"; } $sql.=" GROUP BY leave_id ORDER BY `leave_id_new` DESC limit $start, $perpage"; $data['results']=$this->db->query($sql); return $data; } function search_settlement_direct($pagenum) { $data=array(); $this->db->from('settlement_direct'); $this->db->join('employee_non_main','settlement_direct.employee_id=employee_non_main.emp_non_id'); $this->db->join('master','master_id=emp_non_id'); $this->db->join('trade','trade_id=emp_non_trade_id'); $this->db->where('active','1'); $postdata=$_SESSION['searchdata']; if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; if($searchfield == 'emp_non_date_joining') { $searchtext=$this->mastermodel->convdatformat($searchtext); } $this->db->like($searchfield, $searchtext); } $count= $this->db->count_all_results(); $arr=$this->fpaginate->paginate($pagenum,$count); $data['startpage']=$arr[0]; $data['endpage']=$arr[1]; $start=$arr[2]; $perpage=$arr[3]; $data['count']=$count; $sql =("SELECT settlement_direct.settlement_direct_id,emp_non_full_name,trade_name,emp_non_id,basic_salary,date,final_amount, CONCAT(`employee_non_main`.`emp_non_no_old`,',',GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id)) AS emp_non_no FROM (`settlement_direct`) JOIN `employee_non_main` ON `emp_non_id`=`employee_id` JOIN `master` ON `master_id`=`emp_non_id` JOIN `trade` ON `trade_id`=`emp_non_trade_id` JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` where active = '1'"); if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; if($searchfield == 'date') { $searchtext=$this->mastermodel->convdatformat($searchtext); } $sql.=" and $searchfield like '%$searchtext%'"; } $sql.=" GROUP BY settlement_direct_id ORDER BY `settlement_direct_id` DESC limit $start, $perpage"; $data['results']=$this->db->query($sql); return $data; } function search_exit($pagenum) { $data=array(); $this->db->from('leave'); $this->db->join('employee_non_main','leave.employee_id=employee_non_main.emp_non_id'); $this->db->join('master','master_id=emp_non_id'); $this->db->join('settlement','settlement.leave_id=leave.leave_id'); $this->db->join('leave_type','leave_type.leave_type_id=leave.leave_type_id'); $this->db->join('trade','trade_id=emp_non_trade_id'); $this->db->where('leave_status','Approved'); $postdata=$_SESSION['searchdata']; if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; $this->db->like($searchfield, $searchtext); } $this->db->or_where('missing_id !=','0'); $count= $this->db->count_all_results(); $arr=$this->fpaginate->paginate($pagenum,$count); $data['startpage']=$arr[0]; $data['endpage']=$arr[1]; $start=$arr[2]; $perpage=$arr[3]; $data['count']=$count; $sql =("SELECT leave.leave_id,emp_non_full_name,trade_name,emp_non_id,leave_type_name,leave_reason,leave_starting_date,leave_status, CONCAT(`employee_non_main`.`emp_non_no_old`,',',GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id)) AS emp_non_no, IFNULL(`exit`.`leave_id`,'9999999999999') as leave_id_new FROM (`leave`) JOIN `settlement` ON settlement.leave_id=leave.leave_id JOIN `employee_non_main` ON `emp_non_id`=`employee_id` JOIN `master` ON `master_id`=`emp_non_id` JOIN leave_type on leave_type.leave_type_id=leave.leave_type_id JOIN `trade` ON `trade_id`=`emp_non_trade_id` JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` LEFT JOIN `exit` ON `exit`.`leave_id`=`leave`.`leave_id` where (leave_status = 'Approved' or missing_id != '0')"); if(!empty($postdata)) { $searchtext=$postdata['searchtext']; $searchfield=$postdata['searchopt']; $sql.=" and $searchfield like '%$searchtext%'"; } $sql.=" GROUP BY leave_id ORDER BY `leave_id_new` DESC limit $start, $perpage"; $data['results']=$this->db->query($sql); return $data; } /*Search function ends here*/ /*Add function starts here*/ function insert_leave($postdata) { $data=array(); $this->db->trans_begin(); $leave_starting_date= $this->mastermodel->convertdateformat($postdata['leave_starting_date']); if($postdata['leave_type_id']=='3') { $postdata['leave_ending_date']='00-00-0000'; } $leave_ending_date= $this->mastermodel->convertdateformat($postdata['leave_ending_date']); $tblValues=array( 'employee_id'=>$postdata['employee_id'], 'leave_type_id'=>$postdata['leave_type_id'], 'leave_starting_date'=>$leave_starting_date, 'leave_ending_date'=>$leave_ending_date, 'leave_reason'=>$postdata['leave_reason'], 'leave_ticket'=>$postdata['leave_ticket'], 'remarks'=>$postdata['remarks'], 'leave_from'=>$postdata['leave_from'], 'leave_to'=>$postdata['leave_to'], 'leave_application_form_name'=>$postdata['leave_application_form_name'], 'leave_application_form_doc'=>$postdata['leave_application_form_doc'], 'proof_emergency_name'=>$postdata['proof_emergency_name'], 'proof_emergency_doc'=>$postdata['proof_emergency_doc'], 'clearence_form_name'=>$postdata['clearence_form_name'], 'clearence_form_doc'=>$postdata['clearence_form_doc'], 'self_declaration_name'=>$postdata['self_declaration_name'], 'self_declaration_doc'=>$postdata['self_declaration_doc'], 'settlement_sheet_name'=>$postdata['settlement_sheet_name'], 'settlement_sheet_doc'=>$postdata['settlement_sheet_doc'], 'leave_status'=>$postdata['leave_status']); $this->db->insert('leave', $tblValues); if($postdata['leave_status']=="Approved") { $alert_id = $this->mastermodel->insert_alert('26',$postdata['employee_id']); $i=1; while (isset($postdata['user_id_'.$i])) { if(isset($postdata['select_user_'.$i])) { $tblValues=array( 'alert_id'=>$alert_id, 'user_id'=>$postdata['user_id_'.$i]); $this->db->insert('alert_user', $tblValues); } $i++; } } if(isset($postdata['alert_id'])) { $this->mastermodel->mark_completed($postdata['alert_id']); $data['resfunction'] = 'return_page'; $data['alert_id'] = $postdata['alert_id']; } else { $this->mastermodel->mark_completed_emp($postdata['employee_id'],'3'); $data['resfunction']='search_leave'; } if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On Adding Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details inserted Successfully'; return $data; } } function insert_settlement($postdata) { $data=array(); $this->db->trans_begin(); $settlement_date= $this->mastermodel->convertdateformat($postdata['settlement_date']); $tblValues=array( 'leave_id'=>$postdata['leave_id'], 'date'=>$settlement_date, 'basic_salary'=>$postdata['basic_salary'], 'final_amount'=>$postdata['final_amount']); $this->db->insert('settlement', $tblValues); $i=1; $settlement_id=mysql_insert_id(); while (isset($postdata['allowance_id_'.$i])) { if(isset($postdata['select_allowance_'.$i])) { $allowance_id = $postdata['allowance_id_'.$i]; $allowance_amount= $postdata['allowance_amount_'.$i]; $tblValues=array( 'settlement_id'=>$settlement_id, 'allowance_id'=>$allowance_id, 'allowance_amount'=>$allowance_amount); $this->db->insert('settlement_allowance', $tblValues); } $i++; } $i=1; while (isset($postdata['deduction_id_'.$i])) { if(isset($postdata['select_deduction_'.$i])) { $deduction_id = $postdata['deduction_id_'.$i]; $deduction_amount= $postdata['deduction_amount_'.$i]; $tblValues=array( 'settlement_id'=>$settlement_id, 'deduction_id'=>$deduction_id, 'deduction_amount'=>$deduction_amount); $this->db->insert('settlement_deduction', $tblValues); } $i++; } $alert_id = $this->mastermodel->insert_alert('27',$postdata['employee_id']); $i=1; while (isset($postdata['user_id_'.$i])) { if(isset($postdata['select_user_'.$i])) { $tblValues=array( 'alert_id'=>$alert_id, 'user_id'=>$postdata['user_id_'.$i]); $this->db->insert('alert_user', $tblValues); } $i++; } if($postdata['alert_id']=="") { $this->mastermodel->mark_completed_emp($postdata['employee_id'],'26'); $data['resfunction']='search_settlement'; } else { $this->mastermodel->mark_completed($postdata['alert_id']); $data['resfunction'] = 'return_page'; $data['alert_id'] = $postdata['alert_id']; } if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On Adding Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details inserted Successfully'; return $data; } } function insert_settlement_direct($postdata) { $data=array(); $this->db->trans_begin(); $settlement_date= $this->mastermodel->convertdateformat($postdata['date']); $tblValues=array( 'employee_id'=>$postdata['employee_id'], 'date'=>$settlement_date, 'basic_salary'=>$postdata['basic_salary'], 'final_amount'=>$postdata['final_amount']); $this->db->insert('settlement_direct', $tblValues); $i=1; $settlement_id=mysql_insert_id(); while (isset($postdata['allowance_id_'.$i])) { if(isset($postdata['select_allowance_'.$i])) { $allowance_id = $postdata['allowance_id_'.$i]; $allowance_amount= $postdata['allowance_amount_'.$i]; $tblValues=array( 'settlement_direct_id'=>$settlement_id, 'allowance_id'=>$allowance_id, 'allowance_amount'=>$allowance_amount); $this->db->insert('settlement_direct_allowance', $tblValues); } $i++; } $i=1; while (isset($postdata['deduction_id_'.$i])) { if(isset($postdata['select_deduction_'.$i])) { $deduction_id = $postdata['deduction_id_'.$i]; $deduction_amount= $postdata['deduction_amount_'.$i]; $tblValues=array( 'settlement_direct_id'=>$settlement_id, 'deduction_id'=>$deduction_id, 'deduction_amount'=>$deduction_amount); $this->db->insert('settlement_direct_deduction', $tblValues); } $i++; } $data['resfunction']='search_settlement_direct'; if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On Adding Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details inserted Successfully'; return $data; } } function insert_exit($postdata) { $data=array(); $this->db->trans_begin(); $tblValues=array( 'leave_id'=>$postdata['leave_id'], 'exit_date'=>$this->mastermodel->convertdateformat($postdata['exit_date']), 'exit_permit'=>$postdata['exit_permit']); $this->db->insert('exit', $tblValues); $employee_id = $this->mastermodel->getSingleFieldValue('`leave`','employee_id','leave_id',$postdata['leave_id']); if($postdata['exit_permit']=="Issued") { $tblValues=array('active'=>'0'); $this->db->where('emp_non_id', $employee_id); $this->db->update('employee_non_main', $tblValues); $employee_id = $this->mastermodel->getSingleFieldValue('`leave`','employee_id','leave_id',$postdata['leave_id']); $emp_non_no = $this->mastermodel->getSingleFieldValue('`employee_non_main`','emp_non_no','emp_non_id',$employee_id); $tblValues=array( 'employee_id'=>$employee_id, 'effective_date'=>$this->mastermodel->convertdateformat($postdata['exit_date']), 'employee_no'=>$emp_non_no, 'employee_status'=> '0'); $this->db->insert('employee_status', $tblValues); } if($postdata['alert_id']=="") { $this->mastermodel->mark_completed_emp($employee_id,'27'); $data['resfunction']='search_exit'; } else { $this->mastermodel->mark_completed($postdata['alert_id']); $data['resfunction'] = 'return_page'; $data['alert_id'] = $postdata['alert_id']; } if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On Adding Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details inserted Successfully'; return $data; } } /*Add function ends here*/ /*Update function starts here*/ function update_leave($postdata) { $data=array(); $this->db->trans_begin(); $i=1; if($postdata['leave_type_id']=='3') { $postdata['leave_ending_date']='00-00-0000'; } $leave_starting_date= $this->mastermodel->convertdateformat($postdata['leave_starting_date']); $leave_ending_date= $this->mastermodel->convertdateformat($postdata['leave_ending_date']); $tblValues=array( 'leave_type_id'=>$postdata['leave_type_id'], 'leave_starting_date'=>$leave_starting_date, 'leave_ending_date'=>$leave_ending_date, 'leave_reason'=>$postdata['leave_reason'], 'leave_ticket'=>$postdata['leave_ticket'], 'remarks'=>$postdata['remarks'], 'leave_from'=>$postdata['leave_from'], 'leave_to'=>$postdata['leave_to'], 'leave_status'=>$postdata['leave_status'],); $this->db->where('leave_id', $postdata['leave_id']); $this->db->update('leave', $tblValues); if($postdata['leave_application_form_doc']!='') { $tblValues=array( 'leave_application_form_doc'=>$postdata['leave_application_form_doc']); $this->db->where('leave_id', $postdata['leave_id']); $this->db->update('leave', $tblValues); } if($postdata['clearence_form_doc']!='') { $tblValues=array( 'clearence_form_doc'=>$postdata['clearence_form_doc']); $this->db->where('leave_id', $postdata['leave_id']); $this->db->update('leave', $tblValues); } if($postdata['self_declaration_doc']!='') { $tblValues=array( 'self_declaration_doc'=>$postdata['self_declaration_doc']); $this->db->where('leave_id', $postdata['leave_id']); $this->db->update('leave', $tblValues); } if($postdata['settlement_sheet_doc']!='') { $tblValues=array( 'settlement_sheet_doc'=>$postdata['settlement_sheet_doc']); $this->db->where('leave_id', $postdata['leave_id']); $this->db->update('leave', $tblValues); } if($postdata['proof_emergency_doc']!='') { $tblValues=array( 'proof_emergency_doc'=>$postdata['proof_emergency_doc']); $this->db->where('leave_id', $postdata['leave_id']); $this->db->update('leave', $tblValues); } $number = $this->mastermodel->number_rows('alert','alert_master_id','26','employee_id',$postdata['employee_id']); if($postdata['leave_status']=="Approved" && $number == '0') { $alert_id = $this->mastermodel->insert_alert('26',$postdata['employee_id']); $i=1; while (isset($postdata['user_id_'.$i])) { if(isset($postdata['select_user_'.$i])) { $tblValues=array( 'alert_id'=>$alert_id, 'user_id'=>$postdata['user_id_'.$i]); $this->db->insert('alert_user', $tblValues); } $i++; } } $data['resfunction']='search_leave'; if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On updating Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details updated Successfully'; return $data; } } function update_settlement($postdata) { $data=array(); $this->db->trans_begin(); $settlement_date= $this->mastermodel->convertdateformat($postdata['settlement_date']); $tblValues=array( 'leave_id'=>$postdata['leave_id'], 'date'=>$settlement_date, 'basic_salary'=>$postdata['basic_salary'], 'final_amount'=>$postdata['final_amount']); $this->db->where('settlement_id', $postdata['settlement_id']); $this->db->update('settlement', $tblValues); $this->db->where('settlement_id',$postdata['settlement_id']); $this->db->delete('settlement_allowance'); $this->db->where('settlement_id',$postdata['settlement_id']); $this->db->delete('settlement_deduction'); $settlement_id= $postdata['settlement_id']; $i=1; while (isset($postdata['allowance_id_'.$i])) { if(isset($postdata['select_allowance_'.$i])) { $allowance_id = $postdata['allowance_id_'.$i]; $allowance_amount= $postdata['allowance_amount_'.$i]; $tblValues=array( 'settlement_id'=>$settlement_id, 'allowance_id'=>$allowance_id, 'allowance_amount'=>$allowance_amount); $this->db->insert('settlement_allowance', $tblValues); } $i++; } $i=1; while (isset($postdata['deduction_id_'.$i])) { if(isset($postdata['select_deduction_'.$i])) { $deduction_id = $postdata['deduction_id_'.$i]; $deduction_amount= $postdata['deduction_amount_'.$i]; $tblValues=array( 'settlement_id'=>$settlement_id, 'deduction_id'=>$deduction_id, 'deduction_amount'=>$deduction_amount); $this->db->insert('settlement_deduction', $tblValues); } $i++; } $data['resfunction']='search_settlement'; if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On updating Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details updated Successfully'; return $data; } } function update_settlement_direct($postdata) { $data=array(); $this->db->trans_begin(); $settlement_date= $this->mastermodel->convertdateformat($postdata['date']); $tblValues=array( 'date'=>$settlement_date, 'basic_salary'=>$postdata['basic_salary'], 'final_amount'=>$postdata['final_amount']); $this->db->where('settlement_direct_id', $postdata['settlement_direct_id']); $this->db->update('settlement_direct', $tblValues); $this->db->where('settlement_direct_id', $postdata['settlement_direct_id']); $this->db->delete('settlement_direct_allowance'); $this->db->where('settlement_direct_id', $postdata['settlement_direct_id']); $this->db->delete('settlement_direct_deduction'); $settlement_direct_id = $postdata['settlement_direct_id']; $i=1; while (isset($postdata['allowance_id_'.$i])) { if(isset($postdata['select_allowance_'.$i])) { $allowance_id = $postdata['allowance_id_'.$i]; $allowance_amount= $postdata['allowance_amount_'.$i]; $tblValues=array( 'settlement_direct_id'=>$settlement_direct_id, 'allowance_id'=>$allowance_id, 'allowance_amount'=>$allowance_amount); $this->db->insert('settlement_direct_allowance', $tblValues); } $i++; } $i=1; while (isset($postdata['deduction_id_'.$i])) { if(isset($postdata['select_deduction_'.$i])) { $deduction_id = $postdata['deduction_id_'.$i]; $deduction_amount= $postdata['deduction_amount_'.$i]; $tblValues=array( 'settlement_direct_id'=>$settlement_direct_id, 'deduction_id'=>$deduction_id, 'deduction_amount'=>$deduction_amount); $this->db->insert('settlement_direct_deduction', $tblValues); } $i++; } $data['resfunction']='search_settlement_direct'; if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On updating Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details updated Successfully'; return $data; } } function update_exit($postdata) { $data=array(); $this->db->trans_begin(); $exit_date = $this->mastermodel->convertdateformat($postdata['exit_date']); $tblValues=array( 'exit_date'=>$exit_date, 'exit_permit'=>$postdata['exit_permit']); $this->db->where('exit_id', $postdata['exit_id']); $this->db->update('exit', $tblValues); $employee_id = $this->mastermodel->getSingleFieldValue('`leave`','employee_id','leave_id',$postdata['leave_id']); $emp_non_no = $this->mastermodel->getSingleFieldValue('`employee_non_main`','emp_non_no','emp_non_id',$employee_id); if($postdata['exit_permit']=="Issued") { $tblValues=array('active'=>'0'); $this->db->where('emp_non_id', $employee_id); $this->db->update('employee_non_main', $tblValues); $tblValues=array( 'employee_id'=>$employee_id, 'effective_date'=>$exit_date, 'employee_no'=>$emp_non_no, 'employee_status'=> '0'); $this->db->insert('employee_status', $tblValues); } if($postdata['exit_permit']=="Not Issued") { $tblValues=array('active'=>'1'); $employee_id = $this->mastermodel->getSingleFieldValue('`leave`','employee_id','leave_id',$postdata['leave_id']); $this->db->where('emp_non_id', $employee_id); $this->db->update('employee_non_main', $tblValues); $tblValues=array( 'employee_id'=>$employee_id, 'effective_date'=>$exit_date, 'employee_no'=>$emp_non_no, 'employee_status'=> '1'); $this->db->insert('employee_status', $tblValues); } $data['resfunction']='search_exit'; if ($this->db->trans_status() === FALSE) { $this->db->trans_rollback(); $data['res']=0; $data['msg']='Error On updating Record'; return $data; } else { $this->db->trans_commit(); $data['res']=1; $data['msg']='Details updated Successfully'; return $data; } } /*Update function ends here*/ function get_employee_info_leave($employee_number) { $sql =("SELECT emp_non_full_name,trade_name,trade_id,nationality_name,emp_non_date_joining,emp_non_id,batch_code, emp_non_visa_type_id,emp_non_date_visa_issue,emp_non_date_visa_expiry,emp_non_visa_remind_before,emp_non_sponsor_id, CONCAT(`employee_non_main`.`emp_non_no_old`,',',GROUP_CONCAT(DISTINCT(`visa_processing`.`employee_no`) order by visa_processing_id)) AS emp_non_no,visa_processing.* FROM (`employee_non_main`) JOIN `master` ON `master_id`=`emp_non_id` JOIN `trade` ON `trade_id`=`emp_non_trade_id` JOIN `nationality` ON `nationality_id`=`emp_non_nationality_id` JOIN `batch` ON `id`=`batch_id` JOIN visa_processing ON `visa_processing`.`employee_id` = `employee_non_main`.`emp_non_id` where active = '1' and employee_non_main.emp_non_no = '$employee_number'"); $sql.=" GROUP BY emp_non_id"; $Q=$this->db->query($sql); $row=$Q->row(); return $row; } function checkemployeexit($employee_number) { $flag=1; $employee_id=$this->mastermodel->getSingleFieldValue('employee_non_main','emp_non_id','emp_non_no',$employee_number); $leaves=$this->mastermodel->get_data('leave',$employee_id,'employee_id'); foreach ($leaves as $leave) { if($this->mastermodel->number_rows('exit','leave_id',$leave['leave_id'],'exit_permit','Issued')!=0) { $flag=1; } else { $flag=0; return $flag; } } return $flag; // $sql .=" UNION (SELECT emp_non_id // FROM (`employee_non_main`) // where active = '1' and employee_non_main.emp_non_no = '$employee_number' and // emp_non_id not in (select `employee_id` from `leave`))"; // return $sql; // $Q=$this->db->query($sql); // $num=$Q->num_rows(); // return $num; } }