HEX
Server: Apache/2.4.41 (Amazon) OpenSSL/1.0.2k-fips PHP/5.6.40
System: Linux ip-172-31-40-18 4.14.146-93.123.amzn1.x86_64 #1 SMP Tue Sep 24 00:45:23 UTC 2019 x86_64
User: apache (48)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: //var/www/html/taxicamera/pmw_live_testing/old/application/controllers/admin/DocketReport.php
<?php
defined('BASEPATH') or exit('No direct script access allowed');

class DocketReport extends MY_Controller
{
    public function __construct()
    {
        parent::__construct();
        //$this->redirect_guest();
        $this->admin = $this->session->userdata('admin');
        $this->load->model('admin/mreport');
        $this->load->model('admin/mdriver');
        if ($this->session->userdata('admin') != 1) {
            redirect('admin');
        }
    }
    public function GetDocketsList(){
        $return_new_array   = array();  
        $docket_list        = array();  
        $docket_data        = array();
        $company_id         = $this->input->post('company_id');
        
        $dockets_datas      = $this->mdriver->get_docket_list_bu_companyID($company_id);
       //pr($dockets_datas);
        if (!empty($dockets_datas)) {
            foreach($dockets_datas as $val){
                
                $docket_data['docket_name'] = $val['docket_name'];
                $docket_data['docket_id']   = $val['docket_id'];
                $docket_list[]              = $docket_data;
            }

            $return_new_array               = $docket_list;
            //pr($return_new_array);
        } else {
            $return_new_array               = 'Blank';
        }
        //pr($return_new_array);
        echo json_encode($return_new_array);
    }
    public function GetDriverList()
    {
        $return_new_array   = array();  
        $driver_list   		= array();     
        $company_id         = $this->input->post('company_id');
        
        $driver_datas    	= $this->mdriver->get_driver_list_bu_companyID($company_id);
        //pr($car_list);
        if (!empty($driver_datas)) {
        	foreach($driver_datas as $val){
        		if($val['middle_name']!=''){
                  $middle_name  = $val['middle_name'].' ';
                }
                else{
                  $middle_name  ='';
                }
        		$driver_data['driver_name'] = $val['first_name'].' '.$middle_name.$val['last_name'];
        		$driver_data['dc'] 			= $val['dc_no'];
        		$driver_data['driver_id'] 	= $val['user_id'];
        		$driver_list[]				= $driver_data;
        	}

            $return_new_array				= $driver_list;
            //pr($return_new_array);
        } else {
            $return_new_array 				= 'Blank';
        }
        //pr($return_new_array);
        echo json_encode($return_new_array);
    }
    public function   index() { 
        //$this->session->unset_userdata('driver_settlement');
        //echo $this->session->userdata('email');die;
        $this->_load_docket_report_list();        
    }   
    private function _load_docket_report_list() {
        $data                       = array();
        $company_list				= $this->mcommon->getFullDetails('master_company');
        if(!empty($company_list)){
        	$data['company_list']	= $company_list;
        }
        else{
        	$data['company_list']	= '';	
        }
        $order      = '';
        $order_type = '';
        $joindata   = array('select'        =>'DSD.*,master_docket.docket_name,master_car.registration_no,driver_settlement.created_on,master_user.dc_no,user_profile.first_name,user_profile.middle_name,user_profile.last_name',
                            'first_table'   =>'dr_settlement_docket DSD',
                            'second_table'  =>'payin_dockets',
                            'dependency1'   =>'DSD.payin_docket_id =  payin_dockets.payin_dockets_id',
                            'join_type1'    =>'left',                  
                        /********************************/ 
                            'third_table'   =>'master_docket',
                            'dependency2'   =>'payin_dockets.docket_id = master_docket.docket_id',
                            'join_type2'    =>'left',
                        /********************************/ 
                            'forth_table'   =>'driver_settlement',
                            'dependency3'   =>'driver_settlement.dr_settlement_id = DSD.dr_settlement_id',
                            'join_type3'    =>'left',
                        /********************************/ 
                        	'fifth_table'  	=>'master_user',
                            'dependency4'   =>'driver_settlement.driver_id = master_user.user_id',
                            'join_type4'    =>'left',                  
                        /********************************/ 
                            'sixth_table'   =>'user_profile',
                            'dependency5'   =>'user_profile.user_id = master_user.user_id',
                            'join_type5'    =>'left',
                        /********************************/
                            'seventh_table' =>'roster_driver_maping RDM',
                            'dependency6'   =>'RDM.roster_shift_id = driver_settlement.shift_id',
                            'join_type6'    =>'left',
                        /*********************************/ 
                            'eighth_table'  =>'roster',
                            'dependency7'   =>'RDM.roster_id = roster.roster_id',
                            'join_type7'    =>'leftleft',

                        /*********************************/   
                            'ninth_table'   =>'master_car',
                            'dependency8'   =>'master_car.car_id = roster.car_id',
                            'join_type8'    =>'left'    
                        );
        
        $cond 		= "driver_settlement.created_on between '".date('Y-m-d',strtotime('-2 week'))."' and '".date('Y-m-d')."'";
        $docket_report_data     = $this->mcommon->joinQuery($joindata,$cond,'result',$order,$order_type);
        //pr($docket_report_data);
        if($docket_report_data){
        	$data['docket_report_data'] = $docket_report_data;
        }
        else{
        	$data['docket_report_data'] = '';
        }

        $driver_list        = $this->mdriver->get_driver_list(1,1);
        if(!empty($driver_list)){
            $data['driver_list'] = $driver_list;
        }
        else{
            $data['driver_list'] = '';
        }
        //pr($driver_list);
        $data['content']    = 'admin/report/docket/docket_report_list';
        $this->load->view('admin/layouts/index', $data);
    }
    public function DocketReportGenerate() {
        $data         = array();
        $responce_arr = array();
        $company_id   = $this->input->post("company_id");
        $driver_id    = $this->input->post("driver_id");        
        

        //echo $from_date  = date('Y-m-d',strtotime($this->input->post("from_date")))."<br>";
        //echo $driver_id."<br>".$company_id."<br>".$from_date."<br>".$to_date;exit;
        $data                   = array();
        $order                  = '';
        $order_type             = '';
        $joindata   = array('select'        =>'DSD.*,master_docket.docket_name,driver_settlement.shift_id,driver_settlement.created_on,master_user.dc_no,user_profile.first_name,user_profile.middle_name,user_profile.last_name',
                            'first_table'   =>'dr_settlement_docket DSD',
                            'second_table'  =>'payin_dockets',
                            'dependency1'   =>'DSD.payin_docket_id =  payin_dockets.payin_dockets_id',
                            'join_type1'    =>'left',                  
                        /********************************/ 
                            'third_table'   =>'master_docket',
                            'dependency2'   =>'payin_dockets.docket_id = master_docket.docket_id',
                            'join_type2'    =>'left',
                        /********************************/ 
                            'forth_table'   =>'driver_settlement',
                            'dependency3'   =>'driver_settlement.dr_settlement_id = DSD.dr_settlement_id',
                            'join_type3'    =>'left',
                        /********************************/ 
                        	'fifth_table'  	=>'master_user',
                            'dependency4'   =>'driver_settlement.driver_id = master_user.user_id',
                            'join_type4'    =>'left',                  
                        /********************************/ 
                            'sixth_table'   =>'user_profile',
                            'dependency5'   =>'user_profile.user_id = master_user.user_id',
                            'join_type5'    =>'left',  
                            
                            'seventh_table'   =>'dr_company_agreement_mapping',
                            'dependency6'   =>'dr_company_agreement_mapping.driver_id = master_user.user_id',
                            'join_type6'    =>'left',  
                        );

        $cond = '1=1';                
        if(!empty($company_id)){
            $cond.=" AND dr_company_agreement_mapping.company_id='".$company_id."'";
        }
        if(!empty($driver_id)){
            $cond.=" AND driver_settlement.driver_id ='".$driver_id."'";
        }
        if(!empty($this->input->post("from_date")) && !empty($this->input->post("to_date"))){
            $from_date    = date('Y-m-d',strtotime(str_replace('/','-',$this->input->post("from_date"))));
            $to_date      = date('Y-m-d',strtotime(str_replace('/','-',$this->input->post("to_date"))));
            $cond.=" AND driver_settlement.created_on between '".$from_date."' and '".$to_date."' ";
        }
        
        // $cond                 = "driver_settlement.driver_id ='".$driver_id."' and driver_settlement.created_on between '".$from_date."' and '".$to_date."'";
        
        $docket_report_data     = $this->mcommon->joinQuery($joindata,$cond,'result',$order,$order_type);
        //pr($accd_report_data);
        if(!empty($docket_report_data)){            
            
            $data['docket_report_data']     = $docket_report_data;
        }
        else{
            $data['docket_report_data']     = '';
        }
        $responce_arr['html'] = $this->load->view('admin/report/docket/ajax_docket_report',$data,true);
        echo json_encode($responce_arr);exit;
    }
    
}