diff --git a/app/Http/Controllers/StudentController.php b/app/Http/Controllers/StudentController.php index 5217ca6..80cb66a 100644 --- a/app/Http/Controllers/StudentController.php +++ b/app/Http/Controllers/StudentController.php @@ -91,4 +91,11 @@ class StudentController extends Controller return redirect()->route('students.index'); } + + public function scores(StudentService $service): View + { + return view('students.scores', [ + 'scores' => $service->getScores(), + ]); + } } diff --git a/app/Models/Student.php b/app/Models/Student.php index fdc1552..1c96a5f 100644 --- a/app/Models/Student.php +++ b/app/Models/Student.php @@ -39,7 +39,7 @@ class Student extends Model public function lessons(): BelongsToMany { - return $this->belongsToMany(Lesson::class); + return $this->belongsToMany(Lesson::class)->withPivot('score'); } public function scopeFilter(Builder $query): void diff --git a/app/Services/StudentService.php b/app/Services/StudentService.php index 94643b3..fbfdaac 100644 --- a/app/Services/StudentService.php +++ b/app/Services/StudentService.php @@ -5,7 +5,9 @@ namespace App\Services; use App\Enums\ScoreEnum; use App\Models\Student; use App\Models\User; +use Illuminate\Database\Eloquent\Collection; use Illuminate\Pagination\LengthAwarePaginator; +use Illuminate\Support\Facades\Auth; class StudentService { @@ -53,4 +55,14 @@ class StudentService $model->user()->delete(); $model->delete(); } + + public function getScores(): Collection + { + $student = Auth::user()->userable; + foreach ($student->lessons as $lesson) { + dd($lesson->pivot->score); + } + + return $student->lessons; + } } diff --git a/routes/web.php b/routes/web.php index aafe04d..74da970 100644 --- a/routes/web.php +++ b/routes/web.php @@ -42,6 +42,8 @@ Route::middleware('auth')->group(function () { Route::get('export-pdf', [SubjectController::class, 'exportToPDF'])->name('export-pdf'); Route::get('grades/{grade}/subjects/{subject}/journal', [GradeSubjectController::class, 'journal'])->name('grades.subjects.journal'); + + Route::get('student-scores', [StudentController::class, 'scores'])->name('student-scores'); }); require __DIR__.'/auth.php';