Beispiel #1
0
 public function priorexam(Request $request)
 {
     $statistics = ExamResult::whereHas('Exam', function ($q) {
         $q->whereRaw('exams.start_at > exam_results.enter_at');
     })->with('student', 'exam');
     if (request('student_id')) {
         $statistics->whereHas('student', function ($q) use($request) {
             $q->where('students.id', request('student_id'));
         });
     }
     if (request('exam_subject')) {
         $statistics->whereHas('exam', function ($q) use($request) {
             $q->where('subject_id', request('exam_subject'));
         });
     }
     if (request('exam_type')) {
         $statistics->whereHas('exam', function ($q) use($request) {
             $q->where('type', request('exam_type'));
         });
     }
     $per_page = request('per_page') ? request('per_page') : 100;
     $statistics = $statistics->paginate($per_page);
     $statistics->appends($request->except("page"));
     $subjects = Subject::lists('name', 'id')->toArray();
     return view('exams::reports.priorexam', compact('statistics', 'subjects'));
 }