student panel controller

<?php

namespace App\Http\Controllers\Student;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\SmStudent;
use App\SmFeesAssign;
use App\SmFeesAssignDiscount;
use App\SmStudentDocument;
use App\SmStudentTimeline;
use App\SmExamSchedule;
use App\SmExamScheduleSubject;
use App\SmClass;
use App\SmSection;
use App\SmClassRoutine;
use App\SmStudentAttendance;
use App\SmAssignSubject;
use App\SmAssignVehicle;
use App\SmVehicle;
use App\SmRoute;
use App\SmRoomList;
use App\SmRoomType;
use App\SmDormitoryList;
use App\SmMarksGrade;
use App\SmHomework;
use Auth;

class SmStudentPanelController extends Controller
{
    public function studentDashboard(){
    $user = Auth::user();


    $student_detail = SmStudent::where('user_id', $user->id)->first();

        $siblings = SmStudent::where('parent_id', $student_detail->parent_id)->where('active_status', 1)->get();

        $fees_assigneds = SmFeesAssign::where('student_id', $student_detail->id)->get();
        $fees_discounts = SmFeesAssignDiscount::where('student_id', $student_detail->id)->get();
        $documents = SmStudentDocument::where('student_staff_id', $student_detail->id)->where('type', 'stu')->get();
        $timelines = SmStudentTimeline::where('staff_student_id', $student_detail->id)->where('type', 'stu')->where('visible_to_student', 1)->get();
        $exams = SmExamSchedule::where('class_id', $student_detail->class_id)->where('section_id', $student_detail->section_id)->get();

        $grades = SmMarksGrade::where('active_status', 1)->get();


        return view('backEnd.studentPanel.my_profile', compact('student_detail', 'fees_assigneds', 'fees_discounts', 'exams', 'documents', 'timelines', 'siblings', 'grades'));
    }

    public function classRoutine(){
    $user = Auth::user();
    $student_detail = SmStudent::where('user_id', $user->id)->first();

    $classes = SmClass::where('active_status', 1)->get();

    $class_routines = SmClassRoutine::where('class_id', $student_detail->class_id)->where('section_id', $student_detail->section_id)->get();
    return view('backEnd.studentPanel.class_routine', compact('class_routines', 'classes'));
    }

    public function studentResult(){
        $user = Auth::user();


        $student_detail = SmStudent::where('user_id', $user->id)->first();


        $exams = SmExamSchedule::where('class_id', $student_detail->class_id)->where('section_id', $student_detail->section_id)->get();
        $grades = SmMarksGrade::where('active_status', 1)->get();


        return view('backEnd.studentPanel.student_result', compact('student_detail', 'exams', 'grades'));
    }

    public function studentExamSchedule(){
        $user = Auth::user();
        $student_detail = SmStudent::where('user_id', $user->id)->first();

        $exams = SmExamSchedule::where('class_id', $student_detail->class_id)->where('section_id', $student_detail->section_id)->get();

        return view('backEnd.studentPanel.exam_schedule', compact('exams'));
    }

    public function studentViewExamSchedule($id){

        $user = Auth::user();
        $student_detail = SmStudent::where('user_id', $user->id)->first();
        $class = SmClass::find($student_detail->class_id);
        $section = SmSection::find($student_detail->section_id);
        $assign_subjects = SmExamScheduleSubject::where('exam_schedule_id', $id)->get();

        return view('backEnd.examination.view_exam_schedule_modal', compact('class', 'section', 'assign_subjects'));
    }

    public function studentMyAttendance(){
        return view('backEnd.studentPanel.student_attendance');
    }

    public function studentMyAttendanceSearch(Request $request){
        $request->validate([
            'month' => 'required',
            'year' => 'required'
        ]);

        $user = Auth::user();
        $student_detail = SmStudent::where('user_id', $user->id)->first();

        $year = $request->year;
        $month = $request->month;
        $current_day = date('d');

        $days=cal_days_in_month(CAL_GREGORIAN,$request->month,$request->year);
        //$students = SmStudent::where('class_id', $request->class)->where('section_id', $request->section)->get();
       

        $attendances = SmStudentAttendance::where('student_id', $student_detail->id)->where('attendance_date', 'like', $request->year.'-'.$request->month.'%')->get();
        return view('backEnd.studentPanel.student_attendance', compact('attendances', 'days', 'year', 'month', 'current_day'));
    }

    public function studentHomework(){
        $user = Auth::user();
        $student_detail = SmStudent::where('user_id', $user->id)->first();
        $homeworkLists = SmHomework::where('class_id', $student_detail->class_id)->where('section_id', $student_detail->section_id)->get();
        return view('backEnd.studentPanel.student_homework', compact('homeworkLists'));
    }

    public function studentHomeworkView(){
        return view('backEnd.studentPanel.studentHomeworkView');
    }

    public function studentSubject(){
        $user = Auth::user();
        $student_detail = SmStudent::where('user_id', $user->id)->first();

        $assignSubjects = SmAssignSubject::where('class_id', $student_detail->class_id)->where('section_id', $student_detail->section_id)->get();

        return view('backEnd.studentPanel.student_subject', compact('assignSubjects'));

    }

    public function studentTransport(){
        $user = Auth::user();
        $student_detail = SmStudent::where('user_id', $user->id)->first();

        $routes = SmAssignVehicle::where('active_status', 1)->get();
        // dd($student_detail);

        return view('backEnd.studentPanel.student_transport', compact('routes', 'student_detail'));
    }

    public function studentTransportViewModal($r_id, $v_id){
        $vehicle = SmVehicle::find($v_id);
        $route = SmRoute::find($r_id);
       
        return view('backEnd.studentPanel.student_transport_view_modal', compact('route', 'vehicle'));
    }

    public function studentDormitory(){
        $user = Auth::user();
        $student_detail = SmStudent::where('user_id', $user->id)->first();
        $room_lists = SmRoomList::where('active_status', 1)->get();
        $room_lists = $room_lists->groupBy('dormitory_id');
        $room_types = SmRoomType::where('active_status', 1)->get();
        $dormitory_lists = SmDormitoryList::where('active_status', 1)->get();
        return view('backEnd.studentPanel.student_dormitory', compact('room_lists', 'room_types', 'dormitory_lists', 'student_detail'));
    }

   public function studentBookList(){
    return view('backEnd.studentPanel.studentBookList');
   }

   public function studentBookIssue(){
    return view('backEnd.studentPanel.studentBookIssue');
   }

   public function studentNoticeboard(){
    return view('backEnd.studentPanel.studentNoticeboard');
   }

   public function studentTeacher(){
    return view('backEnd.studentPanel.studentTeacher');
   }


}

Comments

Popular posts from this blog

Laravel::: Important Link List

Laravel ::::Single Item Searching

Laravel contact form to mail