<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Facades\Mail;
use Illuminate\Mail\Message;
use Illuminate\Support\HtmlString;
use Illuminate\Support\Str;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use App\Models\User;
use App\Models\Caste;
use App\Models\Religion;
use App\Models\Course;
use App\Models\ClassMaster;
use App\Models\Staff;
use App\Models\StaffGender;
use App\Models\Vibhag;
use App\Models\Zila;
use App\Models\Sankul;
use App\Models\Session;
use App\Models\Student;
use App\Models\StudentGender;
use App\Models\SocialConcerns;
use App\Models\PhysicalResources;
use App\Models\FinancialDetails;
use App\Models\StudentAttendance;
use App\Models\StaffAttendance;
use App\Models\SchoolCommittee;
use App\Models\Sports;
use App\Models\Academic;
use App\Models\Grade;
use App\Models\Certificate;
use App\Models\Workshop;
use App\Models\Awards;
use App\Models\Vision;
use App\Models\Event;
use App\Models\Vedic;
use App\Models\ShikshaDan;
use App\Models\IncomeDetails;
use App\Models\ExpenseDetails;
use App\Models\incomeExpense;
use App\Models\IncomeExpenseDetails;
use App\Models\Tree;
use App\Models\CompiledList;
use App\Models\KshetraPerforma;
use Illuminate\Validation\Rule;
class SchoolDataAdminController extends Controller
{
public function __construct()
{
}
// school register
public static function index()
{
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
return redirect()->route('admin.dashboard')->with('error', 'You do not have permission to view this page.');
}
$role=[
'users.user_role' => 'employee',
];
$schoolList = User::where($role)
->leftJoin('users as creators', 'users.created_by', '=', 'creators.id')
->select('users.*', 'creators.name as creator_name') // Adjust the selected fields as necessary
->orderBy('users.id', 'DESC')
->get();
// dd($schoolList);
return view('admin.school-data.school-register.school_all',
[
'title' => 'Sarvhitkari Punjab - View School List',
'keyword'=> '',
'description'=> '',
'schoolList' => $schoolList
]);
}
public static function getZila(Request $request)
{
$vibhagId = $request->input('vibhag_name');
$zila = Zila::where('vibhag_ID', $vibhagId)->pluck('zila_name', 'zila_id');
return response()->json(['zila' => $zila]);
}
public static function getSankul(Request $request)
{
$zilaId = $request->input('zila_name');
$sankul = Sankul::where('zila_ID', $zilaId)->pluck('sankul_name', 'sankul_id');
return response()->json(['sankul' => $sankul]);
}
public static function add()
{
$courseList = Course::all();
$vibhagAll = Vibhag::all();
return view('admin.school-data.school-register.school_add',
[
'title' => 'Sarvhitkari Punjab - Add School',
'keyword'=> '',
'description'=> '',
'courseList' => $courseList,
'vibhagAll' => $vibhagAll
]);
}
public function save(Request $request)
{
$data = $request->all();
$rules = [
'school_name' => 'required',
'principal_name' => 'required',
'contact_number' => 'required|numeric',
'email' => 'required|email:rfc,dns|unique:users|max:255',
// 'website' => 'required',
'board' => 'required',
'date_of_joining' => 'required',
'level' => 'required',
'address' => 'required',
'profile_pic' => 'nullable|image|mimes:jpeg,png,jpg|max:1024',
'vibhag_name' => 'required',
'zila_name' => 'required',
'sankul_name' => 'required',
];
$messages = [
'required' => 'The :attribute field is required.',
'profile_pic' => 'Only jpg or png formats are allowed',
];
$validator = Validator::make($data, $rules, $messages);
if ($validator->fails()) {
$errors=$validator->errors();
$response_arr = array(
"status" => false,
"message" => "<div id='message'><div class='alert alert-danger'>Oops! Something went wrong. Please try again later!</div></div>",
"errors" => $errors,
"data" => []
);
}else{
$selectedValues = $request->level;
$implodedValues = implode(',', $selectedValues);
$password = Str::random(8);
$image = $request->file('profile_pic');
$filename = '';
if($image != ''){
$filename = time() . '.' . $image->getClientOriginalExtension();
$image->move(public_path('uploads/user_profile'), $filename);
}
$data = [
'name' => $request->school_name,
'principal_name' => $request->principal_name,
'mobile' => $request->contact_number,
'email' => $request->email,
'password' => Hash::make($password),
'website' => $request->website,
'board' => $request->board,
'date_of_joining' => $request->date_of_joining,
'level' => $implodedValues,
'address' => $request->address,
'user_role' => $request->user_role,
'user_status' => $request->user_status,
'profile_pic' => $filename,
'vibhag_id' => $request->vibhag_name,
'zila_id' => $request->zila_name,
'sankul_id' => $request->sankul_name,
'created_by' => auth()->user()->id
];
$school = User::create($data);
if ($school instanceof User) {
// send the email
$emailRecipient = $request->email;
$link1 = asset('images/logo-text.png');
$link2 = asset('images/logo-textt.png');
$MailText = "<!DOCTYPE html>" .
"<html>" .
"<head>" .
" <meta name='viewport' content='width=device-width' />" .
" <title></title>" .
" <style> body{ font-family:'Open Sans',sans-serif; } </style>" .
"</head>" .
"<body>" .
" <div>" .
" <table style='width:600px;border-bottom:5px solid #fdc800;margin:auto;border-top:0px solid #fdc800;background:#dddddd;padding:40px;'>" .
" <tbody style='width:600px;border:0px solid #ffffff;display:block;background:#ffff;padding:25px 25px'>" .
" <tr style='background-color:#ffffff'>" .
" <td><img src='{$link1}' style='width:100%; display:block; margin:10px auto;'/></td>" .
" </tr>" .
" <tr style='background-color:#f7f7f7'>" .
" <td colspan='2'>" .
" <div style='width:100%;text-align:left;display:block;padding:20px 0 50px;font-size:15px;line-height:18px'>" .
" <div style='padding:0 10px'>Your account has been approved by Sarvhit Saral Admin. Your password for Login Sarvhit Saral account is : $password </div>" .
" </div>" .
" </td>" .
" </tr>" .
" <tr style='background-color:#fdc800;color:#ffffff'>" .
" <td colspan='2'>" .
" <table style='border-collapse:collapse;width:574px'>" .
" <tbody>" .
" <tr>" .
" <td><img src='{$link2}' style='width:250px; display:block; margin:10px auto;' /></td>" .
" </tr>" .
" </tbody>" .
" </table>" .
" </td>" .
" </tr>" .
" </tbody>" .
" </table>" .
" </div>" .
"</body>" .
"</html>";
Mail::send([], [], function (Message $message) use ($emailRecipient, $MailText) {
$message->to($emailRecipient);
$message->subject('Sarvhitkari Punjab');
$message->html($MailText);
});
// Mail::raw("Your password for login Sarvhitkari Punjab account is : $password", function ($message) use ($emailRecipient) {
// $message->to($emailRecipient);
// $message->subject('Sarvhitkari Punjab - Login Password');
// });
}
$response_arr = array(
"status" => true,
"message" => "<div id='message'><div class='alert alert-success'>School information added successfully.</div></div>",
);
}
return response()->json($response_arr);
}
public static function edit($id)
{
$courseList = Course::all();
$vibhagAll = Vibhag::all();
$adminSchool = User::with('vibhag.zilas.sankul')->find($id);
return view('admin.school-data.school-register.school_edit',
[
'title' => 'Sarvhitkari Punjab - Edit School',
'keyword'=> '',
'description'=> '',
'courseList' => $courseList,
'adminSchool'=> $adminSchool,
'vibhagAll'=> $vibhagAll
]);
}
public function update($id, Request $request)
{
$data = $request->all();
$rules = [
'school_name' => 'required',
'principal_name' => 'required',
'contact_number' => 'required|numeric',
'email' => 'required|email:rfc,dns|unique:users,email,' . $id . ',id|max:255',
'board' => 'required',
'date_of_joining' => 'required',
'level' => 'required',
'address' => 'required',
'profile_pic' => 'nullable|image|mimes:jpeg,png,jpg|max:1024',
'vibhag_name' => 'required',
'zila_name' => 'required',
'sankul_name' => 'required',
'school_code' => 'nullable|unique:users,school_code,' . $id . ',id',
];
$messages = [
'required' => 'The :attribute field is required.',
'profile_pic' => 'Only jpg or png formats are allowed',
];
$validator = Validator::make($data, $rules, $messages);
if ($validator->fails()) {
$errors=$validator->errors();
$response_arr = array(
"status" => false,
"message" => "<div id='message'><div class='alert alert-danger'>Oops! Something went wrong. Please try again later!</div></div>",
"errors" => $errors,
"data" => []
);
}else{
$user = User::find($id);
$selectedValues = $request->level;
$implodedValues = implode(',', $selectedValues);
if ($request->hasFile('profile_pic')) {
$image = $request->file('profile_pic');
$filename = time() . '.' . $image->getClientOriginalExtension();
$image->move(public_path('uploads/user_profile'), $filename);
} else {
$filename = $user->profile_pic;
}
$data = [
'name' => $request->school_name,
'principal_name' => $request->principal_name,
'mobile' => $request->contact_number,
'website' => $request->website,
'email' => $request->email,
'board' => $request->board,
'date_of_joining' => $request->date_of_joining,
'level' => $implodedValues,
'address' => $request->address,
'profile_pic' => $filename,
'vibhag_id' => $request->vibhag_name,
'zila_id' => $request->zila_name,
'sankul_id' => $request->sankul_name,
'created_by' => auth()->user()->id,
'school_code' => $request->school_code,
];
if (!empty($request->password)) {
$data['password'] = Hash::make($request->password);
}
$user->update($data);
$response_arr = array(
"status" => true,
"message" => "<div id='message'><div class='alert alert-success'>School information updated successfully.</div></div>",
);
}
return response()->json($response_arr);
}
public function approve($id, Request $request)
{
$emailSend = User::where('id',$id)->select('email')->first();
$data = $request->all();
$password = Str::random(8);
$data = [
'password' => Hash::make($password),
'user_status' => 'Approved',
'created_by' => auth()->user()->id
];
$school = User::find($id);
if ($school) {
$school->update($data);
// Send the email
$emailRecipient = $emailSend->email;
$link1 = asset('images/logo-text.png');
$link2 = asset('images/logo-textt.png');
$MailText = "<!DOCTYPE html>" .
"<html>" .
"<head>" .
" <meta name='viewport' content='width=device-width' />" .
" <title></title>" .
" <style> body{ font-family:'Open Sans',sans-serif; } </style>" .
"</head>" .
"<body>" .
" <div>" .
" <table style='width:600px;border-bottom:5px solid #fdc800;margin:auto;border-top:0px solid #fdc800;background:#dddddd;padding:40px;'>" .
" <tbody style='width:600px;border:0px solid #ffffff;display:block;background:#ffff;padding:25px 25px'>" .
" <tr style='background-color:#ffffff'>" .
" <td><img src='{$link1}' style='width:100%; display:block; margin:10px auto;' /></td>" .
" </tr>" .
" <tr style='background-color:#f7f7f7'>" .
" <td colspan='2'>" .
" <div style='width:100%;text-align:left;display:block;padding:20px 0 50px;font-size:15px;line-height:18px'>" .
" <div style='padding:0 10px'>Your account has been approved by Sarvhit Saral Admin. Your password for Login Sarvhit Saral account is : $password </div>" .
" </div>" .
" </td>" .
" </tr>" .
" <tr style='background-color:#fdc800;color:#ffffff'>" .
" <td colspan='2'>" .
" <table style='border-collapse:collapse;width:574px'>" .
" <tbody>" .
" <tr>" .
" <td><img src='{$link2}' style='width:250px; display:block; margin:10px auto;' /></td>" .
" </tr>" .
" </tbody>" .
" </table>" .
" </td>" .
" </tr>" .
" </tbody>" .
" </table>" .
" </div>" .
"</body>" .
"</html>";
Mail::send([], [], function (Message $message) use ($emailRecipient, $MailText) {
$message->to($emailRecipient);
$message->subject('Sarvhitkari Punjab');
$message->html($MailText);
});
return redirect()->route('admin.school.school-list')->with('message', 'School information approved successfully.');
}
}
public function delete($id)
{
User::find($id)->delete();
return redirect()->route('admin.school.school-list')->with('message','School information deleted successfully');
}
public static function activate_shiksha_dan()
{
$role=[
'user_role' => 'employee',
'user_status' => 'Approved'
];
$schoolList = User::where($role)->orderBy('id','ASC')->get();
$updatedUserIds = User::where('jsTree', 'Activate')->pluck('id')->toArray();
return view('admin.school-data.school-register.activate',
[
'title' => 'Sarvhitkari Punjab - Activate Shiksha Dan',
'keyword'=> '',
'description'=> '',
'school' => $schoolList,
'updatedUserIds' => $updatedUserIds
]);
}
public function activate_shiksha_dan_save(Request $request)
{
$data = $request->all();
$rules = [];
$messages = [];
$validator = Validator::make($data, $rules, $messages);
if ($validator->fails()) {
$errors=$validator->errors();
$response_arr = array(
"status" => false,
"message" => "<div id='message'><div class='alert alert-danger'>Oops! Something went wrong. Please try again later!</div></div>",
"errors" => $errors,
"data" => []
);
}else{
// Convert checkedIds string to an array
$ids = json_decode($request->checkedIds, true);
User::whereIn('id', $ids)->update(['jsTree' => 'Activate', 'created_by' => auth()->user()->id]);
User::whereNotIn('id', $ids)->where('user_role', '!=', 'editor')->update(['jsTree' => 'Deactivate']);
$response_arr = array(
"status" => true,
"message" => "<div id='message'><div class='alert alert-success'>Shiksha Dan Status updated successfully</div></div>",
);
}
return response()->json($response_arr);
}
// BASIC INFORMATION
public function getZilas(Request $request)
{
$vibhagIds = json_decode($request->input('vibhag_ids'));
$zilas = Zila::whereIn('vibhag_ID', $vibhagIds)->get();
return response()->json($zilas);
}
public function getSankuls(Request $request)
{
$vibhagIds = json_decode($request->input('vibhag_ids'));
$zilaIds = json_decode($request->input('zila_ids'));
$sankuls = Sankul::whereIn('vibhag_ID', $vibhagIds)->whereIn('zila_ID', $zilaIds)->get();
return response()->json($sankuls);
}
public function getSchools(Request $request)
{
$vibhagIds = json_decode($request->input('vibhag_ids'));
$zilaIds = json_decode($request->input('zila_ids'));
$sankulIds = json_decode($request->input('sankul_ids'));
$schools = User::whereIn('vibhag_id', $vibhagIds)->whereIn('zila_id', $zilaIds)->whereIn('sankul_id', $sankulIds)->where('user_role','employee')->get();
return response()->json($schools);
}
public function filterRecords(Request $request)
{
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagSchoolInfo' => $vibhagIds]);
session(['zilaSchoolInfo' => $zilaIds]);
session(['sankulSchoolInfo' => $sankulIds]);
session(['schoolSchoolInfo' => $schoolIds]);
$role = [
'user_role' => 'employee',
'user_status' => 'Approved',
];
$query = User::join('vibhag_masters','vibhag_masters.vibhag_id','=','users.vibhag_id')
->join('zila_masters','zila_masters.zila_id','=','users.zila_id')
->join('sankul_masters','sankul_masters.sankul_id','=','users.sankul_id')
->where($role)
// ->where('users.session_id', auth()->user()->session_id)
->select('users.*','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('users.id', 'DESC');
if (!empty($vibhagIds)) {
$query->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$query->whereIn('users.vibhag_id', $vibhagIds);
$query->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$query->whereIn('users.vibhag_id', $vibhagIds);
$query->whereIn('users.zila_id', $zilaIds);
$query->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$query->whereIn('users.vibhag_id', $vibhagIds);
$query->whereIn('users.zila_id', $zilaIds);
$query->whereIn('users.sankul_id', $sankulIds);
$query->whereIn('users.id', $schoolIds);
}
$schoolList = $query->get();
// Determine color for each record
foreach ($schoolList as $record) {
$presence = []; // Array to track presence in different tables
// Check presence in different tables
$tables = ['staff', 'student_info', 'social_concerns', 'shiksha_dan'];
foreach ($tables as $table) {
if ($table === 'staff') {
$count = DB::table($table)
->where('school_id', $record->id)
->where('staff_session', $record->session_id)
->count();
} else {
$count = DB::table($table)
->where('school_id', $record->id)
->where('session', $record->session_id)
->count();
}
if ($count > 0) {
$presence[] = $table;
}
}
// Determine percentage and color based on presence
switch (count($presence)) {
case 0:
$record->percentage = 0;
$record->color = '#FF1616';
break;
case 1:
$record->percentage = 25;
$record->color = '#FFAA16';
break;
case 2:
$record->percentage = 50;
$record->color = '#d8d80d';
break;
case 3:
$record->percentage = 75;
$record->color = '#0033c4';
break;
case 4:
$record->percentage = 100;
$record->color = '#7ED321';
break;
default:
$record->percentage = 0;
$record->color = '#FF1616';
}
}
return response()->json($schoolList);
}
public static function school_information_all()
{
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$role=[
'user_role' => 'employee',
'user_status' => 'Approved',
];
$userData = User::with('vibhag.zilas.sankul')
->where($role)
->leftJoin('course_masters', 'course_masters.course_id', '=', 'users.level')
->leftJoin('class_masters', 'class_masters.class_id', '=', 'users.level_class')
->orderBy('users.id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
})
->get();
$userData->transform(function ($user) {
// $tables = ['staff', 'student_info', 'social_concerns', 'shiksha_dan'];
// $presence = [];
// foreach ($tables as $table) {
// if ($table === 'staff') {
// $count = DB::table($table)->where('school_id', $user->id)->where('staff_session', $user->session_id)->count();
// } else {
// $count = DB::table($table)->where('school_id', $user->id)->where('session', $user->session_id)->count();
// }
// if ($count > 0) {
// $presence[] = $table;
// }
// }
// Assign percentage and color based on presence
// switch (count($presence)) {
// case 0:
// $percentage = 0;
// $color = '#FF1616';
// break;
// case 1:
// $percentage = 25;
// $color = '#FFAA16';
// break;
// case 2:
// $percentage = 50;
// $color = '#d8d80d';
// break;
// case 3:
// $percentage = 75;
// $color = '#0033c4';
// break;
// case 4:
// $percentage = 100;
// $color = '#7ED321';
// break;
// default:
// $percentage = 0;
// $color = '#FF1616';
// }
// // Set percentage and color properties
// $user->percentage = $percentage;
// $user->color = $color;
// Explode level IDs
$levelIds = explode(',', $user->level);
$levels = Course::whereIn('course_id', $levelIds)->pluck('course_name');
$user->level_names = $levels;
// Explode level_class IDs
$levelClassIds = explode(',', $user->level_class);
$levelClasses = ClassMaster::whereIn('class_id', $levelClassIds)->pluck('class_name');
$user->level_class_names = $levelClasses;
return $user;
});
$vibhagSchoolInfo = session('vibhagSchoolInfo');
$zilaSchoolInfo = session('zilaSchoolInfo');
$sankulSchoolInfo = session('sankulSchoolInfo');
$schoolSchoolInfo = session('schoolSchoolInfo');
// Check and apply filters based on session values
if (!empty($vibhagSchoolInfo)) {
$userData = $userData->whereIn('vibhag.vibhag_id', $vibhagSchoolInfo);
}
if (!empty($zilaSchoolInfo)) {
$userData = $userData->whereIn('zilas.zila_id', $zilaSchoolInfo);
}
if (!empty($sankulSchoolInfo)) {
$userData = $userData->whereIn('sankul.sankul_id', $sankulSchoolInfo);
}
if (!empty($schoolSchool)) {
$userData = $userData->whereIn('users.id', $schoolSchoolInfo);
}
return view('admin.school-data.basic-information.school_information',
[
'title' => 'Sarvhitkari Punjab - School Information',
'keyword'=> '',
'description'=> '',
'schoolList'=> $userData,
'vibhagAll' => $vibhagAll
]);
}
public static function school_information_view($id)
{
$view = User::with('vibhag.zilas.sankul')->find($id);
$levelExplode = explode(',', $view['level']);
$courseNames = [];
foreach ($levelExplode as $courseId) {
$course = Course::find($courseId);
if($course){
$courseNames[] = $course->course_name;
}else{
$courseNames[] = '';
}
}
$levelClassExplode = explode(',', $view['level_class']);
$classNames = [];
foreach ($levelClassExplode as $classId) {
$class = ClassMaster::find($classId);
if($class){
$classNames[] = $class->class_name;
}else{
$classNames[] = '';
}
}
return view('admin.school-data.basic-information.view_school_information',
[
'title' => 'Sarvhitkari Punjab - View School Information',
'keyword'=> '',
'description'=> '',
'view' => $view,
'courseNames' => $courseNames,
'classNames' => $classNames,
]);
}
public static function staff_information_all()
{
$session = Session::all();
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$users = User::where($role)
->where('session_masters.session_id',$currentYear)
->join('staff', 'users.id', '=', 'staff.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'staff.staff_session')
->join('staff_gender', 'staff.staff_id', '=', 'staff_gender.staff_id')
->select('staff.*','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->selectRaw('SUM(IFNULL(staff_gender.male_value, 0)) AS total_male')
->selectRaw('SUM(IFNULL(staff_gender.female_value, 0)) AS total_female')
->orderBy('users.id', 'ASC')
->groupBy('staff.staff_id', 'staff.staff_session', 'staff.school_id', 'staff.staff_choose', 'staff.staff_ratio', 'staff.upload_pdf', 'staff.created_at', 'staff.updated_at','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagStaff = session('vibhagStaff');
$zilaStaff = session('zilaStaff');
$sankulStaff = session('sankulStaff');
$schoolStaff = session('schoolStaff'); // Add this line to retrieve schoolStaff session value
// Check if session values exist and filter accordingly
if (!empty($vibhagStaff)) {
$users = $users->whereIn('users.vibhag_id', $vibhagStaff);
}
if (!empty($zilaStaff)) {
$users = $users->whereIn('users.zila_id', $zilaStaff);
}
if (!empty($sankulStaff)) {
$users = $users->whereIn('users.sankul_id', $sankulStaff);
}
if (!empty($schoolStaff)) {
$staff = $staff->whereIn('staff.school_id', $schoolStaff);
}
if (!is_null($schoolStaff)) {
$users = $users->whereIn('staff.school_id', $schoolStaff);
}
$users = $users->get();
// Calculate overall total_male and total_female for each school
$schoolData = [];
foreach ($users as $user) {
$schoolId = $user->school_id;
if (!isset($schoolData[$schoolId])) {
$schoolData[$schoolId] = [
'staffId' => $user->id,
'school_name' => $user->name,
'vibhag_name' => $user->vibhag_name,
'zila_name' => $user->zila_name,
'sankul_name' => $user->sankul_name,
'upload_pdf' => $user->upload_pdf,
'total_male' => 0,
'total_female' => 0,
'total_male_teaching' => 0,
'total_female_teaching' => 0,
'total_male_non_teaching' => 0,
'total_female_non_teaching' => 0,
];
}
if ($user->staff_choose == 'teaching') {
$schoolData[$schoolId]['total_male_teaching'] += $user->total_male;
$schoolData[$schoolId]['total_female_teaching'] += $user->total_female;
} else if ($user->staff_choose == 'non_teaching') {
$schoolData[$schoolId]['total_male_non_teaching'] += $user->total_male;
$schoolData[$schoolId]['total_female_non_teaching'] += $user->total_female;
}
$schoolData[$schoolId]['total_male'] += $user->total_male;
$schoolData[$schoolId]['total_female'] += $user->total_female;
}
// dd($schoolData);
return view('admin.school-data.basic-information.staff_information', [
'title' => 'Sarvhitkari Punjab - Staff Information',
'keyword' => '',
'description' => '',
'staffUnique' => $schoolData,
'session' => $session,
'vibhagAll' => $vibhagAll
]);
}
public function filterStaffInformation(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
// Store the values in session variables
session(['vibhagStaff' => $vibhagIds]);
session(['zilaStaff' => $zilaIds]);
session(['sankulStaff' => $sankulIds]);
session(['schoolStaff' => $schoolIds]);
// dd(session('vibhagStaff'), session('zilaStaff'), session('sankulStaff'), session('schoolStaff'));
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$users = User::where($role)
->where('session_masters.session_id',$currentYear)
->join('staff', 'users.id', '=', 'staff.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'staff.staff_session')
->join('staff_gender', 'staff.staff_id', '=', 'staff_gender.staff_id')
->select('staff.*','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->selectRaw('SUM(IFNULL(staff_gender.male_value, 0)) AS total_male')
->selectRaw('SUM(IFNULL(staff_gender.female_value, 0)) AS total_female')
->orderBy('users.id', 'ASC')
->groupBy('staff.staff_id', 'staff.staff_session', 'staff.school_id', 'staff.staff_choose', 'staff.staff_ratio', 'staff.upload_pdf', 'staff.created_at', 'staff.updated_at','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name');
if (!empty($vibhagIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
$users->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
$users->whereIn('users.sankul_id', $sankulIds);
$users->whereIn('users.id', $schoolIds);
}
$users = $users->get();
$filtered = [];
foreach ($users as $user) {
$schoolId = $user->school_id;
if (!isset($filtered[$schoolId])) {
$filtered[$schoolId] = [
'staffId' => $user->id,
'school_name' => $user->name,
'vibhag_name' => $user->vibhag_name,
'zila_name' => $user->zila_name,
'sankul_name' => $user->sankul_name,
'total_male' => 0,
'total_female' => 0,
'total_male_teaching' => 0,
'total_female_teaching' => 0,
'total_male_non_teaching' => 0,
'total_female_non_teaching' => 0,
];
}
if ($user->staff_choose == 'teaching') {
$filtered[$schoolId]['total_male_teaching'] += $user->total_male;
$filtered[$schoolId]['total_female_teaching'] += $user->total_female;
} else if ($user->staff_choose == 'non_teaching') {
$filtered[$schoolId]['total_male_non_teaching'] += $user->total_male;
$filtered[$schoolId]['total_female_non_teaching'] += $user->total_female;
}
$filtered[$schoolId]['total_male'] += $user->total_male;
$filtered[$schoolId]['total_female'] += $user->total_female;
}
return response()->json($filtered);
}
public static function staff_information_view($id)
{
$currentYear = auth()->user()->session_id;
$caste = Caste::all();
$religion = Religion::all();
$gender = StaffGender::where('staff_id',$id)->get();
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$staff = User::where($role)
->where('users.id',$id)
->where('session_masters.session_id',$currentYear)
->join('staff', 'users.id', '=', 'staff.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'staff.staff_session')
->join('staff_gender', 'staff.staff_id', '=', 'staff_gender.staff_id')
->select('staff.*','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from','session_masters.session_to')
->selectRaw('SUM(IFNULL(staff_gender.male_value, 0)) AS total_male')
->selectRaw('SUM(IFNULL(staff_gender.female_value, 0)) AS total_female')
->groupBy('staff.staff_id', 'staff.staff_session', 'staff.school_id', 'staff.staff_choose', 'staff.staff_ratio', 'staff.upload_pdf', 'staff.created_at', 'staff.updated_at','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from','session_masters.session_to')
->first();
return view('admin.school-data.basic-information.view_staff_information',
[
'title' => 'Sarvhitkari Punjab - View Staff Information',
'keyword'=> '',
'description'=> '',
'staff' => $staff,
'caste' => $caste,
'religion' => $religion,
'gender' => $gender
]);
}
public function getStaffRecords(Request $request)
{
$year = auth()->user()->session_id;
$schoolId = $request->input('school_id');
$choose_staff = $request->input('choose_staff');
// Use the retrieved data to query the database
$staffRecords = Staff::where([
'staff.staff_session'=> $year,
'staff.staff_choose'=> $choose_staff,
'staff.school_id'=> $schoolId
])
->join('staff_gender', 'staff.staff_id', '=', 'staff_gender.staff_id')
->select('staff.*', 'staff_gender.caste_id','staff_gender.religion_id','staff_gender.male_value', 'staff_gender.female_value')
->get();
return response()->json($staffRecords);
}
public static function student_information_all()
{
$session = Session::all();
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$users = User::where($role)
->where('session_masters.session_id',$currentYear)
->join('student_info', 'users.id', '=', 'student_info.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'student_info.session')
->join('course_masters', 'course_masters.course_id', '=', 'student_info.course_id')
->join('class_masters', 'class_masters.class_id', '=', 'student_info.class_id')
->join('student_gender', 'student_info.student_id', '=', 'student_gender.student_id')
->select('student_info.school_id', 'student_info.session', 'student_info.student_id', 'student_info.course_id', 'student_info.class_id', 'student_info.created_at', 'student_info.updated_at','course_masters.course_name','class_masters.class_name','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','student_gender.caste_id')
->selectRaw('SUM(IFNULL(student_gender.male_value, 0)) AS total_male')
->selectRaw('SUM(IFNULL(student_gender.female_value, 0)) AS total_female')
->orderBy('users.id', 'ASC')
->groupBy('student_info.school_id', 'student_info.session', 'student_info.student_id', 'student_info.course_id', 'student_info.class_id', 'student_info.created_at', 'student_info.updated_at','course_masters.course_name','class_masters.class_name','class_masters.class_name','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','student_gender.caste_id')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagSchool = session('vibhagSchool');
$zilaSchool = session('zilaSchool');
$sankulSchool = session('sankulSchool');
$schoolSchool = session('schoolSchool');
// Check and apply filters based on session values
if (!is_null($vibhagSchool)) {
$users = $users->whereIn('users.vibhag_id', $vibhagSchool);
}
if (!is_null($zilaSchool)) {
$users = $users->whereIn('users.zila_id', $zilaSchool);
}
if (!is_null($sankulSchool)) {
$users = $users->whereIn('users.sankul_id', $sankulSchool);
}
if (!is_null($schoolSchool)) {
$users = $users->whereIn('student_info.school_id', $schoolSchool);
}
$users = $users->get();
// Calculate overall total_male and total_female for each school
$schoolData = [];
foreach ($users as $user) {
$schoolId = $user->school_id;
if (!isset($schoolData[$schoolId])) {
$schoolData[$schoolId] = [
'student_id' => $user->id,
'school_name' => $user->name,
'vibhag_name' => $user->vibhag_name,
'zila_name' => $user->zila_name,
'sankul_name' => $user->sankul_name,
'total_male' => 0,
'total_female' => 0,
'total_gen' => 0,
'total_obc' => 0,
'total_sc' => 0,
'total_st' => 0,
'total_oth' => 0,
];
}
if($user->caste_id== 1){
$schoolData[$schoolId]['total_gen'] += $user->total_male + $user->total_female;
}else{
$schoolData[$schoolId]['total_gen'] += 0;
}
if($user->caste_id== 2){
$schoolData[$schoolId]['total_obc'] += $user->total_male + $user->total_female;
}else{
$schoolData[$schoolId]['total_obc'] += 0;
}
if($user->caste_id== 3){
$schoolData[$schoolId]['total_sc'] += $user->total_male + $user->total_female;
}else{
$schoolData[$schoolId]['total_sc'] += 0;
}
if($user->caste_id== 4){
$schoolData[$schoolId]['total_st'] += $user->total_male + $user->total_female;
}else{
$schoolData[$schoolId]['total_st'] += 0;
}
if($user->caste_id== 5){
$schoolData[$schoolId]['total_oth'] += $user->total_male + $user->total_female;
}else{
$schoolData[$schoolId]['total_oth'] += 0;
}
$schoolData[$schoolId]['total_male'] += $user->total_male;
$schoolData[$schoolId]['total_female'] += $user->total_female;
}
// dd($schoolData);
return view('admin.school-data.basic-information.student_information',
[
'title' => 'Sarvhitkari Punjab - Student Information',
'keyword'=> '',
'description'=> '',
'session' => $session,
'student'=>$schoolData,
'vibhagAll' => $vibhagAll
]);
}
public function filterStudentInformation(Request $request)
{
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
$currentYear = auth()->user()->session_id;
session(['vibhagSchool' => $vibhagIds]);
session(['zilaSchool' => $zilaIds]);
session(['sankulSchool' => $sankulIds]);
session(['schoolSchool' => $schoolIds]);
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$users = User::where($role)
->where('session_masters.session_id',$currentYear)
->join('student_info', 'users.id', '=', 'student_info.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'student_info.session')
->join('course_masters', 'course_masters.course_id', '=', 'student_info.course_id')
->join('class_masters', 'class_masters.class_id', '=', 'student_info.class_id')
->join('student_gender', 'student_info.student_id', '=', 'student_gender.student_id')
->select('student_info.school_id', 'student_info.session', 'student_info.student_id', 'student_info.course_id', 'student_info.class_id', 'student_info.created_at', 'student_info.updated_at','course_masters.course_name','class_masters.class_name','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','student_gender.caste_id')
->selectRaw('SUM(IFNULL(student_gender.male_value, 0)) AS total_male')
->selectRaw('SUM(IFNULL(student_gender.female_value, 0)) AS total_female')
->orderBy('users.id', 'ASC')
->groupBy('student_info.school_id', 'student_info.session', 'student_info.student_id', 'student_info.course_id', 'student_info.class_id', 'student_info.created_at', 'student_info.updated_at','course_masters.course_name','class_masters.class_name','class_masters.class_name','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','student_gender.caste_id');
if (!empty($vibhagIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
$users->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
$users->whereIn('users.sankul_id', $sankulIds);
$users->whereIn('users.id', $schoolIds);
}
$users = $users->get();
$filtered = [];
foreach ($users as $user) {
$schoolId = $user->school_id;
if (!isset($filtered[$schoolId])) {
$filtered[$schoolId] = [
'student_id' => $user->id,
'school_name' => $user->name,
'vibhag_name' => $user->vibhag_name,
'zila_name' => $user->zila_name,
'sankul_name' => $user->sankul_name,
'total_male' => 0,
'total_female' => 0,
'total_gen' => 0,
'total_obc' => 0,
'total_sc' => 0,
'total_st' => 0,
'total_oth' => 0,
];
}
if($user->caste_id== 1){
$filtered[$schoolId]['total_gen'] += $user->total_male + $user->total_female;
}else{
$filtered[$schoolId]['total_gen'] += 0;
}
if($user->caste_id== 2){
$filtered[$schoolId]['total_obc'] += $user->total_male + $user->total_female;
}else{
$filtered[$schoolId]['total_obc'] += 0;
}
if($user->caste_id== 3){
$filtered[$schoolId]['total_sc'] += $user->total_male + $user->total_female;
}else{
$filtered[$schoolId]['total_sc'] += 0;
}
if($user->caste_id== 4){
$filtered[$schoolId]['total_st'] += $user->total_male + $user->total_female;
}else{
$filtered[$schoolId]['total_st'] += 0;
}
if($user->caste_id== 5){
$filtered[$schoolId]['total_oth'] += $user->total_male + $user->total_female;
}else{
$filtered[$schoolId]['total_oth'] += 0;
}
$filtered[$schoolId]['total_male'] += $user->total_male;
$filtered[$schoolId]['total_female'] += $user->total_female;
}
return response()->json($filtered);
}
public static function student_information_view($id)
{
$currentYear = auth()->user()->session_id;
$course = Course::all();
$caste = Caste::all();
$religion = Religion::all();
$gender = StudentGender::where('student_id',$id)->get();
// dd($gender);
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$student = User::where($role)
->where('users.id',$id)
->where('session_masters.session_id',$currentYear)
->join('student_info', 'users.id', '=', 'student_info.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'student_info.session')
->join('course_masters', 'course_masters.course_id', '=', 'student_info.course_id')
->join('class_masters', 'class_masters.class_id', '=', 'student_info.class_id')
->join('student_gender', 'student_info.student_id', '=', 'student_gender.student_id')
->select('student_info.school_id', 'student_info.session', 'student_info.student_id', 'student_info.course_id', 'student_info.class_id', 'student_info.created_at', 'student_info.updated_at','course_masters.course_name','class_masters.class_name','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from','session_masters.session_to')
->selectRaw('SUM(IFNULL(student_gender.male_value, 0)) AS total_male')
->selectRaw('SUM(IFNULL(student_gender.female_value, 0)) AS total_female')
->groupBy('student_info.school_id', 'student_info.session', 'student_info.student_id', 'student_info.course_id', 'student_info.class_id', 'student_info.created_at', 'student_info.updated_at','course_masters.course_name','class_masters.class_name','class_masters.class_name','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from','session_masters.session_to')
->first();
// dd($student);
return view('admin.school-data.basic-information.view_student_information',
[
'title' => 'Sarvhitkari Punjab - View Student Information',
'keyword'=> '',
'description'=> '',
'student' =>$student,
'caste' => $caste,
'religion' => $religion,
'gender' => $gender,
'course' => $course,
]);
}
public function getStudentClasses(Request $request)
{
$courseId = $request->input('course_id');
$classes = ClassMaster::where('courseId', $courseId)->pluck('class_name', 'class_id');
return response()->json(['classes' => $classes]);
}
public function getStudentRecords(Request $request)
{
$year = auth()->user()->session_id;
$schoolId = $request->input('school_id');
$courseId = $request->input('course_id');
$classId = $request->input('class_id');
// Use the retrieved data to query the database
$studentRecords = Student::where([
'student_info.session'=> $year,
'student_info.course_id'=> $courseId,
'student_info.class_id'=> $classId,
'student_info.school_id'=> $schoolId
])
->join('course_masters', 'student_info.course_id', '=', 'course_masters.course_id')
->join('class_masters', 'student_info.class_id', '=', 'class_masters.class_id')
->join('student_gender', 'student_info.student_id', '=', 'student_gender.student_id')
->select('student_info.*', 'student_gender.caste_id','student_gender.religion_id','student_gender.male_value', 'student_gender.female_value', 'course_masters.course_name', 'class_masters.class_name')
->get();
// dd($studentRecords);
return response()->json($studentRecords);
}
// social concerns
public static function social_concerns_all()
{
$session = Session::all();
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$socialConcerns = User::where($role)
->where('session_masters.session_id',$currentYear)
->join('social_concerns', 'users.id', '=', 'social_concerns.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'social_concerns.session')
->select('social_concerns.*','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('users.id', 'ASC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagSchool = session('vibhagSchool');
$zilaSchool = session('zilaSchool');
$sankulSchool = session('sankulSchool');
$schoolSchool = session('schoolSchool');
// Check and apply filters based on session values
if (!is_null($vibhagSchool)) {
$socialConcerns = $socialConcerns->whereIn('users.vibhag_id', $vibhagSchool);
}
if (!is_null($zilaSchool)) {
$socialConcerns = $socialConcerns->whereIn('users.zila_id', $zilaSchool);
}
if (!is_null($sankulSchool)) {
$socialConcerns = $socialConcerns->whereIn('users.sankul_id', $sankulSchool);
}
if (!is_null($schoolSchool)) {
$socialConcerns = $socialConcerns->whereIn('social_concerns.school_id', $schoolSchool);
}
$socialConcerns = $socialConcerns->get();
return view('admin.school-data.basic-information.social_concerns',
[
'title' => 'Sarvhitkari Punjab - Social Concerns',
'keyword'=> '',
'description'=> '',
'session' => $session,
'socialConcerns'=>$socialConcerns,
'vibhagAll' => $vibhagAll
]);
}
public function filter_social_concerns(Request $request)
{
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
$currentYear = auth()->user()->session_id;
session(['vibhagSchool' => $vibhagIds]);
session(['zilaSchool' => $zilaIds]);
session(['sankulSchool' => $sankulIds]);
session(['schoolSchool' => $schoolIds]);
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$users = User::where($role)
->where('session_masters.session_id',$currentYear)
->join('social_concerns', 'users.id', '=', 'social_concerns.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'social_concerns.session')
->select('social_concerns.*', 'users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('users.id', 'ASC');
if (!empty($vibhagIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
$users->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$users->whereIn('users.vibhag_id', $vibhagIds);
$users->whereIn('users.zila_id', $zilaIds);
$users->whereIn('users.sankul_id', $sankulIds);
$users->whereIn('users.id', $schoolIds);
}
$filtered = $users->get();
return response()->json($filtered);
}
public static function social_concerns_view($id)
{
$currentYear = auth()->user()->session_id;
$role=[
'users.user_role' => 'employee',
'users.user_status' => 'Approved'
];
$socialConcerns = User::where($role)
->where('social_concerns.social_id',$id)
->where('session_masters.session_id',$currentYear)
->join('social_concerns', 'users.id', '=', 'social_concerns.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'social_concerns.session')
->select('social_concerns.*','users.id','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from','session_masters.session_to')
->first();
// dd($socialConcerns);
return view('admin.school-data.basic-information.view_social_concerns',
[
'title' => 'Sarvhitkari Punjab - View Social Concerns',
'keyword'=> '',
'description'=> '',
'socialConcerns' =>$socialConcerns,
]);
}
public static function shiksha_dan_all()
{
$session = Session::all();
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$shiksha_dan = ShikshaDan::where('session_masters.session_id',$currentYear)
->leftJoin('users', 'users.id', '=', 'shiksha_dan.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('session_masters', 'session_masters.session_id', '=', 'shiksha_dan.session')
->leftJoin('course_masters', 'course_masters.course_id', '=', 'shiksha_dan.course_id')
->leftJoin('class_masters', 'class_masters.class_id', '=', 'shiksha_dan.class_id')
->leftJoin('course_masters as sibling_course', 'sibling_course.course_id', '=', 'shiksha_dan.sibling_course')
->leftJoin('class_masters as sibling_class', 'sibling_class.class_id', '=', 'shiksha_dan.sibling_class')
->leftJoin('caste_masters', 'caste_masters.caste_id', '=', 'shiksha_dan.category')
->select('shiksha_dan.*','class_masters.class_name','course_masters.course_name','users.name','users.principal_name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','caste_masters.caste_name','sibling_class.class_name as siblingClass','sibling_course.course_name as siblingCourse')
// ->distinct('shiksha_dan.school_id') // Ensure unique school_id
->orderBy('shiksha_dan.shiksha_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagDan = session('vibhagDan');
$zilaDan = session('zilaDan');
$sankulDan = session('sankulDan');
$schoolDan = session('schoolDan');
// Check and apply filters based on session values
if (!empty($vibhagDan)) {
$shiksha_dan = $shiksha_dan->whereIn('users.vibhag_id', $vibhagDan);
}
if (!empty($zilaDan)) {
$shiksha_dan = $shiksha_dan->whereIn('users.zila_id', $zilaDan);
}
if (!empty($sankulDan)) {
$shiksha_dan = $shiksha_dan->whereIn('users.sankul_id', $sankulDan);
}
if (!empty($schoolDan)) {
$shiksha_dan = $shiksha_dan->whereIn('shiksha_dan.school_id', $schoolDan);
}
$shiksha_dan = $shiksha_dan->get();
return view('admin.school-data.basic-information.shiksha_dan',
[
'title' => 'Sarvhitkari Punjab - Shiksha Dan-Student List',
'keyword'=> '',
'description'=> '',
'session' => $session,
'shiksha_dan' => $shiksha_dan,
'vibhagAll' => $vibhagAll
]);
}
public function filterShikshaDan(Request $request)
{
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
$currentYear = auth()->user()->session_id;
session(['vibhagDan' => $vibhagIds]);
session(['zilaDan' => $zilaIds]);
session(['sankulDan' => $sankulIds]);
session(['schoolDan' => $schoolIds]);
$shiksha_dan = ShikshaDan::where('session_masters.session_id',$currentYear)
->leftJoin('users', 'users.id', '=', 'shiksha_dan.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('session_masters', 'session_masters.session_id', '=', 'shiksha_dan.session')
->leftJoin('course_masters', 'course_masters.course_id', '=', 'shiksha_dan.course_id')
->leftJoin('class_masters', 'class_masters.class_id', '=', 'shiksha_dan.class_id')
->leftJoin('course_masters as sibling_course', 'sibling_course.course_id', '=', 'shiksha_dan.sibling_course')
->leftJoin('class_masters as sibling_class', 'sibling_class.class_id', '=', 'shiksha_dan.sibling_class')
->leftJoin('caste_masters', 'caste_masters.caste_id', '=', 'shiksha_dan.category')
->select('shiksha_dan.*','class_masters.class_name','course_masters.course_name','users.name','users.principal_name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','caste_masters.caste_name','sibling_class.class_name as siblingClass','sibling_course.course_name as siblingCourse')
->orderBy('shiksha_dan.shiksha_id', 'DESC');
if (!empty($vibhagIds)) {
$shiksha_dan->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$shiksha_dan->whereIn('users.vibhag_id', $vibhagIds);
$shiksha_dan->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$shiksha_dan->whereIn('users.vibhag_id', $vibhagIds);
$shiksha_dan->whereIn('users.zila_id', $zilaIds);
$shiksha_dan->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$shiksha_dan->whereIn('users.vibhag_id', $vibhagIds);
$shiksha_dan->whereIn('users.zila_id', $zilaIds);
$shiksha_dan->whereIn('users.sankul_id', $sankulIds);
$shiksha_dan->whereIn('users.id', $schoolIds);
}
$filtered = $shiksha_dan->get();
return response()->json($filtered);
}
public static function shiksha_dan_view($id)
{
$shiksha_dan = ShikshaDan::where('shiksha_dan.shiksha_id',$id)
->select('shiksha_dan.*')
->first();
$shiksha_school_id=$shiksha_dan['school_id'];
//die();
$shiksha_dan_all = ShikshaDan::where('shiksha_dan.school_id',$shiksha_school_id)
->leftJoin('users', 'users.id', '=', 'shiksha_dan.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('session_masters', 'session_masters.session_id', '=', 'shiksha_dan.session')
->leftJoin('course_masters', 'course_masters.course_id', '=', 'shiksha_dan.course_id')
->leftJoin('class_masters', 'class_masters.class_id', '=', 'shiksha_dan.class_id')
->leftJoin('course_masters as sibling_course', 'sibling_course.course_id', '=', 'shiksha_dan.sibling_course')
->leftJoin('class_masters as sibling_class', 'sibling_class.class_id', '=', 'shiksha_dan.sibling_class')
->leftJoin('caste_masters', 'caste_masters.caste_id', '=', 'shiksha_dan.category')
->select('shiksha_dan.*','class_masters.class_name','course_masters.course_name','users.name','users.principal_name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','caste_masters.caste_name','sibling_class.class_name as siblingClass','sibling_course.course_name as siblingCourse','session_masters.session_from','session_masters.session_to')
->get();
return view('admin.school-data.basic-information.view_shiksha_dan',
[
'title' => 'Sarvhitkari Punjab - View Student-Shiksha Dan',
'keyword'=> '',
'description'=> '',
'shiksha_dan_all' =>$shiksha_dan_all,
]);
}
// PHYSICAL RESOURCES
public static function physical_resources_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$getAll = PhysicalResources::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'physical_resources.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'physical_resources.phy_session')
->select('physical_resources.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('physical_resources.phy_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagPhysical = session('vibhagPhysical');
$zilaPhysical = session('zilaPhysical');
$sankulPhysical = session('sankulPhysical');
$schoolPhysical = session('schoolPhysical');
// Check and apply filters based on session values
if (!empty($vibhagPhysical)) {
$getAll = $getAll->whereIn('users.vibhag_id', $vibhagPhysical);
}
if (!empty($zilaPhysical)) {
$getAll = $getAll->whereIn('users.zila_id', $zilaPhysical);
}
if (!empty($sankulPhysical)) {
$getAll = $getAll->whereIn('users.sankul_id', $sankulPhysical);
}
if (!empty($schoolPhysical)) {
$getAll = $getAll->whereIn('physical_resources.school_id', $schoolPhysical);
}
$getAll = $getAll->get();
return view('admin.school-data.physical-resources.all',
[
'title' => 'Sarvhitkari Punjab - Physical Resources',
'keyword'=> '',
'description'=> '',
'getAll' => $getAll,
'vibhagAll' => $vibhagAll
]);
}
public function filterPhysicalResources(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagPhysical' => $vibhagIds]);
session(['zilaPhysical' => $zilaIds]);
session(['sankulPhysical' => $sankulIds]);
session(['schoolPhysical' => $schoolIds]);
$query = PhysicalResources::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'physical_resources.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'physical_resources.phy_session')
->select('physical_resources.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('physical_resources.phy_id', 'DESC');
if (!empty($vibhagIds)) {
$query->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$query->whereIn('users.vibhag_id', $vibhagIds);
$query->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$query->whereIn('users.vibhag_id', $vibhagIds);
$query->whereIn('users.zila_id', $zilaIds);
$query->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$query->whereIn('users.vibhag_id', $vibhagIds);
$query->whereIn('users.zila_id', $zilaIds);
$query->whereIn('users.sankul_id', $sankulIds);
$query->whereIn('users.id', $schoolIds);
}
$filtered = $query->get();
return response()->json($filtered);
}
public static function physical_resources_view($id)
{
$editPhysical = PhysicalResources::where('physical_resources.phy_id', $id)
->join('users', 'users.id', '=', 'physical_resources.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'physical_resources.phy_session')
->select('physical_resources.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from','session_masters.session_to')
->orderBy('physical_resources.phy_id', 'DESC')
->first();
return view('admin.school-data.physical-resources.view',
[
'title' => 'Sarvhitkari Punjab - View Physical Resources',
'keyword'=> '',
'description'=> '',
'editPhysical' => $editPhysical,
]);
}
// Financial Details
public static function financial_details_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$FinancialDetails = FinancialDetails::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'financial_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'financial_details.session')
->select('financial_details.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('financial_details.fin_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagFinancial = session('vibhagFinancial');
$zilaFinancial = session('zilaFinancial');
$sankulFinancial = session('sankulFinancial');
$schoolFinancial = session('schoolFinancial');
// Check and apply filters based on session values
if (!empty($vibhagFinancial)) {
$FinancialDetails = $FinancialDetails->whereIn('users.vibhag_id', $vibhagFinancial);
}
if (!empty($zilaFinancial)) {
$FinancialDetails = $FinancialDetails->whereIn('users.zila_id', $zilaFinancial);
}
if (!empty($sankulFinancial)) {
$FinancialDetails = $FinancialDetails->whereIn('users.sankul_id', $sankulFinancial);
}
if (!empty($schoolFinancial)) {
$FinancialDetails = $FinancialDetails->whereIn('financial_details.school_id', $schoolFinancial);
}
$FinancialDetails = $FinancialDetails->get();
return view('admin.school-data.financial-details.all',
[
'title' => 'Sarvhitkari Punjab - Financial Details',
'keyword'=> '',
'description'=> '',
'FinancialDetails' => $FinancialDetails,
'vibhagAll' => $vibhagAll
]);
}
public function filterFinancialDetails(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagFinancial' => $vibhagIds]);
session(['zilaFinancial' => $zilaIds]);
session(['sankulFinancial' => $sankulIds]);
session(['schoolFinancial' => $schoolIds]);
$details = FinancialDetails::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'financial_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'financial_details.session')
->select('financial_details.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('financial_details.fin_id', 'DESC');
if (!empty($vibhagIds)) {
$details->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$details->whereIn('users.vibhag_id', $vibhagIds);
$details->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$details->whereIn('users.vibhag_id', $vibhagIds);
$details->whereIn('users.zila_id', $zilaIds);
$details->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$details->whereIn('users.vibhag_id', $vibhagIds);
$details->whereIn('users.zila_id', $zilaIds);
$details->whereIn('users.sankul_id', $sankulIds);
$details->whereIn('users.id', $schoolIds);
}
$filtered = $details->get();
return response()->json($filtered);
}
public static function financial_details_view($id)
{
$details = FinancialDetails::where('financial_details.fin_id', $id)
->join('users', 'users.id', '=', 'financial_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'financial_details.session')
->select('financial_details.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('financial_details.fin_id', 'DESC')
->first();
return view('admin.school-data.financial-details.view',
[
'title' => 'Sarvhitkari Punjab - View Financial Details',
'keyword'=> '',
'description'=> '',
'details' => $details,
]);
}
// academic-achievements
public static function academic_achievements_all()
{
$grade = Grade::all();
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$academic = Academic::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'academic_results.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('course_masters', 'academic_results.course_id', '=', 'course_masters.course_id')
->leftJoin('class_masters', 'academic_results.class_id', '=', 'class_masters.class_id')
->join('session_masters', 'session_masters.session_id', '=', 'academic_results.session')
->select('academic_results.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','course_masters.course_name','class_masters.class_name')
->orderBy('academic_results.academic_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagAcademic = session('vibhagAcademic');
$zilaAcademic = session('zilaAcademic');
$sankulAcademic = session('sankulAcademic');
$schoolAcademic = session('schoolAcademic');
// Check and apply filters based on session values
if (!empty($vibhagAcademic)) {
$academic = $academic->whereIn('users.vibhag_id', $vibhagAcademic);
}
if (!empty($zilaAcademic)) {
$academic = $academic->whereIn('users.zila_id', $zilaAcademic);
}
if (!empty($sankulAcademic)) {
$academic = $academic->whereIn('users.sankul_id', $sankulAcademic);
}
if (!empty($schoolAcademic)) {
$academic = $academic->whereIn('academic_results.school_id', $schoolAcademic);
}
$academic = $academic->get();
return view('admin.school-data.academic-achievements.all',
[
'title' => 'Sarvhitkari Punjab - Academic Achievements',
'keyword'=> '',
'description'=> '',
'academic' => $academic,
'vibhagAll' => $vibhagAll,
'grade' => $grade
]);
}
public function filterAcademicAchievements(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagAcademic' => $vibhagIds]);
session(['zilaAcademic' => $zilaIds]);
session(['sankulAcademic' => $sankulIds]);
session(['schoolAcademic' => $schoolIds]);
$academic = Academic::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'academic_results.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('course_masters', 'academic_results.course_id', '=', 'course_masters.course_id')
->leftJoin('class_masters', 'academic_results.class_id', '=', 'class_masters.class_id')
->join('session_masters', 'session_masters.session_id', '=', 'academic_results.session')
->select('academic_results.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','course_masters.course_name','class_masters.class_name')
->orderBy('academic_results.academic_id', 'DESC');
if (!empty($vibhagIds)) {
$academic->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$academic->whereIn('users.vibhag_id', $vibhagIds);
$academic->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$academic->whereIn('users.vibhag_id', $vibhagIds);
$academic->whereIn('users.zila_id', $zilaIds);
$academic->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$academic->whereIn('users.vibhag_id', $vibhagIds);
$academic->whereIn('users.zila_id', $zilaIds);
$academic->whereIn('users.sankul_id', $sankulIds);
$academic->whereIn('users.id', $schoolIds);
}
$filtered = $academic->get();
return response()->json($filtered);
}
public static function academic_achievements_view($id)
{
$grade = Grade::all();
$academic = Academic::where('academic_results.academic_id', $id)
->join('users', 'users.id', '=', 'academic_results.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('course_masters', 'academic_results.course_id', '=', 'course_masters.course_id')
->leftJoin('class_masters', 'academic_results.class_id', '=', 'class_masters.class_id')
->join('session_masters', 'session_masters.session_id', '=', 'academic_results.session')
->select('academic_results.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','course_masters.course_name','class_masters.class_name')
->orderBy('academic_results.academic_id', 'DESC')
->first();
return view('admin.school-data.academic-achievements.view',
[
'title' => 'Sarvhitkari Punjab - View Academic Achievements',
'keyword'=> '',
'description'=> '',
'academic' => $academic,
'grade' => $grade
]);
}
//compiled list
public static function compiled_list_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id', auth()->user()->vibhag_id)->first()];
} else {
$vibhagAll = Vibhag::all();
}
$compiledList = CompiledList::where('compiled_result.session', $currentYear)
->join('users', 'users.id', '=', 'compiled_result.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'compiled_result.session')
->select(
'compiled_result.*',
'session_masters.session_from',
'session_masters.session_to',
'users.name as school_name',
'vibhag_masters.vibhag_name',
'zila_masters.zila_name',
'sankul_masters.sankul_name'
)
->orderBy('compiled_result.c_id', 'ASC');
// Apply role-based filtering (vibhag, zila, sankul) as before
$compiledList = $compiledList->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
return $query->where('users.vibhag_id', Auth::user()->vibhag_id);
} elseif ($userRole === 'zila') {
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id);
} elseif ($userRole === 'sankul') {
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', Auth::user()->sankul_id);
}
return $query;
});
// Apply additional session-based filtering if necessary
if (!empty(session('vibhagCompiled'))) {
$compiledList->whereIn('users.vibhag_id', session('vibhagCompiled'));
}
if (!empty(session('zilaCompiled'))) {
$compiledList->whereIn('users.zila_id', session('zilaCompiled'));
}
if (!empty(session('sankulCompiled'))) {
$compiledList->whereIn('users.sankul_id', session('sankulCompiled'));
}
if (!empty(session('schoolCompiled'))) {
$compiledList->whereIn('compiled_result.school_id', session('schoolCompiled'));
}
// Fetch the compiled list data
$compiledList = $compiledList->get();
// Now, we group the data by school_id and class_board
$groupedData = $compiledList->groupBy('school_id')->map(function ($schoolData) {
$schoolInfo = $schoolData->first(); // Get the common school info (name, vibhag, zila, etc.)
return [
'session' => auth()->user()->session_id,
'school_id' => $schoolInfo->school_id,
'school_name' => $schoolInfo->school_name,
'vibhag_name' => $schoolInfo->vibhag_name,
'zila_name' => $schoolInfo->zila_name,
'sankul_name' => $schoolInfo->sankul_name,
'class_boards' => $schoolData->groupBy('class_board')->map(function ($classData) {
return $classData->map(function ($item) {
return [
'total_students' => $item->total_students,
'st_appear' => $item->st_appear,
'pass' => $item->pass,
'compartment' => $item->compartment,
'fail' => $item->fail,
'high_percent' => $item->high_percent,
'90_99' => $item->{'90_99'},
'80_89' => $item->{'80_89'},
'70_79' => $item->{'70_79'},
'60_69' => $item->{'60_69'},
'50_59' => $item->{'50_59'},
'below_50' => $item->{'below_50'},
'fail_cpt' => $item->fail_cpt,
'scored_high' => $item->scored_high,
];
});
}),
];
});
// dd($groupedData); // Debugging, to check the grouped data
return view('admin.school-data.compiled-list.all', [
'title' => 'Sarvhitkari Punjab - Compiled List of class 5th, 8th, X or XII',
'keyword' => '',
'description' => '',
'compiledList' => $groupedData,
'vibhagAll' => $vibhagAll,
]);
}
public function filterCompiledList(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagCompiled' => $vibhagIds]);
session(['zilaCompiled' => $zilaIds]);
session(['sankulCompiled' => $sankulIds]);
session(['schoolCompiled' => $schoolIds]);
$compiledList = CompiledList::where('compiled_result.session', $currentYear)
->join('users', 'users.id', '=', 'compiled_result.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'compiled_result.session')
->select(
'compiled_result.*',
'session_masters.session_from',
'session_masters.session_to',
'users.name as school_name',
'vibhag_masters.vibhag_name',
'zila_masters.zila_name',
'sankul_masters.sankul_name'
)
->orderBy('compiled_result.c_id', 'ASC');
if (!empty($vibhagIds)) {
$compiledList->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$compiledList->whereIn('users.vibhag_id', $vibhagIds);
$compiledList->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$compiledList->whereIn('users.vibhag_id', $vibhagIds);
$compiledList->whereIn('users.zila_id', $zilaIds);
$compiledList->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$compiledList->whereIn('users.vibhag_id', $vibhagIds);
$compiledList->whereIn('users.zila_id', $zilaIds);
$compiledList->whereIn('users.sankul_id', $sankulIds);
$compiledList->whereIn('users.id', $schoolIds);
}
$compiledList = $compiledList->get();
$filtered = $compiledList->groupBy('school_id')->map(function ($schoolData) {
$schoolInfo = $schoolData->first();
return [
'session' => auth()->user()->session_id,
'school_id' => $schoolInfo->school_id,
'school_name' => $schoolInfo->school_name,
'vibhag_name' => $schoolInfo->vibhag_name,
'zila_name' => $schoolInfo->zila_name,
'sankul_name' => $schoolInfo->sankul_name,
'class_boards' => $schoolData->groupBy('class_board')->map(function ($classData) {
return $classData->map(function ($item) {
return [
'total_students' => $item->total_students,
'st_appear' => $item->st_appear,
'pass' => $item->pass,
'compartment' => $item->compartment,
'fail' => $item->fail,
'high_percent' => $item->high_percent,
'90_99' => $item->{'90_99'},
'80_89' => $item->{'80_89'},
'70_79' => $item->{'70_79'},
'60_69' => $item->{'60_69'},
'50_59' => $item->{'50_59'},
'below_50' => $item->{'below_50'},
'fail_cpt' => $item->fail_cpt,
'scored_high' => $item->scored_high,
];
});
}),
];
});
// dd($filtered);
return response()->json($filtered);
}
//kshetra performa
public static function kshetra_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id', auth()->user()->vibhag_id)->first()];
} else {
$vibhagAll = Vibhag::all();
}
$kshetra_performa = KshetraPerforma::where('kshetra_performa.session', $currentYear)
->join('users', 'users.id', '=', 'kshetra_performa.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'kshetra_performa.session')
->select(
'kshetra_performa.*',
'session_masters.session_from',
'session_masters.session_to',
'users.name as school_name',
'vibhag_masters.vibhag_name',
'zila_masters.zila_name',
'sankul_masters.sankul_name'
)
->orderBy('kshetra_performa.ks_id', 'ASC');
// Apply role-based filtering (vibhag, zila, sankul) as before
$kshetra_performa = $kshetra_performa->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
return $query->where('users.vibhag_id', Auth::user()->vibhag_id);
} elseif ($userRole === 'zila') {
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id);
} elseif ($userRole === 'sankul') {
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', Auth::user()->sankul_id);
}
return $query;
});
// Apply additional session-based filtering if necessary
if (!empty(session('vibhagKshetra'))) {
$kshetra_performa->whereIn('users.vibhag_id', session('vibhagKshetra'));
}
if (!empty(session('zilaKshetra'))) {
$kshetra_performa->whereIn('users.zila_id', session('zilaKshetra'));
}
if (!empty(session('sankulKshetra'))) {
$kshetra_performa->whereIn('users.sankul_id', session('sankulKshetra'));
}
if (!empty(session('schoolKshetra'))) {
$kshetra_performa->whereIn('kshetra_performa.school_id', session('schoolKshetra'));
}
// Fetch the compiled list data
$kshetra_performa = $kshetra_performa->get();
// Now, we group the data by school_id and class_board
$groupedData = $kshetra_performa->groupBy('school_id')->map(function ($schoolData) {
$schoolInfo = $schoolData->first(); // Get the common school info (name, vibhag, zila, etc.)
return [
'session' => auth()->user()->session_id,
'school_id' => $schoolInfo->school_id,
'school_name' => $schoolInfo->school_name,
'vibhag_name' => $schoolInfo->vibhag_name,
'zila_name' => $schoolInfo->zila_name,
'sankul_name' => $schoolInfo->sankul_name,
'class_boards' => $schoolData->groupBy('class')->map(function ($classData) {
return $classData->map(function ($item) {
return [
'board' => $item->board,
'st_appear' => $item->st_appear,
'above_90' => $item->{'above_90'},
'75_90' => $item->{'75_90'},
'60_75' => $item->{'60_75'},
'45_60' => $item->{'45_60'},
'pass_45' => $item->{'pass_45'},
'below_pass' => $item->{'below_pass'},
];
});
}),
];
});
// dd($groupedData); // Debugging, to check the grouped data
return view('admin.school-data.kshetra-performa.all', [
'title' => 'Sarvhitkari Punjab - CBSE & PSEB (Kshetra Performa)',
'keyword' => '',
'description' => '',
'kshetra_performa' => $groupedData,
'vibhagAll' => $vibhagAll,
]);
}
public function filterKshetra(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagKshetra' => $vibhagIds]);
session(['zilaKshetra' => $zilaIds]);
session(['sankulKshetra' => $sankulIds]);
session(['schoolKshetra' => $schoolIds]);
$kshetra_performa = KshetraPerforma::where('kshetra_performa.session', $currentYear)
->join('users', 'users.id', '=', 'kshetra_performa.school_id')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'kshetra_performa.session')
->select(
'kshetra_performa.*',
'session_masters.session_from',
'session_masters.session_to',
'users.name as school_name',
'vibhag_masters.vibhag_name',
'zila_masters.zila_name',
'sankul_masters.sankul_name'
)
->orderBy('kshetra_performa.ks_id', 'ASC');
if (!empty($vibhagIds)) {
$kshetra_performa->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$kshetra_performa->whereIn('users.vibhag_id', $vibhagIds);
$kshetra_performa->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$kshetra_performa->whereIn('users.vibhag_id', $vibhagIds);
$kshetra_performa->whereIn('users.zila_id', $zilaIds);
$kshetra_performa->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$kshetra_performa->whereIn('users.vibhag_id', $vibhagIds);
$kshetra_performa->whereIn('users.zila_id', $zilaIds);
$kshetra_performa->whereIn('users.sankul_id', $sankulIds);
$kshetra_performa->whereIn('users.id', $schoolIds);
}
$kshetra_performa = $kshetra_performa->get();
$filtered = $kshetra_performa->groupBy('school_id')->map(function ($schoolData) {
$schoolInfo = $schoolData->first();
return [
'session' => auth()->user()->session_id,
'school_id' => $schoolInfo->school_id,
'school_name' => $schoolInfo->school_name,
'vibhag_name' => $schoolInfo->vibhag_name,
'zila_name' => $schoolInfo->zila_name,
'sankul_name' => $schoolInfo->sankul_name,
'class_boards' => $schoolData->groupBy('class')->map(function ($classData) {
return $classData->map(function ($item) {
return [
'board' => $item->board,
'st_appear' => $item->st_appear,
'above_90' => $item->{'above_90'},
'75_90' => $item->{'75_90'},
'60_75' => $item->{'60_75'},
'45_60' => $item->{'45_60'},
'pass_45' => $item->{'pass_45'},
'below_pass' => $item->{'below_pass'},
];
});
}),
];
});
// dd($filtered);
return response()->json($filtered);
}
//income-expense details
public static function income_expense_details_all()
{
$vibhagId = auth()->user()->vibhag_id;
$currentYear = auth()->user()->session_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$income = IncomeExpenseDetails::where('income_expense_details.session', $currentYear)
->join('users', 'users.id', '=', 'income_expense_details.school_id')
->join('session_masters', 'session_masters.session_id', '=', 'income_expense_details.session')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->select('income_expense_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('income_expense_details.inc_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagIncomeDetails = session('vibhagIncomeDetails');
$zilaIncomeDetails = session('zilaIncomeDetails');
$sankulIncomeDetails = session('sankulIncomeDetails');
$schoolIncomeDetails = session('schoolIncomeDetails');
// Check and apply filters based on session values
if (!empty($vibhagIncomeDetails)) {
$income = $income->whereIn('users.vibhag_id', $vibhagIncomeDetails);
}
if (!empty($zilaIncomeDetails)) {
$income = $income->whereIn('users.zila_id', $zilaIncomeDetails);
}
if (!empty($sankulIncomeDetails)) {
$income = $income->whereIn('users.sankul_id', $sankulIncomeDetails);
}
if (!empty($schoolIncomeDetails)) {
$income = $income->whereIn('income_expense_details.school_id', $schoolIncomeDetails);
}
$income = $income->get();
return view('admin.school-data.income-expense-details.all',
[
'title' => 'Sarvhitkari Punjab - Income & Expense Details',
'keyword'=> '',
'description'=> '',
'income' => $income,
'vibhagAll' => $vibhagAll
]);
}
public function filterIncomeExpenseDetails(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagIncomeDetails' => $vibhagIds]);
session(['zilaIncomeDetails' => $zilaIds]);
session(['sankulIncomeDetails' => $sankulIds]);
session(['schoolIncomeDetails' => $schoolIds]);
$income = IncomeExpenseDetails::where('income_expense_details.session', $currentYear)
->join('users', 'users.id', '=', 'income_expense_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'income_expense_details.session')
->select('income_expense_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('income_expense_details.inc_id', 'DESC');
if (!empty($vibhagIds)) {
$income->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$income->whereIn('users.vibhag_id', $vibhagIds);
$income->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$income->whereIn('users.vibhag_id', $vibhagIds);
$income->whereIn('users.zila_id', $zilaIds);
$income->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$income->whereIn('users.vibhag_id', $vibhagIds);
$income->whereIn('users.zila_id', $zilaIds);
$income->whereIn('users.sankul_id', $sankulIds);
$income->whereIn('users.id', $schoolIds);
}
$filtered = $income->get();
return response()->json($filtered);
}
public static function income_expense_details_view($id)
{
$currentYear = auth()->user()->session_id;
$incomeExp = incomeExpense::all();
$income = IncomeExpenseDetails::where('income_expense_details.inc_id',$id)
->join('users', 'users.id', '=', 'income_expense_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'income_expense_details.session')
->select('income_expense_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('income_expense_details.inc_id', 'DESC')
->first();
return view('admin.school-data.income-expense-details.view',
[
'title' => 'Sarvhitkari Punjab - View Income & Expense Details',
'keyword'=> '',
'description'=> '',
'income' => $income,
'incomeExp'=> $incomeExp
]);
}
public static function income_expense_details_edit($id)
{
$currentYear = auth()->user()->session_id;
$incomeExp = incomeExpense::all();
$income = IncomeExpenseDetails::where('income_expense_details.inc_id',$id)
->join('users', 'users.id', '=', 'income_expense_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'income_expense_details.session')
->select('income_expense_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('income_expense_details.inc_id', 'DESC')
->first();
return view('admin.school-data.income-expense-details.edit',
[
'title' => 'Sarvhitkari Punjab - Edit Income & Expense Details',
'keyword'=> '',
'description'=> '',
'income' => $income,
'incomeExp'=> $incomeExp
]);
}
public function income_expense_details_update($id, Request $request)
{
$data = $request->all();
$rules = [];
$messages = [];
$validator = Validator::make($data, $rules, $messages);
if ($validator->fails()) {
$errors=$validator->errors();
$response_arr = array(
"status" => false,
"message" => "<div id='message'><div class='alert alert-danger'>Oops! Something went wrong. Please try again later!</div></div>",
"errors" => $errors,
"data" => []
);
}else{
$incomeArray = [];
foreach ($request->input('present_inc') as $incId => $presentValue) {
$incomeArray[] = [
'id' => $incId,
'present' => $presentValue ?? '',
'previous' => $request->input('previous_inc')[$incId] ?? '',
];
}
$jsonIncomeData = json_encode($incomeArray);
$expenseArray = [];
foreach ($request->input('present_exp') as $expId => $presentValueExp) {
$expenseArray[] = [
'id' => $expId,
'present' => $presentValueExp ?? '',
'previous' => $request->input('previous_exp')[$expId] ?? '',
];
}
$jsonExpenseData = json_encode($expenseArray);
// dd($jsonExpenseData);
$income = IncomeExpenseDetails::find($id);
if ($income) {
// Update the record with new data
$income->inc_details = $jsonIncomeData;
$income->exp_details = $jsonExpenseData;
$income->save();
$response_arr = array(
"status" => true,
"message" => "<div id='message'><div class='alert alert-success'>Income & Expense details updated successfully.</div></div>",
);
} else {
$response_arr = array(
"status" => false,
"message" => "<div id='message'><div class='alert alert-danger'>Record not found.</div></div>",
);
}
}
return response()->json($response_arr);
}
public function income_expense_details_delete($id)
{
IncomeExpenseDetails::find($id)->delete();
return redirect()->route('admin.school.income-expense-details')->with('message','Income & expense details deleted successfully');
}
// income-details
public static function income_details_all()
{
$vibhagId = auth()->user()->vibhag_id;
$currentYear = auth()->user()->session_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$income = IncomeDetails::where('income_details.session', $currentYear)
->join('users', 'users.id', '=', 'income_details.school_id')
->join('session_masters', 'session_masters.session_id', '=', 'income_details.session')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->select('income_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('income_details.inc_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagIncomeDetails = session('vibhagIncomeDetails');
$zilaIncomeDetails = session('zilaIncomeDetails');
$sankulIncomeDetails = session('sankulIncomeDetails');
$schoolIncomeDetails = session('schoolIncomeDetails');
// Check and apply filters based on session values
if (!empty($vibhagIncomeDetails)) {
$income = $income->whereIn('users.vibhag_id', $vibhagIncomeDetails);
}
if (!empty($zilaIncomeDetails)) {
$income = $income->whereIn('users.zila_id', $zilaIncomeDetails);
}
if (!empty($sankulIncomeDetails)) {
$income = $income->whereIn('users.sankul_id', $sankulIncomeDetails);
}
if (!empty($schoolIncomeDetails)) {
$income = $income->whereIn('income_details.school_id', $schoolIncomeDetails);
}
$income = $income->get();
return view('admin.school-data.income-details.all',
[
'title' => 'Sarvhitkari Punjab - Income Details',
'keyword'=> '',
'description'=> '',
'income' => $income,
'vibhagAll' => $vibhagAll
]);
}
public function filterIncomeDetails(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagIncomeDetails' => $vibhagIds]);
session(['zilaIncomeDetails' => $zilaIds]);
session(['sankulIncomeDetails' => $sankulIds]);
session(['schoolIncomeDetails' => $schoolIds]);
$income = IncomeDetails::where('income_details.session', $currentYear)
->join('users', 'users.id', '=', 'income_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'income_details.session')
->select('income_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('income_details.inc_id', 'DESC');
if (!empty($vibhagIds)) {
$income->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$income->whereIn('users.vibhag_id', $vibhagIds);
$income->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$income->whereIn('users.vibhag_id', $vibhagIds);
$income->whereIn('users.zila_id', $zilaIds);
$income->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$income->whereIn('users.vibhag_id', $vibhagIds);
$income->whereIn('users.zila_id', $zilaIds);
$income->whereIn('users.sankul_id', $sankulIds);
$income->whereIn('users.id', $schoolIds);
}
$filtered = $income->get();
return response()->json($filtered);
}
public static function income_details_view($id)
{
$currentYear = auth()->user()->session_id;
$incomeExp = incomeExpense::where('type','Income')->get();
$income = IncomeDetails::where('income_details.inc_id',$id)
->join('users', 'users.id', '=', 'income_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'income_details.session')
->select('income_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('income_details.inc_id', 'DESC')
->first();
return view('admin.school-data.income-details.view',
[
'title' => 'Sarvhitkari Punjab - View Income Details',
'keyword'=> '',
'description'=> '',
'income' => $income,
'incomeExp'=> $incomeExp
]);
}
// expense-details
public static function expense_details_all()
{
$vibhagId = auth()->user()->vibhag_id;
$currentYear = auth()->user()->session_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$expense = ExpenseDetails::where('expense_details.session', $currentYear)
->join('users', 'users.id', '=', 'expense_details.school_id')
->join('session_masters', 'session_masters.session_id', '=', 'expense_details.session')
->join('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->join('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->join('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->select('expense_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('expense_details.exp_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagExpenseDetails = session('vibhagExpenseDetails');
$zilaExpenseDetails = session('zilaExpenseDetails');
$sankulExpenseDetails = session('sankulExpenseDetails');
$schoolExpenseDetails = session('schoolExpenseDetails');
// Check and apply filters based on session values
if (!empty($vibhagExpenseDetails)) {
$expense = $expense->whereIn('users.vibhag_id', $vibhagExpenseDetails);
}
if (!empty($zilaExpenseDetails)) {
$expense = $expense->whereIn('users.zila_id', $zilaExpenseDetails);
}
if (!empty($sankulExpenseDetails)) {
$expense = $expense->whereIn('users.sankul_id', $sankulExpenseDetails);
}
if (!empty($schoolExpenseDetails)) {
$expense = $expense->whereIn('expense_details.school_id', $schoolExpenseDetails);
}
$expense = $expense->get();
return view('admin.school-data.expense-details.all',
[
'title' => 'Sarvhitkari Punjab - Expense Details',
'keyword'=> '',
'description'=> '',
'expense' => $expense,
'vibhagAll' => $vibhagAll
]);
}
public function filterExpenseDetails(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagExpenseDetails' => $vibhagIds]);
session(['zilaExpenseDetails' => $zilaIds]);
session(['sankulExpenseDetails' => $sankulIds]);
session(['schoolExpenseDetails' => $schoolIds]);
$expense = ExpenseDetails::where('expense_details.session', $currentYear)
->join('users', 'users.id', '=', 'expense_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'expense_details.session')
->select('expense_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('expense_details.exp_id', 'DESC');
if (!empty($vibhagIds)) {
$expense->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$expense->whereIn('users.vibhag_id', $vibhagIds);
$expense->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$expense->whereIn('users.vibhag_id', $vibhagIds);
$expense->whereIn('users.zila_id', $zilaIds);
$expense->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$expense->whereIn('users.vibhag_id', $vibhagIds);
$expense->whereIn('users.zila_id', $zilaIds);
$expense->whereIn('users.sankul_id', $sankulIds);
$expense->whereIn('users.id', $schoolIds);
}
$filtered = $expense->get();
return response()->json($filtered);
}
public static function expense_details_view($id)
{
$currentYear = auth()->user()->session_id;
$incomeExp = incomeExpense::where('type','Expense')->get();
$expense = ExpenseDetails::where('expense_details.exp_id',$id)
->join('users', 'users.id', '=', 'expense_details.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'expense_details.session')
->select('expense_details.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','session_masters.session_from', 'session_masters.session_to')
->orderBy('expense_details.exp_id', 'DESC')
->first();
return view('admin.school-data.expense-details.view',
[
'title' => 'Sarvhitkari Punjab - View Expense Details',
'keyword'=> '',
'description'=> '',
'expense' => $expense,
'incomeExp'=> $incomeExp
]);
}
// datewise-student-attendance
public static function student_attendance_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$studentAttendance = StudentAttendance::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'student_attendance.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'student_attendance.session')
->select('student_attendance.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('student_attendance.date', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagStudentAttendance = session('vibhagStudentAttendance');
$zilaStudentAttendance = session('zilaStudentAttendance');
$sankulStudentAttendance = session('sankulStudentAttendance');
$schoolStudentAttendance = session('schoolStudentAttendance');
// Check and apply filters based on session values
if (!empty($vibhagStudentAttendance)) {
$studentAttendance = $studentAttendance->whereIn('users.vibhag_id', $vibhagStudentAttendance);
}
if (!empty($zilaStudentAttendance)) {
$studentAttendance = $studentAttendance->whereIn('users.zila_id', $zilaStudentAttendance);
}
if (!empty($sankulStudentAttendance)) {
$studentAttendance = $studentAttendance->whereIn('users.sankul_id', $sankulStudentAttendance);
}
if (!empty($schoolStudentAttendance)) {
$studentAttendance = $studentAttendance->whereIn('student_attendance.school_id', $schoolStudentAttendance);
}
$studentAttendance = $studentAttendance->get();
return view('admin.school-data.student-attendance.all',
[
'title' => 'Sarvhitkari Punjab - Datewise Student Attendance',
'keyword'=> '',
'description'=> '',
'studentAttendance' => $studentAttendance,
'vibhagAll' => $vibhagAll
]);
}
public function filterStudentAttendance(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagStudentAttendance' => $vibhagIds]);
session(['zilaStudentAttendance' => $zilaIds]);
session(['sankulStudentAttendance' => $sankulIds]);
session(['schoolStudentAttendance' => $schoolIds]);
$attend =StudentAttendance::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'student_attendance.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'student_attendance.session')
->select('student_attendance.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('student_attendance.date', 'DESC');
if (!empty($vibhagIds)) {
$attend->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$attend->whereIn('users.vibhag_id', $vibhagIds);
$attend->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$attend->whereIn('users.vibhag_id', $vibhagIds);
$attend->whereIn('users.zila_id', $zilaIds);
$attend->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$attend->whereIn('users.vibhag_id', $vibhagIds);
$attend->whereIn('users.zila_id', $zilaIds);
$attend->whereIn('users.sankul_id', $sankulIds);
$attend->whereIn('users.id', $schoolIds);
}
$filtered = $attend->get();
return response()->json($filtered);
}
public static function student_attendance_view($id)
{
$attend = StudentAttendance::where('student_attendance.stud_id', $id)
->join('users', 'users.id', '=', 'student_attendance.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('course_masters', 'course_masters.course_id', '=', 'users.level')
->leftJoin('class_masters', 'class_masters.class_id', '=', 'users.level_class')
->join('session_masters', 'session_masters.session_id', '=', 'student_attendance.session')
->select('student_attendance.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','users.id','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','users.level','users.level_class')
->orderBy('student_attendance.date', 'DESC')
->first();
$courseIds = $attend->level;
$explode = explode(',', $courseIds);
$course = Course::whereIn('course_id', $explode)->get();
$classIds = $attend->level_class;
$explode2 = explode(',', $classIds);
$class = ClassMaster::whereIn('class_id', $explode2)->leftJoin('course_masters','course_masters.course_id','=','class_masters.courseId')->get();
$studentInfo = Student::with(['studentGender' => function ($query) {
$query->select('student_id', 'male_value', 'female_value');
}])
->where('school_id',$attend->id)
->where('session',auth()->user()->session_id)
->get();
$studentInfoCount = [];
foreach ($studentInfo as $student) {
$studentId = $student->student_id;
$courseId = $student->course_id;
$classId = $student->class_id;
$maleCount = $student->studentGender->where('student_id', $studentId)->sum('male_value');
$femaleCount = $student->studentGender->where('student_id', $studentId)->sum('female_value');
if (!isset($studentInfoCount[$courseId])) {
$studentInfoCount[$courseId] = [];
}
if (!isset($studentInfoCount[$courseId][$classId])) {
$studentInfoCount[$courseId][$classId] = [
'maleCount' => 0,
'femaleCount' => 0,
];
}
$studentInfoCount[$courseId][$classId]['maleCount'] += $maleCount;
$studentInfoCount[$courseId][$classId]['femaleCount'] += $femaleCount;
}
return view('admin.school-data.student-attendance.view',
[
'title' => 'Sarvhitkari Punjab - View Datewise Student Attendance',
'keyword'=> '',
'description'=> '',
'attend' => $attend,
'course' => $course,
'class' => $class,
'studentInfoCount'=> $studentInfoCount
]);
}
// datewise-staff-attendance
public static function staff_attendance_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$staffAttendance = StaffAttendance::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'staff_attendance.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'staff_attendance.session')
->select('staff_attendance.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('staff_attendance.date', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagStaffAttendance = session('vibhagStaffAttendance');
$zilaStaffAttendance = session('zilaStaffAttendance');
$sankulStaffAttendance = session('sankulStaffAttendance');
$schoolStaffAttendance = session('schoolStaffAttendance');
// Check and apply filters based on session values
if (!empty($vibhagStaffAttendance)) {
$staffAttendance = $staffAttendance->whereIn('users.vibhag_id', $vibhagStaffAttendance);
}
if (!empty($zilaStaffAttendance)) {
$staffAttendance = $staffAttendance->whereIn('users.zila_id', $zilaStaffAttendance);
}
if (!empty($sankulStaffAttendance)) {
$staffAttendance = $staffAttendance->whereIn('users.sankul_id', $sankulStaffAttendance);
}
if (!empty($schoolStaffAttendance)) {
$staffAttendance = $staffAttendance->whereIn('staff_attendance.school_id', $schoolFinancial);
}
$staffAttendance = $staffAttendance->get();
return view('admin.school-data.staff-attendance.all',
[
'title' => 'Sarvhitkari Punjab - Datewise Staff Attendance',
'keyword'=> '',
'description'=> '',
'staffAttendance' => $staffAttendance,
'vibhagAll' => $vibhagAll
]);
}
public function filterStaffAttendance(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagStaffAttendance' => $vibhagIds]);
session(['zilaStaffAttendance' => $zilaIds]);
session(['sankulStaffAttendance' => $sankulIds]);
session(['schoolStaffAttendance' => $schoolIds]);
$attend =StaffAttendance::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'staff_attendance.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'staff_attendance.session')
->select('staff_attendance.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('staff_attendance.date', 'DESC');
if (!empty($vibhagIds)) {
$attend->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$attend->whereIn('users.vibhag_id', $vibhagIds);
$attend->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$attend->whereIn('users.vibhag_id', $vibhagIds);
$attend->whereIn('users.zila_id', $zilaIds);
$attend->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$attend->whereIn('users.vibhag_id', $vibhagIds);
$attend->whereIn('users.zila_id', $zilaIds);
$attend->whereIn('users.sankul_id', $sankulIds);
$attend->whereIn('users.id', $schoolIds);
}
$filtered = $attend->get();
return response()->json($filtered);
}
public static function staff_attendance_view($id)
{
$attend = StaffAttendance::where('staff_attendance.staf_id', $id)
->join('users', 'users.id', '=', 'staff_attendance.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'staff_attendance.session')
->select('staff_attendance.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','users.id','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name',)
->first();
// dd($attend);
$staffInfo = Staff::join('staff_gender','staff_gender.staff_id','=','staff.staff_id')
->where('school_id',$attend->id)
->where('staff_session',auth()->user()->session_id)
// ->selectRaw('SUM(IFNULL(staff_gender.male_value, 0)) AS total_male')
// ->selectRaw('SUM(IFNULL(staff_gender.female_value, 0)) AS total_female')
->get();
// dd($staffInfo);
$maleTeachingTotal = 0;
$femaleTeachingTotal = 0;
$maleNonTeachingTotal = 0;
$femaleNonTeachingTotal = 0;
foreach ($staffInfo as $staff) {
// Check if the staff member is teaching or non-teaching
if ($staff->staff_choose == 'teaching') {
$maleTeachingTotal += $staff->male_value ?? 0;
$femaleTeachingTotal += $staff->female_value ?? 0;
} else {
$maleNonTeachingTotal += $staff->male_value ?? 0;
$femaleNonTeachingTotal += $staff->female_value ?? 0;
}
}
$teachingTotal = $maleTeachingTotal + $femaleTeachingTotal;
$nonTeachingTotal = $maleNonTeachingTotal + $femaleNonTeachingTotal;
// dd($nonTeachingTotal);
return view('admin.school-data.staff-attendance.view',
[
'title' => 'Sarvhitkari Punjab - View Datewise Staff Attendance',
'keyword'=> '',
'description'=> '',
'attend' => $attend,
'staffInfo'=> $staffInfo,
'teachingTotal' => $teachingTotal,
'nonTeachingTotal' => $nonTeachingTotal,
]);
}
// sports & other achievements
public static function vidya_bharti_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$vidya = Sports::where('session_masters.session_id', $currentYear)
->where('sport_masters.sport_url','vidya_bharti')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->leftJoin('event_masters', 'event_masters.event_id', '=', 'sport_masters.event_name')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','event_masters.event_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vargVidyaBharti = session('vargVidyaBharti');
$vibhagVidyaBharti = session('vibhagVidyaBharti');
$zilaVidyaBharti = session('zilaVidyaBharti');
$sankulVidyaBharti = session('sankulVidyaBharti');
$schoolVidyaBharti = session('schoolVidyaBharti');
// Check and apply filters based on session values
if (!empty($vargVidyaBharti)) {
$vidya = $vidya->whereIn('sport_masters.varg', $vargVidyaBharti);
}
if (!empty($vibhagVidyaBharti)) {
$vidya = $vidya->whereIn('users.vibhag_id', $vibhagVidyaBharti);
}
if (!empty($zilaVidyaBharti)) {
$vidya = $vidya->whereIn('users.zila_id', $zilaVidyaBharti);
}
if (!empty($sankulVidyaBharti)) {
$vidya = $vidya->whereIn('users.sankul_id', $sankulVidyaBharti);
}
if (!empty($schoolVidyaBharti)) {
$vidya = $vidya->whereIn('sport_masters.school_id', $schoolVidyaBharti);
}
$vidya = $vidya->get();
return view('admin.school-data.vidya-bharti.all',
[
'title' => 'Sarvhitkari Punjab - Vidya Bharti',
'keyword'=> '',
'description'=> '',
'vidya' => $vidya,
'vibhagAll' => $vibhagAll
]);
}
public function filterVidyaBharti(Request $request)
{
$currentYear = auth()->user()->session_id;
$vargIds = $request->input('varg');
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vargVidyaBharti' => $vargIds]);
session(['vibhagVidyaBharti' => $vibhagIds]);
session(['zilaVidyaBharti' => $zilaIds]);
session(['sankulVidyaBharti' => $sankulIds]);
session(['schoolVidyaBharti' => $schoolIds]);
$vidya = Sports::where('session_masters.session_id', $currentYear)
->where('sport_masters.sport_url','vidya_bharti')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->leftJoin('event_masters', 'event_masters.event_id', '=', 'sport_masters.event_name')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','event_masters.event_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC');
if (!empty($vargIds)) {
$vidya->whereIn('sport_masters.varg', $vargIds);
}
if (!empty($vibhagIds)) {
$vidya->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$vidya->whereIn('users.vibhag_id', $vibhagIds);
$vidya->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$vidya->whereIn('users.vibhag_id', $vibhagIds);
$vidya->whereIn('users.zila_id', $zilaIds);
$vidya->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$vidya->whereIn('users.vibhag_id', $vibhagIds);
$vidya->whereIn('users.zila_id', $zilaIds);
$vidya->whereIn('users.sankul_id', $sankulIds);
$vidya->whereIn('users.id', $schoolIds);
}
$filtered = $vidya->get();
return response()->json($filtered);
}
public static function vidya_bharti_view($id)
{
$vidya = Sports::where('sport_masters.sport_id', $id)
->where('sport_masters.sport_url','vidya_bharti')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->leftJoin('event_masters', 'event_masters.event_id', '=', 'sport_masters.event_name')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','event_masters.event_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC')
->first();
return view('admin.school-data.vidya-bharti.view',
[
'title' => 'Sarvhitkari Punjab - View Vidya Bharti',
'keyword'=> '',
'description'=> '',
'vidya' => $vidya,
]);
}
public static function board_open_games_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$boardGames = Sports::where('session_masters.session_id', $currentYear)
->where('sport_masters.sport_url','board_open_games')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->leftJoin('event_masters', 'event_masters.event_id', '=', 'sport_masters.event_name')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','event_masters.event_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vargBoardOpenGames = session('vargBoardOpenGames');
$vibhagBoardOpenGames = session('vibhagBoardOpenGames');
$zilaBoardOpenGames = session('zilaBoardOpenGames');
$sankulBoardOpenGames = session('sankulBoardOpenGames');
$schoolBoardOpenGames = session('schoolBoardOpenGames');
// Check and apply filters based on session values
if (!empty($vargBoardOpenGames)) {
$boardGames = $boardGames->whereIn('sport_masters.varg', $vargBoardOpenGames);
}
if (!empty($vibhagBoardOpenGames)) {
$boardGames = $boardGames->whereIn('users.vibhag_id', $vibhagBoardOpenGames);
}
if (!empty($zilaBoardOpenGames)) {
$boardGames = $boardGames->whereIn('users.zila_id', $zilaBoardOpenGames);
}
if (!empty($sankulBoardOpenGames)) {
$boardGames = $boardGames->whereIn('users.sankul_id', $sankulBoardOpenGames);
}
if (!empty($schoolBoardOpenGames)) {
$boardGames = $boardGames->whereIn('sport_masters.school_id', $schoolBoardOpenGames);
}
$boardGames = $boardGames->get();
return view('admin.school-data.board-open-games.all',
[
'title' => 'Sarvhitkari Punjab - Board Open Games',
'keyword'=> '',
'description'=> '',
'boardGames' => $boardGames,
'vibhagAll' => $vibhagAll
]);
}
public function filterBoardOpenGames(Request $request)
{
$currentYear = auth()->user()->session_id;
$vargIds = $request->input('varg');
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vargBoardOpenGames' => $vargIds]);
session(['vibhagBoardOpenGames' => $vibhagIds]);
session(['zilaBoardOpenGames' => $zilaIds]);
session(['sankulBoardOpenGames' => $sankulIds]);
session(['schoolBoardOpenGames' => $schoolIds]);
$boardGames = Sports::where('session_masters.session_id', $currentYear)
->where('sport_masters.sport_url','board_open_games')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->leftJoin('event_masters', 'event_masters.event_id', '=', 'sport_masters.event_name')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','event_masters.event_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC');
if (!empty($vargIds)) {
$boardGames->whereIn('sport_masters.varg', $vargIds);
}
if (!empty($vibhagIds)) {
$boardGames->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$boardGames->whereIn('users.vibhag_id', $vibhagIds);
$boardGames->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$boardGames->whereIn('users.vibhag_id', $vibhagIds);
$boardGames->whereIn('users.zila_id', $zilaIds);
$boardGames->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$boardGames->whereIn('users.vibhag_id', $vibhagIds);
$boardGames->whereIn('users.zila_id', $zilaIds);
$boardGames->whereIn('users.sankul_id', $sankulIds);
$boardGames->whereIn('users.id', $schoolIds);
}
$filtered = $boardGames->get();
return response()->json($filtered);
}
public static function board_open_games_view($id)
{
$boardGames = Sports::where('sport_masters.sport_id', $id)
->where('sport_masters.sport_url','board_open_games')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->leftJoin('event_masters', 'event_masters.event_id', '=', 'sport_masters.event_name')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','event_masters.event_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC')
->first();
return view('admin.school-data.board-open-games.view',
[
'title' => 'Sarvhitkari Punjab - View Board Open Games',
'keyword'=> '',
'description'=> '',
'boardGames' => $boardGames,
]);
}
public static function vedic_maths_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$vedic = Sports::where('session_masters.session_id', $currentYear)
->where('sport_masters.sport_url','vedic_maths')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('vedic_masters', 'vedic_masters.vedic_id', '=', 'sport_masters.event_name')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','vedic_masters.vedic_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vargVedicMaths = session('vargVedicMaths');
$vibhagVedicMaths = session('vibhagVedicMaths');
$zilaVedicMaths = session('zilaVedicMaths');
$sankulVedicMaths = session('sankulVedicMaths');
$schoolVedicMaths = session('schoolVedicMaths');
// Check and apply filters based on session values
if (!empty($vargVedicMaths)) {
$vedic = $vedic->whereIn('sport_masters.varg', $vargVedicMaths);
}
if (!empty($vibhagVedicMaths)) {
$vedic = $vedic->whereIn('users.vibhag_id', $vibhagVedicMaths);
}
if (!empty($zilaVedicMaths)) {
$vedic = $vedic->whereIn('users.zila_id', $zilaVedicMaths);
}
if (!empty($sankulVedicMaths)) {
$vedic = $vedic->whereIn('users.sankul_id', $sankulVedicMaths);
}
if (!empty($schoolVedicMaths)) {
$vedic = $vedic->whereIn('sport_masters.school_id', $schoolVedicMaths);
}
$vedic = $vedic->get();
return view('admin.school-data.vedic-maths.all',
[
'title' => 'Sarvhitkari Punjab - Science/Vedic Maths',
'keyword'=> '',
'description'=> '',
'vedic' => $vedic,
'vibhagAll' => $vibhagAll
]);
}
public function filterVedicMaths(Request $request)
{
$currentYear = auth()->user()->session_id;
$vargIds = $request->input('varg');
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vargVedicMaths' => $vargIds]);
session(['vibhagVedicMaths' => $vibhagIds]);
session(['zilaVedicMaths' => $zilaIds]);
session(['sankulVedicMaths' => $sankulIds]);
session(['schoolVedicMaths' => $schoolIds]);
$vedic = Sports::where('session_masters.session_id', $currentYear)
->where('sport_masters.sport_url','vedic_maths')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('vedic_masters', 'vedic_masters.vedic_id', '=', 'sport_masters.event_name')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','vedic_masters.vedic_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC');
if (!empty($vargIds)) {
$vedic->whereIn('sport_masters.varg', $vargIds);
}
if (!empty($vibhagIds)) {
$vedic->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$vedic->whereIn('users.vibhag_id', $vibhagIds);
$vedic->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$vedic->whereIn('users.vibhag_id', $vibhagIds);
$vedic->whereIn('users.zila_id', $zilaIds);
$vedic->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$vedic->whereIn('users.vibhag_id', $vibhagIds);
$vedic->whereIn('users.zila_id', $zilaIds);
$vedic->whereIn('users.sankul_id', $sankulIds);
$vedic->whereIn('users.id', $schoolIds);
}
$filtered = $vedic->get();
return response()->json($filtered);
}
public static function vedic_maths_view($id)
{
$vedic = Sports::where('sport_masters.sport_id', $id)
->where('sport_masters.sport_url','vedic_maths')
->join('users', 'users.id', '=', 'sport_masters.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->leftJoin('vedic_masters', 'vedic_masters.vedic_id', '=', 'sport_masters.event_name')
->join('session_masters', 'session_masters.session_id', '=', 'sport_masters.session')
->select('sport_masters.*','session_masters.session_from','session_masters.session_to','vedic_masters.vedic_name','users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('sport_masters.sport_id','DESC')
->first();
return view('admin.school-data.vedic-maths.view',
[
'title' => 'Sarvhitkari Punjab - View Science/Vedic Maths',
'keyword'=> '',
'description'=> '',
'vedic' => $vedic,
]);
}
// appreciation-awards
public static function appreciation_awards_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$awards = Awards::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'awards.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'awards.session')
->select('awards.*','session_masters.session_from','session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('awards.award_id','DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagAppreciationAwards = session('vibhagAppreciationAwards');
$zilaAppreciationAwards = session('zilaAppreciationAwards');
$sankulAppreciationAwards = session('sankulAppreciationAwards');
$schoolAppreciationAwards = session('schoolAppreciationAwards');
// Check and apply filters based on session values
if (!empty($vibhagAppreciationAwards)) {
$awards = $awards->whereIn('users.vibhag_id', $vibhagAppreciationAwards);
}
if (!empty($zilaAppreciationAwards)) {
$awards = $awards->whereIn('users.zila_id', $zilaAppreciationAwards);
}
if (!empty($sankulAppreciationAwards)) {
$awards = $awards->whereIn('users.sankul_id', $sankulAppreciationAwards);
}
if (!empty($schoolAppreciationAwards)) {
$awards = $awards->whereIn('awards.school_id', $schoolAppreciationAwards);
}
$awards = $awards->get();
return view('admin.school-data.appreciation-awards.all',
[
'title' => 'Sarvhitkari Punjab - Appreciation & Awards',
'keyword'=> '',
'description'=> '',
'awards' => $awards,
'vibhagAll' => $vibhagAll
]);
}
public function filterAppreciationAwards(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagAppreciationAwards' => $vibhagIds]);
session(['zilaAppreciationAwards' => $zilaIds]);
session(['sankulAppreciationAwards' => $sankulIds]);
session(['schoolAppreciationAwards' => $schoolIds]);
$awards = Awards::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'awards.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'awards.session')
->select('awards.*','session_masters.session_from','session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('awards.award_id','DESC');
if (!empty($vibhagIds)) {
$awards->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$awards->whereIn('users.vibhag_id', $vibhagIds);
$awards->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$awards->whereIn('users.vibhag_id', $vibhagIds);
$awards->whereIn('users.zila_id', $zilaIds);
$awards->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$awards->whereIn('users.vibhag_id', $vibhagIds);
$awards->whereIn('users.zila_id', $zilaIds);
$awards->whereIn('users.sankul_id', $sankulIds);
$awards->whereIn('users.id', $schoolIds);
}
$filtered = $awards->get();
return response()->json($filtered);
}
public static function appreciation_awards_view($id)
{
$awards = Awards::where('awards.award_id', $id)
->join('users', 'users.id', '=', 'awards.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'awards.session')
->select('awards.*','session_masters.session_from','session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('awards.award_id','DESC')
->first();
return view('admin.school-data.appreciation-awards.view',
[
'title' => 'Sarvhitkari Punjab - View Appreciation & Awards',
'keyword'=> '',
'description'=> '',
'awards' => $awards,
]);
}
// certificates-documents
public static function certificates_documents_all()
{
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$certificates = Certificate::join('users', 'users.id', '=', 'certificates.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->select('certificates.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('certificates.certificate_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagCertificatesDocuments = session('vibhagCertificatesDocuments');
$zilaCertificatesDocuments = session('zilaCertificatesDocuments');
$sankulCertificatesDocuments = session('sankulCertificatesDocuments');
$schoolCertificatesDocuments = session('schoolCertificatesDocuments');
// Check and apply filters based on session values
if (!empty($vibhagCertificatesDocuments)) {
$certificates = $certificates->whereIn('users.vibhag_id', $vibhagCertificatesDocuments);
}
if (!empty($zilaCertificatesDocuments)) {
$certificates = $certificates->whereIn('users.zila_id', $zilaCertificatesDocuments);
}
if (!empty($sankulCertificatesDocuments)) {
$certificates = $certificates->whereIn('users.sankul_id', $sankulCertificatesDocuments);
}
if (!empty($schoolCertificatesDocuments)) {
$certificates = $certificates->whereIn('certificates.school_id', $schoolCertificatesDocuments);
}
$certificates = $certificates->get();
return view('admin.school-data.certificates-documents.all',
[
'title' => 'Sarvhitkari Punjab - Certificates and Documents',
'keyword'=> '',
'description'=> '',
'certificates' => $certificates,
'vibhagAll' => $vibhagAll
]);
}
public function filterCertificatesDocuments(Request $request)
{
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagCertificatesDocuments' => $vibhagIds]);
session(['zilaCertificatesDocuments' => $zilaIds]);
session(['sankulCertificatesDocuments' => $sankulIds]);
session(['schoolCertificatesDocuments' => $schoolIds]);
$certificate = Certificate::join('users', 'users.id', '=', 'certificates.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->select('certificates.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('certificates.certificate_id', 'DESC');
if (!empty($vibhagIds)) {
$certificate->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$certificate->whereIn('users.vibhag_id', $vibhagIds);
$certificate->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$certificate->whereIn('users.vibhag_id', $vibhagIds);
$certificate->whereIn('users.zila_id', $zilaIds);
$certificate->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$certificate->whereIn('users.vibhag_id', $vibhagIds);
$certificate->whereIn('users.zila_id', $zilaIds);
$certificate->whereIn('users.sankul_id', $sankulIds);
$certificate->whereIn('users.id', $schoolIds);
}
$filtered = $certificate->get();
return response()->json($filtered);
}
public static function certificates_documents_view($id)
{
$certificates = Certificate::where('certificates.certificate_id',$id)
->join('users', 'users.id', '=', 'certificates.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->select('certificates.*', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('certificates.certificate_id', 'DESC')
->first();
return view('admin.school-data.certificates-documents.view',
[
'title' => 'Sarvhitkari Punjab - View Certificates and Documents',
'keyword'=> '',
'description'=> '',
'certificates' => $certificates,
]);
}
// workshops organized by school
public static function workshops_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$workshop = Workshop::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'workshop.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'workshop.session')
->select('workshop.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','users.principal_name')
->orderBy('workshop.workshop_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagWorkshops = session('vibhagWorkshops');
$zilaWorkshops = session('zilaWorkshops');
$sankulWorkshops = session('sankulWorkshops');
$schoolWorkshops = session('schoolWorkshops');
// Check and apply filters based on session values
if (!empty($vibhagWorkshops)) {
$workshop = $workshop->whereIn('users.vibhag_id', $vibhagWorkshops);
}
if (!empty($zilaWorkshops)) {
$workshop = $workshop->whereIn('users.zila_id', $zilaWorkshops);
}
if (!empty($sankulWorkshops)) {
$workshop = $workshop->whereIn('users.sankul_id', $sankulWorkshops);
}
if (!empty($schoolWorkshops)) {
$workshop = $workshop->whereIn('workshop.school_id', $schoolWorkshops);
}
$workshop = $workshop->get();
return view('admin.school-data.workshops.all',
[
'title' => 'Sarvhitkari Punjab - Workshops Organized by School',
'keyword'=> '',
'description'=> '',
'workshop' => $workshop,
'vibhagAll' => $vibhagAll
]);
}
public function filterWorkshops(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagWorkshops' => $vibhagIds]);
session(['zilaWorkshops' => $zilaIds]);
session(['sankulWorkshops' => $sankulIds]);
session(['schoolWorkshops' => $schoolIds]);
$workshop = Workshop::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'workshop.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'workshop.session')
->select('workshop.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','users.principal_name')
->orderBy('workshop.workshop_id', 'DESC');
if (!empty($vibhagIds)) {
$workshop->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$workshop->whereIn('users.vibhag_id', $vibhagIds);
$workshop->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$workshop->whereIn('users.vibhag_id', $vibhagIds);
$workshop->whereIn('users.zila_id', $zilaIds);
$workshop->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$workshop->whereIn('users.vibhag_id', $vibhagIds);
$workshop->whereIn('users.zila_id', $zilaIds);
$workshop->whereIn('users.sankul_id', $sankulIds);
$workshop->whereIn('users.id', $schoolIds);
}
$filtered = $workshop->get();
return response()->json($filtered);
}
public static function workshops_view($id)
{
$workshops = Workshop::where('workshop.workshop_id', $id)
->join('users', 'users.id', '=', 'workshop.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'workshop.session')
->select('workshop.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name','users.principal_name')
->orderBy('workshop.workshop_id', 'DESC')
->first();
return view('admin.school-data.workshops.view',
[
'title' => 'Sarvhitkari Punjab - View Workshops Organized by School',
'keyword'=> '',
'description'=> '',
'workshops' => $workshops,
]);
}
// school-committee
public static function school_committee_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$committee = SchoolCommittee::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'school_committee.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_committee.session')
->select('school_committee.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_committee.committee_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagSchoolCommittee = session('vibhagSchoolCommittee');
$zilaSchoolCommittee = session('zilaSchoolCommittee');
$sankulSchoolCommittee = session('sankulSchoolCommittee');
$schoolSchoolCommittee = session('schoolSchoolCommittee');
// Check and apply filters based on session values
if (!empty($vibhagSchoolCommittee)) {
$committee = $committee->whereIn('users.vibhag_id', $vibhagSchoolCommittee);
}
if (!empty($zilaSchoolCommittee)) {
$committee = $committee->whereIn('users.zila_id', $zilaSchoolCommittee);
}
if (!empty($sankulSchoolCommittee)) {
$committee = $committee->whereIn('users.sankul_id', $sankulSchoolCommittee);
}
if (!empty($schoolSchoolCommittee)) {
$committee = $committee->whereIn('school_committee.school_id', $schoolSchoolCommittee);
}
$committee = $committee->get();
return view('admin.school-data.school-committee.all',
[
'title' => 'Sarvhitkari Punjab - School Committee Information',
'keyword'=> '',
'description'=> '',
'committee' => $committee,
'vibhagAll' => $vibhagAll
]);
}
public function filterSchoolCommittee(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagSchoolCommittee' => $vibhagIds]);
session(['zilaSchoolCommittee' => $zilaIds]);
session(['sankulSchoolCommittee' => $sankulIds]);
session(['schoolSchoolCommittee' => $schoolIds]);
$commit = SchoolCommittee::where('session_masters.session_id', $currentYear)
->join('users', 'users.id', '=', 'school_committee.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_committee.session')
->select('school_committee.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_committee.committee_id', 'DESC');
if (!empty($vibhagIds)) {
$commit->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$commit->whereIn('users.vibhag_id', $vibhagIds);
$commit->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$commit->whereIn('users.vibhag_id', $vibhagIds);
$commit->whereIn('users.zila_id', $zilaIds);
$commit->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$commit->whereIn('users.vibhag_id', $vibhagIds);
$commit->whereIn('users.zila_id', $zilaIds);
$commit->whereIn('users.sankul_id', $sankulIds);
$commit->whereIn('users.id', $schoolIds);
}
$filtered = $commit->get();
return response()->json($filtered);
}
public static function school_committee_view($id)
{
$commit = SchoolCommittee::where('school_committee.committee_id', $id)
->join('users', 'users.id', '=', 'school_committee.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_committee.session')
->select('school_committee.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_committee.committee_id', 'DESC')
->first();
return view('admin.school-data.school-committee.view',
[
'title' => 'Sarvhitkari Punjab - View School Committee Information',
'keyword'=> '',
'description'=> '',
'commit' => $commit,
]);
}
// SCHOOL VISION GOAL/TARGET
// FIRST YEAR
public static function first_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$firstYear = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','first')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagFirstYear = session('vibhagFirstYear');
$zilaFirstYear = session('zilaFirstYear');
$sankulFirstYear = session('sankulFirstYear');
$schoolFirstYear = session('schoolFirstYear');
// Check and apply filters based on session values
if (!empty($vibhagFirstYear)) {
$firstYear = $firstYear->whereIn('users.vibhag_id', $vibhagFirstYear);
}
if (!empty($zilaFirstYear)) {
$firstYear = $firstYear->whereIn('users.zila_id', $zilaFirstYear);
}
if (!empty($sankulFirstYear)) {
$firstYear = $firstYear->whereIn('users.sankul_id', $sankulFirstYear);
}
if (!empty($schoolFirstYear)) {
$firstYear = $firstYear->whereIn('school_vision.school_id', $schoolFirstYear);
}
$firstYear = $firstYear->get();
return view('admin.school-data.vision-school.first',
[
'title' => 'Sarvhitkari Punjab - School Vision - First Year',
'keyword'=> '',
'description'=> '',
'firstYear' => $firstYear,
'vibhagAll' => $vibhagAll
]);
}
public function filterFirstYear(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagFirstYear' => $vibhagIds]);
session(['zilaFirstYear' => $zilaIds]);
session(['sankulFirstYear' => $sankulIds]);
session(['schoolFirstYear' => $schoolIds]);
$first = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','first')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC');
if (!empty($vibhagIds)) {
$first->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$first->whereIn('users.vibhag_id', $vibhagIds);
$first->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$first->whereIn('users.vibhag_id', $vibhagIds);
$first->whereIn('users.zila_id', $zilaIds);
$first->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$first->whereIn('users.vibhag_id', $vibhagIds);
$first->whereIn('users.zila_id', $zilaIds);
$first->whereIn('users.sankul_id', $sankulIds);
$first->whereIn('users.id', $schoolIds);
}
$filtered = $first->get();
return response()->json($filtered);
}
public static function first_view($id)
{
$firstYear = Vision::where('school_vision.vision_id', $id)
->where('school_vision.choose_year','first')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->first();
return view('admin.school-data.vision-school.first_view',
[
'title' => 'Sarvhitkari Punjab - View School Vision - First Year',
'keyword'=> '',
'description'=> '',
'firstYear' => $firstYear,
]);
}
// SECOND YEAR
public static function second_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$secondYear = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','second')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagSecondYear = session('vibhagSecondYear');
$zilaSecondYear = session('zilaSecondYear');
$sankulSecondYear = session('sankulSecondYear');
$schoolSecondYear = session('schoolSecondYear');
// Check and apply filters based on session values
if (!empty($vibhagSecondYear)) {
$secondYear = $secondYear->whereIn('users.vibhag_id', $vibhagSecondYear);
}
if (!empty($zilaSecondYear)) {
$secondYear = $secondYear->whereIn('users.zila_id', $zilaSecondYear);
}
if (!empty($sankulSecondYear)) {
$secondYear = $secondYear->whereIn('users.sankul_id', $sankulSecondYear);
}
if (!empty($schoolSecondYear)) {
$secondYear = $secondYear->whereIn('school_vision.school_id', $schoolSecondYear);
}
$secondYear = $secondYear->get();
return view('admin.school-data.vision-school.second',
[
'title' => 'Sarvhitkari Punjab - School Vision - Second Year',
'keyword'=> '',
'description'=> '',
'secondYear' => $secondYear,
'vibhagAll' => $vibhagAll
]);
}
public function filterSecondYear(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagSecondYear' => $vibhagIds]);
session(['zilaSecondYear' => $zilaIds]);
session(['sankulSecondYear' => $sankulIds]);
session(['schoolSecondYear' => $schoolIds]);
$second = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','second')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC');
if (!empty($vibhagIds)) {
$second->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$second->whereIn('users.vibhag_id', $vibhagIds);
$second->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$second->whereIn('users.vibhag_id', $vibhagIds);
$second->whereIn('users.zila_id', $zilaIds);
$second->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$second->whereIn('users.vibhag_id', $vibhagIds);
$second->whereIn('users.zila_id', $zilaIds);
$second->whereIn('users.sankul_id', $sankulIds);
$second->whereIn('users.id', $schoolIds);
}
$filtered = $second->get();
return response()->json($filtered);
}
public static function second_view($id)
{
$secondYear = Vision::where('school_vision.vision_id', $id)
->where('school_vision.choose_year','second')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->first();
return view('admin.school-data.vision-school.second_view',
[
'title' => 'Sarvhitkari Punjab - View School Vision - Second Year',
'keyword'=> '',
'description'=> '',
'secondYear' => $secondYear,
]);
}
// THIRD YEAR
public static function third_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$thirdYear = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','third')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagThirdYear = session('vibhagThirdYear');
$zilaThirdYear = session('zilaThirdYear');
$sankulThirdYear = session('sankulThirdYear');
$schoolThirdYear = session('schoolThirdYear');
// Check and apply filters based on session values
if (!empty($vibhagThirdYear)) {
$thirdYear = $thirdYear->whereIn('users.vibhag_id', $vibhagThirdYear);
}
if (!empty($zilaThirdYear)) {
$thirdYear = $thirdYear->whereIn('users.zila_id', $zilaThirdYear);
}
if (!empty($sankulThirdYear)) {
$thirdYear = $thirdYear->whereIn('users.sankul_id', $sankulThirdYear);
}
if (!empty($schoolThirdYear)) {
$thirdYear = $thirdYear->whereIn('school_vision.school_id', $schoolThirdYear);
}
$thirdYear = $thirdYear->get();
return view('admin.school-data.vision-school.third',
[
'title' => 'Sarvhitkari Punjab - School Vision - Third Year',
'keyword'=> '',
'description'=> '',
'thirdYear' => $thirdYear,
'vibhagAll' => $vibhagAll
]);
}
public function filterThirdYear(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagThirdYear' => $vibhagIds]);
session(['zilaThirdYear' => $zilaIds]);
session(['sankulThirdYear' => $sankulIds]);
session(['schoolThirdYear' => $schoolIds]);
$third = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','third')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC');
if (!empty($vibhagIds)) {
$third->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$third->whereIn('users.vibhag_id', $vibhagIds);
$third->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$third->whereIn('users.vibhag_id', $vibhagIds);
$third->whereIn('users.zila_id', $zilaIds);
$third->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$third->whereIn('users.vibhag_id', $vibhagIds);
$third->whereIn('users.zila_id', $zilaIds);
$third->whereIn('users.sankul_id', $sankulIds);
$third->whereIn('users.id', $schoolIds);
}
$filtered = $third->get();
return response()->json($filtered);
}
public static function third_view($id)
{
$thirdYear = Vision::where('school_vision.vision_id', $id)
->where('school_vision.choose_year','third')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->first();
return view('admin.school-data.vision-school.third_view',
[
'title' => 'Sarvhitkari Punjab - View School Vision - Third Year',
'keyword'=> '',
'description'=> '',
'thirdYear' => $thirdYear,
]);
}
// FOURTH YEAR
public static function fourth_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$fourthYear = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','fourth')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagFourthYear = session('vibhagFourthYear');
$zilaFourthYear = session('zilaFourthYear');
$sankulFourthYear = session('sankulFourthYear');
$schoolFourthYear = session('schoolFourthYear');
// Check and apply filters based on session values
if (!empty($vibhagFourthYear)) {
$fourthYear = $fourthYear->whereIn('users.vibhag_id', $vibhagFourthYear);
}
if (!empty($zilaFourthYear)) {
$fourthYear = $fourthYear->whereIn('users.zila_id', $zilaFourthYear);
}
if (!empty($sankulFourthYear)) {
$fourthYear = $fourthYear->whereIn('users.sankul_id', $sankulFourthYear);
}
if (!empty($schoolFourthYear)) {
$fourthYear = $fourthYear->whereIn('school_vision.school_id', $schoolFourthYear);
}
$fourthYear = $fourthYear->get();
return view('admin.school-data.vision-school.fourth',
[
'title' => 'Sarvhitkari Punjab - School Vision - Fourth Year',
'keyword'=> '',
'description'=> '',
'fourthYear' => $fourthYear,
'vibhagAll' => $vibhagAll
]);
}
public function filterFourthYear(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagFourthYear' => $vibhagIds]);
session(['zilaFourthYear' => $zilaIds]);
session(['sankulFourthYear' => $sankulIds]);
session(['schoolFourthYear' => $schoolIds]);
$fourth = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','fourth')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC');
if (!empty($vibhagIds)) {
$fourth->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$fourth->whereIn('users.vibhag_id', $vibhagIds);
$fourth->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$fourth->whereIn('users.vibhag_id', $vibhagIds);
$fourth->whereIn('users.zila_id', $zilaIds);
$fourth->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$fourth->whereIn('users.vibhag_id', $vibhagIds);
$fourth->whereIn('users.zila_id', $zilaIds);
$fourth->whereIn('users.sankul_id', $sankulIds);
$fourth->whereIn('users.id', $schoolIds);
}
$filtered = $fourth->get();
return response()->json($filtered);
}
public static function fourth_view($id)
{
$fourthYear = Vision::where('school_vision.vision_id', $id)
->where('school_vision.choose_year','fourth')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->first();
return view('admin.school-data.vision-school.fourth_view',
[
'title' => 'Sarvhitkari Punjab - View School Vision - Fourth Year',
'keyword'=> '',
'description'=> '',
'fourthYear' => $fourthYear,
]);
}
// FINAL YEAR
public static function final_all()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$finalYear = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','final')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC')
->when(Auth::check(), function ($query) {
$userRole = Auth::user()->user_role;
if ($userRole === 'vibhag') {
$vibhagId = Auth::user()->vibhag_id;
return $query->where('users.vibhag_id', $vibhagId);
} elseif ($userRole === 'zila') {
$zilaId = Auth::user()->zila_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', $zilaId);
} elseif ($userRole === 'sankul') {
$sankulId = Auth::user()->sankul_id;
return $query->where('users.vibhag_id', Auth::user()->vibhag_id)
->where('users.zila_id', Auth::user()->zila_id)
->where('users.sankul_id', $sankulId);
}
return $query;
});
$vibhagFinalYear = session('vibhagFinalYear');
$zilaFinalYear = session('zilaFinalYear');
$sankulFinalYear = session('sankulFinalYear');
$schoolFinalYear = session('schoolFinalYear');
// Check and apply filters based on session values
if (!empty($vibhagFinalYear)) {
$finalYear = $finalYear->whereIn('users.vibhag_id', $vibhagFinalYear);
}
if (!empty($zilaFinalYear)) {
$finalYear = $finalYear->whereIn('users.zila_id', $zilaFinalYear);
}
if (!empty($sankulFinalYear)) {
$finalYear = $finalYear->whereIn('users.sankul_id', $sankulFinalYear);
}
if (!empty($schoolFinalYear)) {
$finalYear = $finalYear->whereIn('school_vision.school_id', $schoolFinalYear);
}
$finalYear = $finalYear->get();
return view('admin.school-data.vision-school.final',
[
'title' => 'Sarvhitkari Punjab - School Vision - Final Year',
'keyword'=> '',
'description'=> '',
'finalYear' => $finalYear,
'vibhagAll' => $vibhagAll
]);
}
public function filterFinalYear(Request $request)
{
$currentYear = auth()->user()->session_id;
$vibhagIds = $request->input('vibhag_name');
$zilaIds = $request->input('zila_name');
$sankulIds = $request->input('sankul_name');
$schoolIds = $request->input('school');
session(['vibhagFinalYear' => $vibhagIds]);
session(['zilaFinalYear' => $zilaIds]);
session(['sankulFinalYear' => $sankulIds]);
session(['schoolFinalYear' => $schoolIds]);
$final = Vision::where('session_masters.session_id', $currentYear)
->where('school_vision.choose_year','final')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->orderBy('school_vision.vision_id', 'DESC');
if (!empty($vibhagIds)) {
$final->whereIn('users.vibhag_id', $vibhagIds);
}
if (!empty($zilaIds)) {
$final->whereIn('users.vibhag_id', $vibhagIds);
$final->whereIn('users.zila_id', $zilaIds);
}
if (!empty($sankulIds)) {
$final->whereIn('users.vibhag_id', $vibhagIds);
$final->whereIn('users.zila_id', $zilaIds);
$final->whereIn('users.sankul_id', $sankulIds);
}
if(!empty($schoolIds)){
$final->whereIn('users.vibhag_id', $vibhagIds);
$final->whereIn('users.zila_id', $zilaIds);
$final->whereIn('users.sankul_id', $sankulIds);
$final->whereIn('users.id', $schoolIds);
}
$filtered = $final->get();
return response()->json($filtered);
}
public static function final_view($id)
{
$finalYear = Vision::where('school_vision.vision_id', $id)
->where('school_vision.choose_year','final')
->join('users', 'users.id', '=', 'school_vision.school_id')
->leftJoin('vibhag_masters', 'users.vibhag_id', '=', 'vibhag_masters.vibhag_id')
->leftJoin('zila_masters', 'users.zila_id', '=', 'zila_masters.zila_id')
->leftJoin('sankul_masters', 'users.sankul_id', '=', 'sankul_masters.sankul_id')
->join('session_masters', 'session_masters.session_id', '=', 'school_vision.session')
->select('school_vision.*', 'session_masters.session_from', 'session_masters.session_to', 'users.name','vibhag_masters.vibhag_name','zila_masters.zila_name','sankul_masters.sankul_name')
->first();
return view('admin.school-data.vision-school.final_view',
[
'title' => 'Sarvhitkari Punjab - View School Vision - Final Year',
'keyword'=> '',
'description'=> '',
'finalYear' => $finalYear,
]);
}
public static function control_modules()
{
$currentYear = auth()->user()->session_id;
$vibhagId = auth()->user()->vibhag_id;
if (Auth::check() && Auth::user()->user_role == 'vibhag' || Auth::user()->user_role == 'zila' || Auth::user()->user_role == 'sankul') {
$vibhagAll = [Vibhag::where('vibhag_id',auth()->user()->vibhag_id)->first()];
}else{
$vibhagAll = Vibhag::all();
}
$jsTree = Tree::all()->toArray();
// dd($jsTree);
return view('admin.school-data.control-modules.all',
[
'title' => 'Sarvhitkari Punjab - Control Modules',
'keyword'=> '',
'description'=> '',
'jsTree' => $jsTree
]);
}
public function updateTreeStatus(Request $request)
{
foreach ($request->input('nodes') as $id => $status) {
Tree::where('id', $id)->update(['status' => $status]);
}
return redirect()->route('admin.school.control-modules')->with('success', 'Control modules status updated successfully.');
}
// prant student info
public static function prant_student()
{
$currentYear = auth()->user()->session_id;
$course = Course::all();
$caste = Caste::all();
$religion = Religion::all();
$gender = StudentGender::all();
// dd($gender);
return view('admin.school-data.prant_student.prant_student',
[
'title' => 'Sarvhitkari Punjab - Prant Student Information',
'keyword'=> '',
'description'=> '',
'caste' => $caste,
'religion' => $religion,
'gender' => $gender,
'course' => $course,
]);
}
public function getPrantStudentRecords(Request $request)
{
$year = auth()->user()->session_id;
$courseId = $request->input('course_id');
// Use the retrieved data to query the database
$studentRecords = Student::where([
'student_info.session'=> $year,
'student_info.course_id'=> $courseId,
])
->join('course_masters', 'student_info.course_id', '=', 'course_masters.course_id')
->join('class_masters', 'student_info.class_id', '=', 'class_masters.class_id')
->join('student_gender', 'student_info.student_id', '=', 'student_gender.student_id')
->select('student_info.*', 'student_gender.caste_id','student_gender.religion_id','student_gender.male_value', 'student_gender.female_value', 'course_masters.course_name', 'class_masters.class_name')
->get();
// dd($studentRecords);
return response()->json($studentRecords);
}
// prant student info
public static function prant_staff()
{
$currentYear = auth()->user()->session_id;
$caste = Caste::all();
$religion = Religion::all();
$gender = StaffGender::all();
return view('admin.school-data.prant_staff.prant_staff',
[
'title' => 'Sarvhitkari Punjab - Prant Staff Information',
'keyword'=> '',
'description'=> '',
'caste' => $caste,
'religion' => $religion,
'gender' => $gender,
]);
}
public function getPrantStaffRecords(Request $request)
{
$year = auth()->user()->session_id;
$choose_staff = $request->input('choose_staff');
// Use the retrieved data to query the database
$staffRecords = Staff::where([
'staff.staff_session'=> $year,
'staff.staff_choose'=> $choose_staff,
])
->join('staff_gender', 'staff.staff_id', '=', 'staff_gender.staff_id')
->select('staff.*', 'staff_gender.caste_id','staff_gender.religion_id','staff_gender.male_value', 'staff_gender.female_value')
->get();
return response()->json($staffRecords);
}
}
// const dateCell = row.insertCell();
// const date = new Date(list.date);
// dateCell.textContent = date.toLocaleDateString('en', { day: 'numeric', month: 'long', year: 'numeric' });
|