IMMREX7
<?php
namespace App\Http\Controllers\School;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Auth;
use DB;
use Carbon\Carbon;
use Session;
class ChequeBounceController extends SchoolController {
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index() {
//
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create() {
//
}
public function storeOnlineRecon(Request $request){
if ($request->has('idTransaction')) {
$stdcheque = \App\StudentTransaction::where('idTransaction', '=', $request->idTransaction)->where('idSchool', '=', Auth::guard('school')->user()->idSchool)->first();
$stdcheque->status = $request->status;
$stdcheque->update();
//fill the details into rollback
\App\RollbackTransaction::insert($stdcheque->toArray());
$stdtransaction_dets = \App\StudentTransactionDetail::where('idTransaction', '=', $request->idTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\StudentTransactionDetail::where('idTransactionDetail', '=', $var->idTransactionDetail)->first();
$det->status = $request->status;
$det->update();
//fill details in rollback details
unset($det->idTransactionDetail);
\App\RollbackTransactionDetails::insert($det->toArray());
}
}else if($request->has('idLesserTransaction')){
$stdcheque = \App\LesserTransaction::where('idLesserTransaction', '=', $request->idLesserTransaction)->where('idSchool', '=', Auth::guard('school')->user()->idSchool)->first();
$stdcheque->status = $request->status;
$stdcheque->update();
\App\RollbackTransaction::insert($stdcheque->toArray());
$stdtransaction_dets = \App\LesserTransactionDetail::where('idLesserTransaction', '=', $request->idLesserTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\LesserTransactionDetail::where('idLessTransactionDet', '=', $var->idLessTransactionDet)->first();
$det->status = $request->status;
$det->update();
//fill details in rollback details
unset($det->idLessTransactionDet);
\App\RollbackTransactionDetails::insert($det->toArray());
}
}
flash('Status has been updated Successfully !!');
return redirect()->back();
}
public function onlineRecon(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');
}
$classes = ['' => '--Select Class--'] + \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$chequelist = DB::table('student_transaction')
// ->join('banks', 'student_transaction.idBank', '=', 'banks.idBank')
->leftJoin('school_users', 'student_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'student_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->select('student_transaction.*','school_users.name','students.*','classes.*','sections.*')
// ->where('student_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where('student_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('student_transaction.paymentMode', '=', "Online");
$lesserchequelist = DB::table('lesser_transaction')
//->join('banks', 'lesser_transaction.idBank', '=', 'banks.idBank')
->leftJoin('school_users', 'lesser_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'lesser_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
// ->where('lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->select('lesser_transaction.*','school_users.name','students.*','classes.*','sections.*')
->where('lesser_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool)
->where('lesser_transaction.paymentMode', '=', "Online");
if ($request->idClass != null && $request->idSection != null && $request->idFinancialYear != null) {
$chequelist = $chequelist->where('student_transaction.idFinancialYear', '=', $request->idFinancialYear)
->where('students.idClass', '=', $request->idClass)
->where('students.idSection', '=', $request->idSection)
->where(function($query) {
$query->whereNull('student_transaction.status');
$query->orWhere('student_transaction.status', '=', 'Cleared');
$query->orWhere('student_transaction.status', '=', 'In-Process');
$query->orWhere('student_transaction.status', '=', 'Success');
$query->orWhere('student_transaction.status', '=', 'Bounced');
});
$lesserchequelist = $lesserchequelist->where('lesser_transaction.idFinancialYear', '=', $request->idFinancialYear)
->where('students.idClass', '=', $request->idClass)
->where('students.idSection', '=', $request->idSection);
} else if($request->idFinancialYear != null){
$chequelist = $chequelist->where('student_transaction.idFinancialYear', '=', $request->idFinancialYear);
$lesserchequelist = $lesserchequelist->where('lesser_transaction.idFinancialYear', '=', $request->idFinancialYear);
}else if($request->ecNo != null) {
$chequelist = $chequelist->where('students.ecNo', '=', $request->ecNo);
$lesserchequelist = $lesserchequelist->where('students.ecNo', '=', $request->ecNo);
} else {
$lesserchequelist = $lesserchequelist->where('lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'));
$chequelist = $chequelist->where('student_transaction.idFinancialYear', '=', Session::get('idFinancialYear'));
}
if($request->has('cheque-status')){
$status = $request->get('cheque-status');
$chequelist = $chequelist->where(function($query) use ($status){
$query->where('student_transaction.status', '=', $status);
});
$lesserchequelist = $lesserchequelist->where(function($query) use ($status){
$query->where('lesser_transaction.status', '=', $status);
});
}else{
$chequelist = $chequelist->where(function($query) {
$query->whereNull('student_transaction.status');
$query->orWhere('student_transaction.status', '=', 'Cleared');
$query->orWhere('student_transaction.status', '=', 'In-Process');
$query->orWhere('student_transaction.status', '=', 'Success');
$query->orWhere('student_transaction.status', '=', 'Bounced');
});
$lesserchequelist = $lesserchequelist->where(function($query) {
$query->whereNull('lesser_transaction.status');
$query->orWhere('lesser_transaction.status', '=', 'Cleared');
$query->orWhere('lesser_transaction.status', '=', 'In-Process');
$query->orWhere('lesser_transaction.status', '=', 'Success');
$query->orWhere('lesser_transaction.status', '=', 'Bounced');
});
}
if (($request->has('toDate') && $request->toDate != null) && ($request->has('fromDate') && $request->fromDate != null)) {
$chequelist = $chequelist->whereBetween('paymentDate', [$from_date, $to_date]);
$lesserchequelist = $lesserchequelist->whereBetween('paymentDate', [$from_date, $to_date]);
} else if ($request->has('fromDate') && $request->fromDate != null) {
$chequelist = $chequelist->whereDate('paymentDate', '>=', $to_date);
$lesserchequelist = $lesserchequelist->whereDate('paymentDate', '>=', $to_date);
} else if ($request->has('toDate') && $request->toDate != null) {
$chequelist = $chequelist->whereDate('paymentDate', '<=', $to_date);
$lesserchequelist = $lesserchequelist->whereDate('paymentDate', '<=', $to_date);
}
$chequelist = $chequelist->get();
$lesserchequelist = $lesserchequelist->get();
return view('schools.transaction.onlinelist', compact('lesserchequelist', 'chequelist', 'classes'));
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request) {
$acessAmount = 0;
if ($request->has('idTransaction')) {
if($request->has('feetype')){
if ($request->status == 'Bounced') {
$stdcheque = \App\StudentExtraTransaction::where('idTransaction', '=', $request->idTransaction)->where('idSchool', '=', Auth::guard('school')->user()->idSchool)->first();
$stdcheque->status = 'Bounced';
$acessAmount = $stdcheque->excessAmountUsed;
$stdcheque->chequeBounceCharge = $request->chequeBounceCharge;
DB::beginTransaction();
$stdcheque->update();
//fill the details into rollback
\App\RollbackTransaction::insert($stdcheque->toArray());
$stdtransaction_dets = \App\StudentExtraTransactionDetail::where('idTransaction', '=', $request->idTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\StudentExtraTransactionDetail::where('idTransactionDetail', '=', $var->idTransactionDetail)->first();
$det->status = 'Bounced';
$det->update();
//fill details in rollback details
unset($det->idTransactionDetail);
\App\RollbackTransactionDetails::insert($det->toArray());
}
DB::commit();
if ($acessAmount > 0) {
$excess_transaction = DB::table('excess_transaction_extra')
->join('student_transaction_extra', 'excess_transaction_extra.idTransaction', '=', 'student_transaction_extra.idTransaction')
->where('idStudent', '=', $request->idStudent)
->where('idFinancialYear', '=', $request->idFinancialYear)
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Success');
})
->where('excess_transaction_extra.isActive', '=', 'Y')
->orderBy('excess_transaction_extra.idTransaction', 'desc')->first();
if (isset($excess_transaction))
$acessAmount = $acessAmount + $excess_transaction->excessAmount;
$excess = new \App\ExcessTransaction();
$excess->idTransaction = $request->idTransaction;
$excess->excessAmount = $acessAmount;
$excess->remarks = "Access amount has been reverted to this transaction and previous access amount has been added";
$excess->save();
}
} else if ($request->status == 'Cleared') {
$stdcheque = \App\StudentExtraTransaction::where('idTransaction', '=', $request->idTransaction)->where('idSchool', '=', Auth::guard('school')->user()->idSchool)->first();
$stdcheque->status = 'Cleared';
DB::beginTransaction();
$stdcheque->update();
$stdtransaction_dets = \App\StudentExtraTransactionDetail::where('idTransaction', '=', $request->idTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\StudentExtraTransactionDetail::where('idTransactionDetail', '=', $var->idTransactionDetail)->first();
$det->status = 'Cleared';
$det->update();
}
DB::commit();
$excess_transaction = DB::table('excess_transaction_extra')
->join('student_transaction_extra', 'excess_transaction_extra.idTransaction', '=', 'student_transaction_extra.idTransaction')
->where('idStudent', '=', $request->idStudent)
->where('idFinancialYear', '=', $request->idFinancialYear)
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Success');
})
->where('excess_transaction_extra.isActive', '=', 'Y')
->orderBy('excess_transaction_extra.idTransaction', 'desc')->first();
if (isset($excess_transaction)) {
$acessAmount = $acessAmount + $excess_transaction->excessAmount;
$excess_pending_transaction = DB::table('excess_transaction_extra')
->where('idTransaction', $request->idTransaction)
->where('isActive', 'P')
->first();
if ($excess_pending_transaction) {
$acessAmount = $acessAmount + $excess_pending_transaction->excessAmount;
DB::table('excess_transaction_extra')
->where('idTransaction', $request->idTransaction)
->update(['isActive' => 'N']);
}
$excess = new \App\ExcessTransaction();
$excess->idTransaction = $request->idTransaction;
$excess->excessAmount = $acessAmount;
$excess->remarks = "Access amount has been adjusted to this transaction";
$excess->save();
} else {
DB::table('excess_transaction_extra')
->where('idTransaction', $request->idTransaction)
->update(['isActive' => 'Y', 'remarks' => 'Access amount active on cheque clearance']);
}
} else {
$stdcheque = \App\StudentExtraTransaction::where('idTransaction', '=', $request->idTransaction)->where('idSchool', '=', Auth::guard('school')->user()->idSchool)->first();
$stdcheque->status = 'In-Process';
DB::beginTransaction();
$stdcheque->update();
$stdtransaction_dets = \App\StudentExtraTransactionDetail::where('idTransaction', '=', $request->idTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\StudentExtraTransactionDetail::where('idTransactionDetail', '=', $var->idTransactionDetail)->first();
$det->status = 'In-Process';
$det->update();
}
DB::commit();
}
}else{
if ($request->status == 'Bounced') {
$acessAmount = 0;
$stdcheque = \App\StudentTransaction::where('idTransaction', '=', $request->idTransaction)->first();
$stdcheque->status = 'Bounced';
$acessAmount = $stdcheque->excessAmountUsed;
$stdcheque->chequeBounceCharge = $request->chequeBounceCharge;
DB::beginTransaction();
$stdcheque->update();
\App\RollbackTransaction::insert($stdcheque->toArray());
$stdtransaction_dets = \App\StudentTransactionDetail::where('idTransaction', '=', $request->idTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\StudentTransactionDetail::where('idTransactionDetail', '=', $var->idTransactionDetail)->first();
$det->status = 'Bounced';
$det->update();
//fill details in rollback details
unset($det->idTransactionDetail);
\App\RollbackTransactionDetails::insert($det->toArray());
}
DB::commit();
if ($acessAmount > 0) {
$excess_transaction = DB::table('excess_transaction')
->join('student_transaction', 'excess_transaction.idTransaction', '=', 'student_transaction.idTransaction')
->where('idStudent', '=', $request->idStudent)
->where('idFinancialYear', '=', $request->idFinancialYear)
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Success');
})
->where('excess_transaction.isActive', '=', 'Y')
->orderBy('excess_transaction.idTransaction', 'desc')->first();
if (isset($excess_transaction))
$acessAmount = $acessAmount + $excess_transaction->excessAmount;
$excess = new \App\ExcessTransaction();
$excess->idTransaction = $request->idTransaction;
$excess->excessAmount = $acessAmount;
$excess->remarks = "Access amount has been reverted to this transaction and previous access amount has been added";
$excess->save();
}
} else if ($request->status == 'Cleared') {
$stdcheque = \App\StudentTransaction::where('idTransaction', '=', $request->idTransaction)->first();
$stdcheque->status = 'Cleared';
DB::beginTransaction();
$stdcheque->update();
$stdtransaction_dets = \App\StudentTransactionDetail::where('idTransaction', '=', $request->idTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\StudentTransactionDetail::where('idTransactionDetail', '=', $var->idTransactionDetail)->first();
$det->status = 'Cleared';
$det->update();
}
DB::commit();
$excess_transaction = DB::table('excess_transaction')
->join('student_transaction', 'excess_transaction.idTransaction', '=', 'student_transaction.idTransaction')
->where('idStudent', '=', $request->idStudent)
->where('idFinancialYear', '=', $request->idFinancialYear)
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Success');
})
->where('excess_transaction.isActive', '=', 'Y')
->orderBy('excess_transaction.idTransaction', 'desc')->first();
if (isset($excess_transaction)) {
$acessAmount = $acessAmount + $excess_transaction->excessAmount;
$excess_pending_transaction = DB::table('excess_transaction')
->where('idTransaction', $request->idTransaction)
->where('isActive', 'P')
->first();
if ($excess_pending_transaction) {
$acessAmount = $acessAmount + $excess_pending_transaction->excessAmount;
DB::table('excess_transaction')
->where('idTransaction', $request->idTransaction)
->update(['isActive' => 'N']);
}
$excess = new \App\ExcessTransaction();
$excess->idTransaction = $request->idTransaction;
$excess->excessAmount = $acessAmount;
$excess->remarks = "Access amount has been adjusted to this transaction";
$excess->save();
} else {
DB::table('excess_transaction')
->where('idTransaction', $request->idTransaction)
->update(['isActive' => 'Y', 'remarks' => 'Access amount active on cheque clearance']);
}
} else {
$stdcheque = \App\StudentTransaction::where('idTransaction', '=', $request->idTransaction)->first();
$stdcheque->status = 'In-Process';
DB::beginTransaction();
$stdcheque->update();
$stdtransaction_dets = \App\StudentTransactionDetail::where('idTransaction', '=', $request->idTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\StudentTransactionDetail::where('idTransactionDetail', '=', $var->idTransactionDetail)->first();
$det->status = 'In-Process';
$det->update();
}
DB::commit();
}
}
} else {
if ($request->status == 'Bounced') {
$acessAmount = 0;
$stdcheque = \App\LesserTransaction::where('idLesserTransaction', '=', $request->idLesserTransaction)->first();
$stdcheque->status = 'Bounced';
$acessAmount = $stdcheque->excessAmountUsed;
$stdcheque->chequeBounceCharge = $request->chequeBounceCharge;
DB::beginTransaction();
$stdcheque->update();
\App\RollbackTransaction::insert($stdcheque->toArray());
$stdtransaction_dets = \App\LesserTransactionDetail::where('idLesserTransaction', '=', $request->idLesserTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\LesserTransactionDetail::where('idLessTransactionDet', '=', $var->idLessTransactionDet)->first();
$det->status = 'Bounced';
$det->update();
//fill details in rollback details
unset($det->idLessTransactionDet);
\App\RollbackTransactionDetails::insert($det->toArray());
}
DB::commit();
if ($acessAmount > 0) {
$excess_transaction = DB::table('excess_transaction')
->join('lesser_transaction', 'excess_transaction.idTransaction', '=', 'student_transaction.idTransaction')
->where('idStudent', '=', $request->idStudent)
->where('idFinancialYear', '=', $request->idFinancialYear)
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Success');
})
->where('excess_transaction.isActive', '=', 'Y')
->orderBy('excess_transaction.idTransaction', 'desc')->first();
if (isset($excess_transaction))
$acessAmount = $acessAmount + $excess_transaction->excessAmount;
$excess = new \App\ExcessTransaction();
$excess->idTransaction = $request->idTransaction;
$excess->excessAmount = $acessAmount;
$excess->remarks = "Access amount has been reverted to this transaction and previous access amount has been added";
$excess->save();
}
} else if ($request->status == 'Cleared') {
$stdcheque = \App\LesserTransaction::where('idLesserTransaction', '=', $request->idLesserTransaction)->first();
$stdcheque->status = 'Cleared';
DB::beginTransaction();
$stdcheque->update();
$stdtransaction_dets = \App\LesserTransactionDetail::where('idLesserTransaction', '=', $request->idLesserTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\LesserTransactionDetail::where('idLessTransactionDet', '=', $var->idLessTransactionDet)->first();
$det->status = 'Cleared';
$det->update();
}
DB::commit();
$excess_transaction = DB::table('excess_transaction')
->join('student_transaction', 'excess_transaction.idTransaction', '=', 'student_transaction.idTransaction')
->where('idStudent', '=', $request->idStudent)
->where('idFinancialYear', '=', $request->idFinancialYear)
->where(function($query) {
$query->whereNull('status');
$query->orWhere('status', '=', 'Cleared');
$query->orWhere('status', '=', 'In-Process');
$query->orWhere('status', '=', 'Success');
})
->where('excess_transaction.isActive', '=', 'Y')
->orderBy('excess_transaction.idTransaction', 'desc')->first();
if (isset($excess_transaction)) {
$acessAmount = $acessAmount + $excess_transaction->excessAmount;
$excess_pending_transaction = DB::table('excess_transaction')
->where('idTransaction', $request->idTransaction)
->where('isActive', 'P')
->first();
if ($excess_pending_transaction) {
$acessAmount = $acessAmount + $excess_pending_transaction->excessAmount;
DB::table('excess_transaction')
->where('idTransaction', $request->idTransaction)
->update(['isActive' => 'N']);
}
$excess = new \App\ExcessTransaction();
$excess->idTransaction = $request->idTransaction;
$excess->excessAmount = $acessAmount;
$excess->remarks = "Access amount has been adjusted to this transaction";
$excess->save();
} else {
DB::table('excess_transaction')
->where('idTransaction', $request->idTransaction)
->update(['isActive' => 'Y', 'remarks' => 'Access amount active on cheque clearance']);
}
} else {
$stdcheque = \App\LesserTransaction::where('idLesserTransaction', '=', $request->idLesserTransaction)->first();
$stdcheque->status = 'In-Process';
DB::beginTransaction();
$stdcheque->update();
$stdtransaction_dets = \App\LesserTransactionDetail::where('idLesserTransaction', '=', $request->idLesserTransaction)->get();
foreach ($stdtransaction_dets as $var) {
$det = \App\LesserTransactionDetail::where('idLessTransactionDet', '=', $var->idLessTransactionDet)->first();
$det->status = 'In-Process';
$det->update();
}
DB::commit();
}
}
flash('Status has been updated Successfully !!');
if($request->has('feetype'))
return redirect('school/chequelist-extra');
else
return redirect('school/chequelist');
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id) {
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id) {
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id) {
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id) {
//
}
public function getChequeList(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');
}
$classes = ['' => '--Select Class--'] + \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$chequelist = DB::table('student_transaction')
->join('banks', 'student_transaction.idBank', '=', 'banks.idBank')
->leftJoin('school_users', 'student_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'student_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->select('student_transaction.*','banks.*','school_users.name','students.*','classes.*','sections.*')
// ->where('student_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where('student_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool);
$lesserchequelist = DB::table('lesser_transaction')
->join('banks', 'lesser_transaction.idBank', '=', 'banks.idBank')
->leftJoin('school_users', 'lesser_transaction.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'lesser_transaction.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
// ->where('lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->select('lesser_transaction.*','banks.*','school_users.name','students.*','classes.*','sections.*')
->where('lesser_transaction.idSchool', '=', Auth::guard('school')->user()->idSchool);
if ($request->idClass != null && $request->idSection != null && $request->idFinancialYear != null) {
$chequelist = $chequelist->where('student_transaction.idFinancialYear', '=', $request->idFinancialYear)
->where('students.idClass', '=', $request->idClass)
->where('students.idSection', '=', $request->idSection)
->where(function($query) {
$query->whereNull('student_transaction.status');
$query->orWhere('student_transaction.status', '=', 'Cleared');
$query->orWhere('student_transaction.status', '=', 'In-Process');
$query->orWhere('student_transaction.status', '=', 'Success');
$query->orWhere('student_transaction.status', '=', 'Bounced');
});
$lesserchequelist = $lesserchequelist->where('lesser_transaction.idFinancialYear', '=', $request->idFinancialYear)
->where('students.idClass', '=', $request->idClass)
->where('students.idSection', '=', $request->idSection);
} else if($request->idFinancialYear != null){
$chequelist = $chequelist->where('student_transaction.idFinancialYear', '=', $request->idFinancialYear);
$lesserchequelist = $lesserchequelist->where('lesser_transaction.idFinancialYear', '=', $request->idFinancialYear);
}else if($request->ecNo != null) {
$chequelist = $chequelist->where('students.ecNo', '=', $request->ecNo);
$lesserchequelist = $lesserchequelist->where('students.ecNo', '=', $request->ecNo);
} else {
$lesserchequelist = $lesserchequelist->where('lesser_transaction.idFinancialYear', '=', Session::get('idFinancialYear'));
$chequelist = $chequelist->where('student_transaction.idFinancialYear', '=', Session::get('idFinancialYear'));
}
if($request->has('cheque-status')){
$status = $request->get('cheque-status');
$chequelist = $chequelist->where(function($query) use ($status){
$query->where('student_transaction.status', '=', $status);
});
$lesserchequelist = $lesserchequelist->where(function($query) use ($status){
$query->where('lesser_transaction.status', '=', $status);
});
}else{
$chequelist = $chequelist->where(function($query) {
$query->whereNull('student_transaction.status');
$query->orWhere('student_transaction.status', '=', 'Cleared');
$query->orWhere('student_transaction.status', '=', 'In-Process');
$query->orWhere('student_transaction.status', '=', 'Success');
$query->orWhere('student_transaction.status', '=', 'Bounced');
});
$lesserchequelist = $lesserchequelist->where(function($query) {
$query->whereNull('lesser_transaction.status');
$query->orWhere('lesser_transaction.status', '=', 'Cleared');
$query->orWhere('lesser_transaction.status', '=', 'In-Process');
$query->orWhere('lesser_transaction.status', '=', 'Success');
$query->orWhere('lesser_transaction.status', '=', 'Bounced');
});
}
if (($request->has('toDate') && $request->toDate != null) && ($request->has('fromDate') && $request->fromDate != null)) {
$chequelist = $chequelist->whereBetween('paymentDate', [$from_date, $to_date]);
$lesserchequelist = $lesserchequelist->whereBetween('paymentDate', [$from_date, $to_date]);
} else if ($request->has('fromDate') && $request->fromDate != null) {
$chequelist = $chequelist->whereDate('paymentDate', '>=', $to_date);
$lesserchequelist = $lesserchequelist->whereDate('paymentDate', '>=', $to_date);
} else if ($request->has('toDate') && $request->toDate != null) {
$chequelist = $chequelist->whereDate('paymentDate', '<=', $to_date);
$lesserchequelist = $lesserchequelist->whereDate('paymentDate', '<=', $to_date);
}
$chequelist = $chequelist->get();
$lesserchequelist = $lesserchequelist->get();
return view('schools.transaction.chequelist', compact('lesserchequelist', 'chequelist', 'classes'));
}
public function getChequeListExtra(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');
}
$classes = ['' => '--Select Class--'] + \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
$chequelist = DB::table('student_transaction_extra')
->join('banks', 'student_transaction_extra.idBank', '=', 'banks.idBank')
->leftJoin('school_users', 'student_transaction_extra.created_by', '=', 'school_users.idSchoolUser')
->join('students', 'student_transaction_extra.idStudent', '=', 'students.idStudent')
->join('classes', 'students.idClass', '=', 'classes.idClass')
->join('sections', 'students.idSection', '=', 'sections.idSection')
->select('student_transaction_extra.*','banks.*','school_users.name','students.*','classes.*','sections.*')
// ->where('student_transaction.idFinancialYear', '=', Session::get('idFinancialYear'))
->where('student_transaction_extra.idSchool', '=', Auth::guard('school')->user()->idSchool);
if ($request->idClass != null && $request->idSection != null && $request->idFinancialYear != null) {
$chequelist = $chequelist->where('student_transaction_extra.idFinancialYear', '=', $request->idFinancialYear)
->where('students.idClass', '=', $request->idClass)
->where('students.idSection', '=', $request->idSection)
->where(function($query) {
$query->whereNull('student_transaction_extra.status');
$query->orWhere('student_transaction_extra.status', '=', 'Cleared');
$query->orWhere('student_transaction_extra.status', '=', 'In-Process');
$query->orWhere('student_transaction_extra.status', '=', 'Success');
$query->orWhere('student_transaction_extra.status', '=', 'Bounced');
});
} else if($request->idFinancialYear != null){
$chequelist = $chequelist->where('student_transaction_extra.idFinancialYear', '=', $request->idFinancialYear)
->where(function($query) {
$query->whereNull('student_transaction_extra.status');
$query->orWhere('student_transaction_extra.status', '=', 'Cleared');
$query->orWhere('student_transaction_extra.status', '=', 'In-Process');
$query->orWhere('student_transaction_extra.status', '=', 'Success');
$query->orWhere('student_transaction_extra.status', '=', 'Bounced');
});
}else if($request->ecNo != null) {
$chequelist = $chequelist->where('students.ecNo', '=', $request->ecNo);
} else {
$chequelist = $chequelist->where('student_transaction_extra.idFinancialYear', '=', Session::get('idFinancialYear'))
->where(function($query) {
$query->whereNull('student_transaction_extra.status');
$query->orWhere('student_transaction_extra.status', '=', 'Cleared');
$query->orWhere('student_transaction_extra.status', '=', 'In-Process');
$query->orWhere('student_transaction_extra.status', '=', 'Success');
$query->orWhere('student_transaction_extra.status', '=', 'Bounced');
});
}
if (($request->has('toDate') && $request->toDate != null) && ($request->has('fromDate') && $request->fromDate != null)) {
$chequelist = $chequelist->whereBetween('paymentDate', [$from_date, $to_date]);
} else if ($request->has('fromDate') && $request->fromDate != null) {
$chequelist = $chequelist->whereDate('paymentDate', '>=', $to_date);
} else if ($request->has('toDate') && $request->toDate != null) {
$chequelist = $chequelist->whereDate('paymentDate', '<=', $to_date);
}
$chequelist = $chequelist->get();
return view('schools.transaction.chequelist-extra', compact('chequelist', 'classes'));
}
}
Copyright © 2021 -