diff --git a/app/Http/Controllers/JournalController.php b/app/Http/Controllers/JournalController.php index 25f9bc4..284210a 100644 --- a/app/Http/Controllers/JournalController.php +++ b/app/Http/Controllers/JournalController.php @@ -59,7 +59,7 @@ class JournalController extends Controller $data = array_merge(['updated_at' => $date], $request->all()); $journal = Journal::create($data); - return response()->json(['id' => $journal->id], 200); + return response()->json($journal, 200); } /** @@ -91,10 +91,14 @@ class JournalController extends Controller * @param Journal $journal * @return JsonResponse */ - public function update(JournalRequest $request, Journal $journal) + public function update(Request $request, int $journal) { - $journal->update($request->all()); - return response()->json(['id' => $journal->id], 200); + $j = Journal::find($journal); + $j->score = $request->get('score'); + $j->comment = $request->get('comment'); + $j->timestamps = false; + $j->save(); + return response()->json(['id' => $j->id], 200); } /** diff --git a/app/Http/Controllers/SubjectController.php b/app/Http/Controllers/SubjectController.php index e0e4ae0..51d6592 100644 --- a/app/Http/Controllers/SubjectController.php +++ b/app/Http/Controllers/SubjectController.php @@ -17,7 +17,7 @@ class SubjectController extends Controller */ public function index() { - return response()->json(Subject::all()->sortBy('name'), 200); + return response()->json(Subject::all(), 200); } /** diff --git a/app/Http/Controllers/Users/TeacherController.php b/app/Http/Controllers/Users/TeacherController.php index 1b0f8d0..2b9ef93 100644 --- a/app/Http/Controllers/Users/TeacherController.php +++ b/app/Http/Controllers/Users/TeacherController.php @@ -6,6 +6,7 @@ use App\Http\Controllers\Controller; use App\Models\Teacher; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; +use App\Models\Subject; class TeacherController extends Controller { @@ -48,10 +49,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/Requests/JournalRequest.php b/app/Http/Requests/JournalRequest.php index bfc95f3..035e2d0 100644 --- a/app/Http/Requests/JournalRequest.php +++ b/app/Http/Requests/JournalRequest.php @@ -18,7 +18,7 @@ class JournalRequest extends ApiFormRequest 'teacher_id' => 'required|integer', 'subject_id' => 'required|integer', 'score' => 'required|integer', - 'comment' => 'string', + 'comment' => 'string|nullable', 'date' => 'integer', ]; }