/** * Report. * @return Response */ public function report(Request $request) { $paper = Paper::with('docs', 'student')->groupBy('student_id'); if ($request->has('category')) { $paper = $paper->whereHas('docs', function ($query) use($request) { $query->where('category', $request->input('category')); }); } if ($request->has('type')) { $paper = $paper->whereHas('docs', function ($query) use($request) { $query->where('type', $request->input('type')); }); } if ($request->has('hardcopy')) { $paper = $paper->whereHas('docs', function ($query) use($request) { $query->where('is_exist_hardcopy', $request->input('hardcopy')); }); } if ($request->has('softcopy')) { $paper = $paper->whereHas('docs', function ($query) use($request) { $query->where('is_exist_softcopy', $request->input('softcopy')); }); } $papers = $paper->get(); return view('papers::report', compact('papers')); }