diff --git a/app/Http/Controllers/Users/TeacherController.php b/app/Http/Controllers/Users/TeacherController.php index 6fb9525..6950e24 100644 --- a/app/Http/Controllers/Users/TeacherController.php +++ b/app/Http/Controllers/Users/TeacherController.php @@ -3,9 +3,12 @@ namespace App\Http\Controllers\Users; use App\Http\Controllers\Controller; +use App\Models\Subject; use App\Models\Teacher; +use App\Models\Timetable; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; +use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Response; class TeacherController extends Controller @@ -67,10 +70,26 @@ class TeacherController extends Controller public function getClasses(Teacher $teacher) { $timetables = $teacher->timetables; - $classes = []; + $classes = collect([]); foreach ($timetables as $timetable) { - array_push($classes, $timetable->schoolClass->only('id','number','letter')); + $subjects = collect([]); + $class = $timetable->schoolClass->only('id','number','letter'); + $forClassTimetables = $timetables->where('class_id', $class['id']); + + foreach ($forClassTimetables as $forClassTimetable) { + $subjects->push(Subject::find($forClassTimetable['subject_id'])); + } + $subjects = $subjects->unique()->values(); + + $classes->push([ + 'id' => $class['id'], + 'number' => $class['number'], + 'letter' => $class['letter'], + 'subjects' => $subjects, + ]); + } - return response()->json(collect($classes)->unique(), 200); + + return response()->json($classes->unique()->values(), 200); } } diff --git a/app/Http/Controllers/Users/UserController.php b/app/Http/Controllers/Users/UserController.php index 3b97933..41a5047 100644 --- a/app/Http/Controllers/Users/UserController.php +++ b/app/Http/Controllers/Users/UserController.php @@ -29,7 +29,7 @@ class UserController extends Controller $user = auth()->user()->parent; break; } - return response()->json($user); + return response()->json($user, 200); } }