IMMREX7
<?php
namespace App\Http\Controllers\School;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use DB;
use Auth;
use Carbon\Carbon;
use PDF;
use Session;
class BusFeeReportController extends SchoolController {
public function todayReport(Request $request){
$today = Carbon::today()->format('Y-m-d');
$till = Carbon::today()->format('Y-m-d');
if ($request->has('fromDate') && $request->fromDate != null) {
$today = Carbon::createFromFormat('d-m-Y', $request->fromDate)->format('Y-m-d');;
}
if ($request->has('toDate') && $request->toDate != null) {
$till = Carbon::createFromFormat('d-m-Y', $request->toDate)->format('Y-m-d');
}
$classes = \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$feeHeaders = \App\BusFeehead::where('idSchool', '=', Auth::guard('school')->user()->idSchool)->where('idFinancialYear', '=', Session::get('idFinancialYear'))->groupBy('feeheadName')
->orderBy('toDate')->get()->pluck('feeheadName', 'idBusFeehead')->toArray();
if ($request->has('feeHeaders') && count($request->feeHeaders) > 0){
$lesser_transactionIds = DB::table('bus_lesser_transaction_details')->whereIn('bus_lesser_transaction_details.idBusFeehead', $request->feeHeaders)->get()->pluck('idBusLesserTransaction')->toArray();
$lesser_transactions = DB::table('bus_lesser_transaction')
->leftJoin('bus_excess_transaction', 'bus_lesser_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_lesser_transaction.created_by', '=', 'school_users.idSchoolUser')
->leftJoin('students', 'bus_lesser_transaction.idStudent', '=', 'students.idStudent')
->leftJoin('classes', 'students.idClass', '=', 'classes.idClass')
->leftJoin('banks', 'bus_lesser_transaction.idBank', '=', 'banks.idBank')
->leftJoin('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_lesser_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->whereIn('bus_lesser_transaction.idBusLesserTransaction', $lesser_transactionIds)
->select('school_users.name','ecNo','banks.bankName','bus_lesser_transaction.bankName as bName','bus_lesser_transaction.idBank','bus_lesser_transaction.idBusLesserTransaction', 'bus_lesser_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo','additionalAmount');
}
else
$lesser_transactions = DB::table('bus_lesser_transaction')
->leftJoin('bus_excess_transaction', 'bus_lesser_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_lesser_transaction.created_by', '=', 'school_users.idSchoolUser')
->leftJoin('students', 'bus_lesser_transaction.idStudent', '=', 'students.idStudent')
->leftJoin('classes', 'students.idClass', '=', 'classes.idClass')
->leftJoin('banks', 'bus_lesser_transaction.idBank', '=', 'banks.idBank')
->leftJoin('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_lesser_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->select('school_users.name','ecNo','banks.bankName','bus_lesser_transaction.bankName as bName','bus_lesser_transaction.idBank', 'bus_lesser_transaction.idBusLesserTransaction', 'bus_lesser_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo','additionalAmount');
if ($request->has('sections') && count($request->sections) > 0) {
$lesser_transactions = $lesser_transactions->whereIn('students.idSection', $request->sections);
}
if ($request->has('classes') && count($request->classes) > 0) {
$lesser_transactions = $lesser_transactions->whereIn('students.idClass', $request->classes);
}
if ($request->has('paymentMode')) {
if ($request->paymentMode != "All")
$lesser_transactions = $lesser_transactions->where('paymentMode', '=', $request->paymentMode);
}
if ($request->has('toDate') && $request->has('fromDate')){
$lesser_transactions = $lesser_transactions->whereDate('paymentDate','>=', $today)->whereDate('paymentDate','<=', $till);
}else $lesser_transactions = $lesser_transactions->whereDate('paymentDate', $today);
$lesser_transactions = $lesser_transactions->get();
if ($request->has('feeHeaders') && count($request->feeHeaders) > 0){
$transactionIds = DB::table('bus_transaction_details')->whereIn('bus_transaction_details.idBusFeehead', $request->feeHeaders)->get()->pluck('idBusTransaction')->toArray();
$transactions = DB::table('bus_transaction')
->leftJoin('bus_excess_transaction', 'bus_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_transaction.created_by', '=', 'school_users.idSchoolUser')
->leftJoin('students', 'bus_transaction.idStudent', '=', 'students.idStudent')
->leftJoin('classes', 'students.idClass', '=', 'classes.idClass')
->leftJoin('sections', 'students.idSection', '=', 'sections.idSection')
->leftJoin('banks', 'bus_transaction.idBank', '=', 'banks.idBank')
->where('bus_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->whereIn('bus_transaction.idBusTransaction', $transactionIds)
->select('school_users.name','ecNo','banks.bankName','bus_transaction.bankName as bName','bus_transaction.idBank', 'bus_transaction.idBusTransaction', 'bus_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo','additionalAmount');
}else
$transactions = DB::table('bus_transaction')
->leftJoin('bus_excess_transaction', 'bus_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_transaction.created_by', '=', 'school_users.idSchoolUser')
->leftJoin('students', 'bus_transaction.idStudent', '=', 'students.idStudent')
->leftJoin('classes', 'students.idClass', '=', 'classes.idClass')
->leftJoin('banks', 'bus_transaction.idBank', '=', 'banks.idBank')
->leftJoin('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->select('school_users.name','ecNo','banks.bankName','bus_transaction.bankName as bName','bus_transaction.idBank', 'bus_transaction.idBusTransaction', 'bus_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo','additionalAmount');
if ($request->has('sections') && count($request->sections) > 0) {
$transactions = $transactions->whereIn('students.idSection', $request->sections);
}
if ($request->has('classes') && count($request->classes) > 0) {
$transactions = $transactions->whereIn('students.idClass', $request->classes);
}
if ($request->has('paymentMode')) {
if ($request->paymentMode != "All")
$transactions = $transactions->where('paymentMode', '=', $request->paymentMode);
}
if ($request->has('toDate') && $request->has('fromDate')){
$transactions = $transactions->whereDate('paymentDate','>=', $today)->whereDate('paymentDate','<=', $till);
}else $transactions = $transactions->whereDate('paymentDate', $today);
$transactions = $transactions->get();
return view('schools.buses.combined_royal_paid', compact('classes', 'feeHeaders', 'lesser_transactions' ,'transactions'));
}
public function reversalReport(Request $request){
$today_date = Carbon::today()->format('Y-m-d');
if ($request->has('fromDate') && $request->fromDate != null) {
$from_date = Carbon::createFromFormat('d-m-Y', $request->fromDate)->format('Y-m-d');
}
if ($request->has('toDate') && $request->toDate != null) {
$to_date = Carbon::createFromFormat('d-m-Y', $request->toDate)->format('Y-m-d');
}
if ($request->has('feeHeaders') && count($request->feeHeaders) > 0) {
$transactionIds = DB::table('student_rollback_details_bus')->whereIn('student_rollback_details_bus.idBusFeehead', $request->feeHeaders)->whereNotNull('idBusTransaction')->get()->pluck('idBusTransaction')->toArray();
$lransactionIds = DB::table('student_rollback_details_bus')->whereIn('student_rollback_details_bus.idBusFeehead', $request->feeHeaders)->whereNotNull('idBusLesserTransaction')->get()->pluck('idBusLesserTransaction')->toArray();
if(count($request->feeHeaders) == 1){
$headerName = \App\BusFeehead::where('idBusFeehead',$request->feeHeaders[0])->first()->feeheadName;
}
$transactions = DB::table('student_rollback_transaction_bus')
->leftJoin('school_users', 'student_rollback_transaction_bus.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'student_rollback_transaction_bus.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('student_rollback_transaction_bus.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('student_rollback_transaction_bus.idFinancialYear', '=', Session::get('idFinancialYear'))
->whereIn('student_rollback_transaction_bus.idBusTransaction', $transactionIds)
->orWhereIn('student_rollback_transaction_bus.idBusLesserTransaction', $lransactionIds)
->select('school_users.name','ecNo','bankName','idBank', 'student_rollback_transaction_bus.idBusTransaction','student_rollback_transaction_bus.idBusLesserTransaction', 'student_rollback_transaction_bus.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'paymentDate', 'chequeNo');
} else {
$transactions = DB::table('student_rollback_transaction_bus')
->leftJoin('school_users', 'student_rollback_transaction_bus.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'student_rollback_transaction_bus.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('student_rollback_transaction_bus.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('student_rollback_transaction_bus.idFinancialYear', '=', Session::get('idFinancialYear'))
->select('school_users.name','ecNo','bankName','idBank', 'student_rollback_transaction_bus.idBusTransaction','student_rollback_transaction_bus.idBusLesserTransaction', 'student_rollback_transaction_bus.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'paymentDate', 'chequeNo');
}
if (($request->has('toDate') && $request->toDate != null) && ($request->has('fromDate') && $request->fromDate != null)) {
$transactions = $transactions->whereBetween('paymentDate', [$from_date, $to_date])->get();
} else if ($request->has('fromDate') && $request->fromDate != null) {
$transactions = $transactions->whereBetween('paymentDate', [$from_date, $today_date])->get();
} else if ($request->has('toDate') && $request->toDate != null) {
$transactions = $transactions->whereDate('paymentDate', '<=', $to_date)->get();
} else if ($request->has('sections') && count($request->sections) > 0) {
$transactions = $transactions->whereIn('students.idSection', $request->sections)->get();
} else if ($request->has('classes') && count($request->classes) > 0) {
$transactions = $transactions->whereIn('students.idClass', $request->classes)->get();
} else if ($request->has('paymentMode')) {
if ($request->paymentMode == "All")
$transactions = $transactions->get();
else
$transactions = $transactions->where('paymentMode', '=', $request->paymentMode)->get();
}else {
$transactions = $transactions->get();
}
$classes = \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$feeHeaders = \App\BusFeehead::where('idSchool', '=', Auth::guard('school')->user()->idSchool)->where('idFinancialYear', '=', Session::get('idFinancialYear'))->groupBy('feeheadName')
->get()->pluck('feeheadName', 'idBusFeehead')->toArray();
return view('schools.buses.fee_reversal', compact('classes', 'transactions', 'feeHeaders'));
}
public function paidFees(Request $request) {
$today_date = Carbon::today()->format('Y-m-d');
if ($request->has('fromDate') && $request->fromDate != null) {
$from_date = Carbon::createFromFormat('d-m-Y', $request->fromDate);
}
if ($request->has('toDate') && $request->toDate != null) {
$to_date = Carbon::createFromFormat('d-m-Y', $request->toDate);
}
$classes = \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$feeHeaders = \App\BusFeehead::where('idSchool', '=', Auth::guard('school')->user()->idSchool)->groupBy('feeheadName')
->orderBy('toDate')->get()->pluck('feeheadName', 'idBusFeehead')->toArray();
if ($request->has('feeHeaders') && count($request->feeHeaders) > 0) {
$transactionIds = DB::table('bus_student_transaction_details')->whereIn('bus_student_transaction_details.idBusFeehead', $request->feeHeaders)->get()->pluck('idBusTransaction')->toArray();
$transactions = DB::table('bus_transaction')
->leftJoin('bus_excess_transaction', 'bus_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'bus_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->whereIn('bus_transaction.idBusTransaction', $transactionIds)
->select('school_users.name','ecNo','additionalAmount', 'bus_transaction.idBusTransaction', 'bus_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo');
} else {
$transactions = DB::table('bus_transaction')
->leftJoin('bus_excess_transaction', 'bus_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'bus_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->select('school_users.name','ecNo','additionalAmount','bus_transaction.idBusTransaction', 'bus_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo');
}
if ($request->toDate != null && $request->fromDate != null) {
$transactions = $transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $to_date->format('Y-m-d')]);
} else if ($request->has('fromDate') && $request->fromDate != null) {
$transactions = $transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $today_date]);
} else if ($request->has('toDate') && $request->toDate != null) {
$transactions = $transactions->whereDate('paymentDate', '<=', $to_date);
}
if ($request->has('sections') && count($request->sections) > 0) {
$transactions = $transactions->whereIn('students.idSection', $request->sections);
} else if ($request->has('classes') && count($request->classes) > 0) {
$transactions = $transactions->whereIn('students.idClass', $request->classes);
}
if ($request->has('paymentMode')) {
if ($request->paymentMode == "All")
$transactions = $transactions->get();
else
$transactions = $transactions->where('paymentMode', '=', $request->paymentMode)->get();
}else {
$transactions = $transactions->get();
}
if(Auth::guard('school')->user()->idSchool == 25)
return view('schools.buses.fee_paid_royal', compact('feeHeaders', 'classes', 'transactions'));
else
return view('schools.buses.fee_paid', compact('feeHeaders', 'classes', 'transactions'));
}
public function lessPaidFees(Request $request) {
$today_date = Carbon::today()->format('Y-m-d');
if ($request->has('fromDate') && $request->fromDate != null) {
$from_date = Carbon::createFromFormat('d-m-Y', $request->fromDate);
}
if ($request->has('toDate') && $request->toDate != null) {
$to_date = Carbon::createFromFormat('d-m-Y', $request->toDate);
}
$classes = \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$feeHeaders = \App\BusFeehead::where('idSchool', '=', Auth::guard('school')->user()->idSchool)->groupBy('feeheadName')
->orderBy('toDate')->get()->pluck('feeheadName', 'idBusFeehead')->toArray();
if ($request->has('feeHeaders') && count($request->feeHeaders) > 0) {
$lesser_transactionIds = DB::table('bus_lesser_transaction_details')->whereIn('bus_lesser_transaction_details.idBusFeehead', $request->feeHeaders)->get()->pluck('idBusLesserTransaction')->toArray();
;
$lesser_transactions = DB::table('bus_lesser_transaction')
->leftJoin('bus_excess_transaction', 'bus_lesser_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_lesser_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'bus_lesser_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_lesser_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->whereIn('bus_lesser_transaction.idBusLesserTransaction', $lesser_transactionIds)
->select('school_users.name','ecNo','additionalAmount', 'bus_lesser_transaction.idBusLesserTransaction', 'bus_lesser_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo');
} else {
$lesser_transactions = DB::table('bus_lesser_transaction')
->leftJoin('bus_excess_transaction', 'bus_lesser_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->leftJoin('school_users', 'bus_lesser_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'bus_lesser_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_lesser_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'Success');
})
->select('school_users.name','ecNo','additionalAmount', 'bus_lesser_transaction.idBusLesserTransaction', 'bus_lesser_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate', 'chequeNo');
}
if ($request->toDate != null && $request->fromDate != null) {
$lesser_transactions = $lesser_transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $to_date->format('Y-m-d')])->get();
} else if ($request->has('fromDate') && $request->fromDate != null) {
$lesser_transactions = $lesser_transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $today_date])->get();
} else if ($request->has('toDate') && $request->toDate != null) {
$lesser_transactions = $lesser_transactions->whereDate('paymentDate', '<=', $to_date)->get();
} else if ($request->has('sections') && count($request->sections) > 0) {
$lesser_transactions = $lesser_transactions->whereIn('students.idSection', $request->sections)->get();
} else if ($request->has('classes') && count($request->classes) > 0) {
$lesser_transactions = $lesser_transactions->whereIn('students.idClass', $request->classes)->get();
} else if ($request->has('paymentMode')) {
if ($request->paymentMode = "All")
$lesser_transactions = $lesser_transactions->get();
else
$lesser_transactions = $lesser_transactions->where('paymentMode', '=', $request->paymentMode)->get();
}else {
$lesser_transactions = $lesser_transactions->get();
}
if(Auth::guard('school')->user()->idSchool == 25)
return view('schools.buses.less_fee_paid_royal', compact('classes', 'feeHeaders', 'lesser_transactions'));
else
return view('schools.buses.less_fee_paid', compact('classes', 'feeHeaders', 'lesser_transactions'));
}
public function pendingDues(Request $request) {
if(Auth::guard('school')->user()->idSchool == 25){
return $this->pendingDuesRoyal($request);
}
$today_date = Carbon::today()->format('Y-m-d');
if ($request->has('fromDate') && $request->fromDate != null) {
$from_date = Carbon::createFromFormat('d-m-Y', $request->fromDate);
}
if ($request->has('toDate') && $request->toDate != null) {
$to_date = Carbon::createFromFormat('d-m-Y', $request->toDate);
}
$classes = \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$students = \App\AdmEntry::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->orderBy('idStudent');
if ($request->has('sections') && count($request->sections) > 0) {
$students = $students->whereIn('students.idSection', $request->sections)->get();
} else if ($request->has('classes') && count($request->classes) > 0) {
$students = $students->whereIn('students.idClass', $request->classes)->get();
} else {
$students = $students->get();
}
if($students->idSchool = 140)
return view('schools.buses.pending_fee_mhws', compact('classes', 'students'));
else
return view('schools.buses.pending_fee', compact('classes', 'students'));
}
private function pendingDuesRoyal(Request $request){
$today_date = Carbon::today()->format('Y-m-d');
if ($request->has('fromDate') && $request->fromDate != null) {
$from_date = Carbon::createFromFormat('d-m-Y', $request->fromDate);
}
if ($request->has('toDate') && $request->toDate != null) {
$to_date = Carbon::createFromFormat('d-m-Y', $request->toDate);
}
$classes = \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$students = \App\StudentTransport::where('student_transport.idSchool', '=', Auth::guard('school')->user()->idSchool)
->join('students','student_transport.idStudent','=','students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('student_transport.idFinancialYear','=',Session::get('idFinancialYear'))
->orderBy('students.idStudent');
if ($request->has('sections') && count($request->sections) > 0) {
$students = $students->whereIn('students.idSection', $request->sections)->get();
} else if ($request->has('classes') && count($request->classes) > 0) {
$students = $students->whereIn('students.idClass', $request->classes)->get();
} else {
$students = $students->get();
}
return view('schools.buses.pending_fee_royal', compact('classes', 'students'));
}
public function cancelledReceipts(Request $request) {
$today_date = Carbon::today()->format('Y-m-d');
if ($request->has('fromDate') && $request->fromDate != null) {
$from_date = Carbon::createFromFormat('d-m-Y', $request->fromDate);
}
if ($request->has('toDate') && $request->toDate != null) {
$to_date = Carbon::createFromFormat('d-m-Y', $request->toDate);
}
$classes = \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$transactions = DB::table('bus_transaction')
->leftJoin('bus_excess_transaction', 'bus_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->join('students', 'bus_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where('status', '=', 'Cancelled')
->select('bus_transaction.remarks','additionalAmount', 'ecNo', 'bus_transaction.idBusTransaction', 'bus_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate');
$lesser_transactions = DB::table('bus_lesser_transaction')
->leftJoin('bus_excess_transaction', 'bus_lesser_transaction.idBusExcessTransaction', '=', 'bus_excess_transaction.idBusExcessTransaction')
->join('students', 'bus_lesser_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->where('bus_lesser_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('bus_lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where('status', '=', 'Cancelled')
->select('bus_lesser_transaction.remarks','additionalAmount', 'ecNo', 'bus_lesser_transaction.idBusLesserTransaction', 'bus_lesser_transaction.idFinancialYear', 'students.idClass', 'students.idStudent', 'students.idSection', 'firstName', 'middleName', 'contactPersonMobile', 'lastName', 'className', 'sectionName', 'father_fname', 'father_mobile', 'father_lname', 'receiptNo', 'paymentMode', 'totalPaid', 'penaltyAmount', 'discount', 'fine', 'penaltyRemarks', 'excessAmount', 'paymentDate');
if ($request->toDate != null && $request->fromDate != null) {
$transactions = $transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $to_date->format('Y-m-d')])->get();
$lesser_transactions = $lesser_transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $to_date->format('Y-m-d')])->get();
} else if ($request->has('fromDate') && $request->fromDate != null) {
$transactions = $transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $today_date])->get();
$lesser_transactions = $lesser_transactions->whereBetween('paymentDate', [$from_date->format('Y-m-d'), $today_date])->get();
} else if ($request->has('toDate') && $request->toDate != null) {
$transactions = $transactions->whereDate('paymentDate', '<=', $to_date)->get();
$lesser_transactions = $lesser_transactions->whereDate('paymentDate', '<=', $to_date)->get();
} else if ($request->has('sections') && count($request->sections) > 0) {
$transactions = $transactions->whereIn('students.idSection', $request->sections)->get();
$lesser_transactions = $lesser_transactions->whereIn('students.idSection', $request->sections)->get();
} else if ($request->has('classes') && count($request->classes) > 0) {
$transactions = $transactions->whereIn('students.idClass', $request->classes)->get();
$lesser_transactions = $lesser_transactions->whereIn('students.idClass', $request->classes)->get();
} else if ($request->has('paymentMode')) {
$transactions = $transactions->where('paymentMode', '=', $request->paymentMode)->get();
$lesser_transactions = $lesser_transactions->where('paymentMode', '=', $request->paymentMode)->get();
} else {
$transactions = $transactions->get();
$lesser_transactions = $lesser_transactions->get();
}
if(Auth::guard('school')->user()->idSchool == 25)
return view('schools.buses.cancelled-receipts-royal', compact('classes', 'transactions','lesser_transactions'));
else
return view('schools.buses.cancelled-receipts', compact('classes', 'transactions','lesser_transactions'));
}
public function livePreview() {
$school = \App\School::where('idSchool', '=', Auth::guard('school')->user()->idSchool)->first();
return view('schools.buses.live_preview', compact('school'));
}
public function daywiseBusFeeCollection(Request $request) {
if ($request->has('date') && $request->date != null) {
$todaydate = \Carbon\Carbon::parse($request->date)->format('Y-m-d');
$school = \App\School::where('idSchool', '=', Auth::guard('school')->user()->idSchool)->first();
$feeheads = DB::table('dailytransaction')
->join('dailytransaction_details', 'dailytransaction.idDailyTransaction', '=', 'dailytransaction_details.idDailyTransaction')
->where('idSchool', '=', $school->idSchool)
->where('transactionType','=','Bus')
->whereDate('dailytransaction.paymentDate', '=', $todaydate)
->groupBy('headerName')
->select('headerName', DB::raw('SUM(dailytransaction_details.amountPaid) AS feeheadPaidTotal'), DB::raw('SUM(dailytransaction_details.discountFeehead) AS discountTotalFeehead'))
->get();
$transactions = DB::table('dailytransaction')
->whereDate('dailytransaction.paymentDate', '=', $todaydate)
->where('idSchool', '=', $school->idSchool)
->where('transactionType','=','Bus')
->get();
$pdf = PDF::loadView('schools.north.transaction.daycollpdf', ['margin_top' => 20], compact('transactions', 'feeheads', 'school', 'todaydate'));
return $pdf->stream($todaydate . 'transport_collection.pdf');
} else {
return view('schools.north.transaction.daywise_busfeecollection', compact('transactions', 'school', 'feeheads'));
}
// return view('schools.north.transaction.daywise_busfeecollection', compact('fulltransaction'));
}
}
Copyright © 2021 -