@extends('adminlte::page') @section('title', 'Class Results') @section('content_header')
Total Students
Average GPA
Highest Total Points
Lowest Total Points
I: {{ $divisionCounts['I'] ?? 0 }} | II: {{ $divisionCounts['II'] ?? 0 }} | III: {{ $divisionCounts['III'] ?? 0 }} | IV: {{ $divisionCounts['IV'] ?? 0 }} | 0: {{ $divisionCounts['0'] ?? 0 }}
| # | Student | @foreach($sortedSubjects as $subject){{ $subject['name'] }} | @endforeachTotal Marks (Best 7) | Average (Best 7) | Division | Total Points | GPA | Position |
|---|---|---|---|---|---|---|---|---|
| {{ $i + 1 }} | {{ $data['student']->first_name }} {{ $data['student']->last_name }} | @foreach($sortedSubjects as $subject) @php $subjectData = $studentSubjects->get($subject['name']); $grade = $subjectData['grade'] ?? '—'; $mark = $subjectData['mark'] ?? '—'; $bg = $gradeColors[$grade] ?? '#f9f9f9'; @endphp
{{ $mark }}
({{ $grade }})
|
@endforeach
@php
$coreSubjects = collect($data['subjectsData'])->where('type', 'core')->sortByDesc('mark');
$electives = collect($data['subjectsData'])->where('type', 'elective')->sortByDesc('mark');
$bestSubjects = $coreSubjects->take(7);
if ($bestSubjects->count() < 7) {
$bestSubjects = $bestSubjects->merge($electives->take(7 - $bestSubjects->count()));
}
$totalMarks = $bestSubjects->sum('mark');
$subjectCount = $bestSubjects->count();
$average = $subjectCount ? number_format($totalMarks / $subjectCount, 2) : 0;
$totalPoints = $bestSubjects->sum('point');
@endphp
{{ $totalMarks }} | {{ $average }} | {{ $data['division'] }} | {{ $totalPoints }} | {{ number_format($data['gpa'], 2) }} | {{ $data['position'] }}/{{ $totalStudents }} |
| Subject | Type | Average Mark | Average GPA |
|---|---|---|---|
| {{ $subject }} | {{ ucfirst($stats['type']) }} | {{ $stats['average_mark'] }} | {{ $stats['average_gpa'] }} |
No results found. Please select filters above.
@endif