1
0
mirror of https://github.com/robonen/education-project.git synced 2026-03-20 02:44:31 +00:00

Журнал(fixed some issues)

This commit is contained in:
ashen-1-dev
2020-12-16 20:38:32 +07:00
parent be8af67c61
commit 622170c647
4 changed files with 30 additions and 9 deletions

View File

@@ -59,7 +59,7 @@ class JournalController extends Controller
$data = array_merge(['updated_at' => $date], $request->all()); $data = array_merge(['updated_at' => $date], $request->all());
$journal = Journal::create($data); $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 * @param Journal $journal
* @return JsonResponse * @return JsonResponse
*/ */
public function update(JournalRequest $request, Journal $journal) public function update(Request $request, int $journal)
{ {
$journal->update($request->all()); $j = Journal::find($journal);
return response()->json(['id' => $journal->id], 200); $j->score = $request->get('score');
$j->comment = $request->get('comment');
$j->timestamps = false;
$j->save();
return response()->json(['id' => $j->id], 200);
} }
/** /**

View File

@@ -17,7 +17,7 @@ class SubjectController extends Controller
*/ */
public function index() public function index()
{ {
return response()->json(Subject::all()->sortBy('name'), 200); return response()->json(Subject::all(), 200);
} }
/** /**

View File

@@ -6,6 +6,7 @@ use App\Http\Controllers\Controller;
use App\Models\Teacher; use App\Models\Teacher;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use App\Models\Subject;
class TeacherController extends Controller class TeacherController extends Controller
{ {
@@ -48,10 +49,26 @@ class TeacherController extends Controller
public function getClasses(Teacher $teacher) public function getClasses(Teacher $teacher)
{ {
$timetables = $teacher->timetables; $timetables = $teacher->timetables;
$classes = []; $classes = collect([]);
foreach ($timetables as $timetable) { 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']));
} }
return response()->json(collect($classes)->unique(), 200); $subjects = $subjects->unique()->values();
$classes->push([
'id' => $class['id'],
'number' => $class['number'],
'letter' => $class['letter'],
'subjects' => $subjects,
]);
}
return response()->json($classes->unique()->values(), 200);
} }
} }

View File

@@ -18,7 +18,7 @@ class JournalRequest extends ApiFormRequest
'teacher_id' => 'required|integer', 'teacher_id' => 'required|integer',
'subject_id' => 'required|integer', 'subject_id' => 'required|integer',
'score' => 'required|integer', 'score' => 'required|integer',
'comment' => 'string', 'comment' => 'string|nullable',
'date' => 'integer', 'date' => 'integer',
]; ];
} }