ÿØÿà JFIF ÿá Exif MM * ÿÛ C
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 : |
<?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!'); } }