| Interval | Letter | GPA |
|---|---|---|
| {{ rtrim(rtrim(number_format($row['min'], 2, '.', ''), '0'), '.') }}–{{ rtrim(rtrim(number_format($row['max'], 2, '.', ''), '0'), '.') }} | {{ $row['grade'] }} | {{ number_format($row['point'], 2) }} |
| 0.00–{{ number_format(round((float) $gradeTableFullMarks, 2), 2, '.', '') }} | N/A | 0.00 |
{{ $schoolInfo->address ?? '--' }}
| Student's Name: {{ $student->student_name_english ?? 'N/A' }} | Class: {{ $registration->class_model->name ?? 'N/A' }} | Group: {{ $registration->group->name ?? 'N/A' }} | Session: {{ $registration->session->name ?? 'N/A' }} |
| Section: {{ $registration->section->name ?? 'N/A' }} | Roll: {{ $registration->class_roll ?? 'N/A' }} | Shift: {{ $registration->shift->name ?? 'N/A' }} | Exam Name: {{ $exam->display_name ?? $exam->exam_name }} |
| SL | Subjects | Full Marks | {{-- @foreach ($weightedExams as $wExam) @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @if($isPrimary==1 || $isJunior==1) @if ( $wExam->weightage_percent < 100){{ $wExam->componentExam->exam_name }} | @else{{ $wExam->componentExam->exam_name }} | @endif @elseif ($isJunior==1) @if ( $wExam->weightage_percent < 100){{ $wExam->componentExam->exam_name }} | @else{{ $wExam->componentExam->exam_name }} | @endif @elseif ($isSecondary==1) @if ( $wExam->weightage_percent < 100){{ $wExam->componentExam->exam_name }} | @else{{ $wExam->componentExam->exam_name }} | @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $wExam->componentExam->exam_name }} | @endif @endforeach --}}Obtained | @if($isSecondary == 1)Obtained Total | @endifHighest Marks | Letter Grade | Grade Point | @if($isPrimary == 1)GPA | Position | @elseif ($isJunior == 1)GPA | Position | @elseif($isSecondary == 1)
GPA
(Without 4th
subject) |
GPA | Position | @endif||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Total | @if ( $wExam->weightage_percent <100){{ $wExam->weightage_percent }}% Marks Of Term | @endif @elseif($isJunior == 1)C.Q | M.C.Q | Total | @if ( $wExam->weightage_percent < 100){{ $wExam->weightage_percent }}% Marks Of Term | @endif @elseif($isSecondary==1 )C.Q | M.C.Q | Practical | Total | @if ( $wExam->weightage_percent < 100){{ $wExam->weightage_percent }}% Marks Of Term | @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt']))Total | @endif @endforeach||||||||||||||||||||||||||||||||||||||||
| Mark | Obt | @elseif ($isJunior == 1)Mark | Obt | Mark | Obt | Mark | Obt | @elseif ($isSecondary == 1)Mark | Obt | Mark | Obt | Mark | Obt | Mark | Obt | @endif @elseif($wExam->componentExam->examType->name == "MT" || $wExam->componentExam->examType->name == "mt") @endif @endforeach @if($isPrimary == 1)Section | Class | @elseif($isJunior == 1) @elseif($isSecondary == 1) @endif||||||||||||||||||||||||||||||||||
| SL | Subjects | Full Marks | @foreach ($weightedExams as $wExam) @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @if($isPrimary == 1 || $isJunior == 1) @if ($wExam->weightage_percent < 100){{ $wExam->componentExam->exam_name }} | @else{{ $wExam->componentExam->exam_name }} | @endif @elseif ($isJunior == 1) @if ($wExam->weightage_percent < 100){{ $wExam->componentExam->exam_name }} | @else{{ $wExam->componentExam->exam_name }} | @endif @elseif ($isSecondary == 1) @if ($wExam->weightage_percent < 100){{ $wExam->componentExam->exam_name }} | @else{{ $wExam->componentExam->exam_name }} | @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $wExam->componentExam->exam_name }} | @endif @endforeachObtained Total |
Highest Marks |
Letter Grade |
Grade Point |
@if($isPrimary == 1)
GPA | Position | @elseif ($isJunior == 1)GPA | Position | @elseif($isSecondary == 1)GPA (Without 4th subject) |
GPA | Position | @endif|||||||||||||||||||||||||||||||
| C.Q | M.C.Q | Total | @if ($wExam->weightage_percent < 100){{ $wExam->weightage_percent }}% Marks Of Term |
@endif
@elseif($isSecondary == 1)
C.Q | M.C.Q | Practical | Total | @if ($wExam->weightage_percent < 100){{ $wExam->weightage_percent }}% Marks Of Term |
@endif
@endif
@elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt']))
@endif
@endforeach
|||||||||||||||||||||||||||||||||||||||||||
| Mark | Obt | @if ($wExam->weightage_percent < 100){{ $wExam->weightage_percent }}% Marks Of Term |
@endif
@elseif ($isJunior == 1)
Mark | Obt | Mark | Obt | Mark | Obt | @elseif ($isSecondary == 1)Mark | Obt | Mark | Obt | Mark | Obt | Mark | Obt | @endif @elseif($wExam->componentExam->examType->name == "MT" || $wExam->componentExam->examType->name == "mt")Mark | Obt | @endif @endforeach @if($isPrimary == 1)Section | Class | @elseif($isJunior == 1) @elseif($isSecondary == 1) @endif|||||||||||||||||||||||||||||||
| Additional Subject | |||||||||||||||||||||||||||||||||||||||||||||||||||
| {{ $sl++ }} | {{ $result['subject_name'] }} | @foreach ($weightedExams as $wExam) @php $marks = $paper1['weighted_marks'][$wExam->component_exam_id] ?? null; @endphp @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $marks['mt_total_full'] }} | {{ $marks['mt_total_obt'] }} | @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach @if($isSecondary == 1)@if($result['final']->total_obtained === 'A' || $result['final']->total_obtained === 'AB') AB @else {{ $result['final']->total_obtained ?? 0 }} @endif | @endif {{--@if($result['final']->total_obtained === 'A' || $result['final']->total_obtained === 'AB') AB @else {{ $result['final']->total_obtained ?? 0 }} @endif | --}}{{ max($result['paper1']['final']->highest_marks ?? 0, $result['paper2']['final']->highest_marks ?? 0) }} | {{ $result['final']->grade ?? '' }} | {{ rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.') }} | @php $totalGPAPoint += floatval(rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.')); @endphp @if ($loop->first) @if($isSecondary == 1){{ number_format($merit->gpa_without_4th ?? 0, 2) }} | {{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @elseif($isJunior == 1){{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @else{{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_section ?? '' }} | {{ $merit->position_class ?? '' }} | @endif @endif|||||||||||||||||||||||||||||||||||
| {{ $marks['mt_total_full'] }} | {{ $marks['mt_total_obt'] }} | @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach||||||||||||||||||||||||||||||||||||||||||||||||||
| {{ $sl++ }} | {{ $result['subject_name'] }} | @foreach ($weightedExams as $wExam) @php $marks = $result['weighted_marks'][$wExam->component_exam_id] ?? null; @endphp @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $marks['mt_total_full'] }} | @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach@if($result['final']->total_obtained === 'A' || $result['final']->total_obtained === 'AB') AB @else {{ $result['final']->total_obtained ?? 0 }} @endif | @if($isSecondary == 1)@if($result['final']->total_obtained === 'A' || $result['final']->total_obtained === 'AB') AB @else {{ $result['final']->total_obtained ?? 0 }} @endif | @endif{{ $result['final']->highest_marks ?? 0 }} | {{ $result['final']->grade ?? '' }} | {{ rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.') }} | @php $totalGPAPoint += floatval(rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.')); @endphp @if ($loop->first) @if($isSecondary == 1){{ number_format($merit->gpa_without_4th ?? 0) }} | {{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @elseif($isJunior == 1){{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @else{{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_section ?? '' }} | {{ $merit->position_class ?? '' }} | @endif @endif||||||||||||||||||||||||||||||||||||
| {{ $sl++ }} | {{ $result['subject_name'] }} @if($result['is_fourth']) (Additional) @endif | @foreach ($weightedExams as $wExam) @php $marks = $result['weighted_marks'][$wExam->component_exam_id] ?? null; @endphp @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $marks['mt_total_full'] }} | @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach@if($result['final']->total_obtained === 'A' || $result['final']->total_obtained === 'AB') AB @else {{ $result['final']->total_obtained ?? 0 }} @endif | @if($isSecondary == 1)@if($result['final']->total_obtained === 'A' || $result['final']->total_obtained === 'AB') AB @else {{ $result['final']->total_obtained ?? 0 }} @endif | @endif{{ $result['final']->highest_marks ?? 0 }} | {{ $result['final']->grade ?? '' }} | {{ rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.') }} | @php $totalGPAPoint += floatval(rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.')); @endphp @if ($loop->first) {{-- Secondary (class 9-12) needs TWO GPA cells (w/o 4th + with 4th) --}} @if($isSecondary == 1){{ number_format($merit->gpa_without_4th ?? 0, 2) }} | {{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @elseif($isJunior == 1){{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @else{{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_section ?? '' }} | {{ $merit->position_class ?? '' }} | @endif @endif||||||||||||||||||||||||||||||||||||
| Additional Subject | |||||||||||||||||||||||||||||||||||||||||||||||||||
| {{ $sl++ }} | {{ $result['subject_name'] }} | @foreach ($weightedExams as $wExam) @if (!$printedFullMarksCell) {{-- Full Marks (MT% + Term%) একবারই দেখাচ্ছি; paired হলে দুই row জুড়ে rowspan --}}{{ (int) round($combinedFullMarks) }} | @php $printedFullMarksCell = true; @endphp @endif @php $marks = $paper1['weighted_marks'][$wExam->component_exam_id] ?? null; @endphp @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @if($isPrimary == 1 || $isJunior == 1){{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @elseif ($isJunior == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @elseif ($isSecondary == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['prac_full'] }} | {{ $marks['prac_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $marks['mt_total_full'] }} | {{ $marks['mt_total_obt'] }} | @if($isSecondary == 1){{ $result['final']->total_obtained ?? 0 }} | @endif @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach{{ $result['final']->total_obtained ?? 0 }} | {{ max($result['paper1']['final']->highest_marks ?? 0, $result['paper2']['final']->highest_marks ?? 0) }} | {{ $result['final']->grade ?? '' }} | {{ rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.') }} | @php $totalGPAPoint += floatval(rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.')); @endphp @if ($loop->first) @if($isSecondary == 1){{ number_format($merit->gpa_without_4th ?? 0, 2) }} | {{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @elseif($isJunior == 1){{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @else{{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | {{ $merit->section_class ?? '' }} | @endif @endif|||||||||||||||
| 20 | @else100 | @endif --}} @foreach ($weightedExams as $wExam) @if (!$printedFullMarksCell) {{-- Full Marks cell দ্বিতীয় পেপারের লুপে missing থাকলে fallback হিসেবেও এখানে প্রিন্ট হবে --}}{{ (int) round($combinedFullMarks) }} | @php $printedFullMarksCell = true; @endphp @endif @php $marks = $paper2['weighted_marks'][$wExam->component_exam_id] ?? null; @endphp @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @if($isPrimary == 1 || $isJunior == 1){{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @elseif ($isJunior == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @elseif ($isSecondary == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['prac_full'] }} | {{ $marks['prac_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $marks['mt_total_full'] }} | {{ $marks['mt_total_obt'] }} | @if($isSecondary == 1){{ $result['final']->total_obtained ?? 0 }} | @endif @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach|||||||||||||||||||||||||||
| {{ $sl++ }} | {{ $result['subject_name'] }} | {{-- @if ($checkMT == 1 && $checkTerm == null)20 | @else100 | @endif --}} @foreach ($weightedExams as $wExam) @if (!$printedFullMarksCell) {{-- Single subject এর ক্ষেত্রে এখানেই একবারের জন্য Full Marks দেখাচ্ছি --}}{{ (int) round($combinedFullMarks) }} | @php $printedFullMarksCell = true; @endphp @endif @php $marks = $result['weighted_marks'][$wExam->component_exam_id] ?? null; @endphp @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @if($isPrimary == 1 || $isJunior == 1){{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @elseif ($isJunior == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @elseif ($isSecondary == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['prac_full'] }} | {{ $marks['prac_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $marks['mt_total_full'] }} | {{ $marks['mt_total_obt'] }} | @if($isSecondary == 1){{ $result['final']->total_obtained ?? 0 }} | @endif @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach{{ $result['final']->total_obtained ?? 0 }} | {{ $result['final']->highest_marks ?? 0 }} | {{ $result['final']->grade ?? '' }} | {{ rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.') }} | @php $totalGPAPoint += floatval(rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.')); @endphp @if ($loop->first) @if($isSecondary == 1){{ number_format($merit->gpa_without_4th ?? 0, 2) }} | {{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @elseif($isJunior == 1){{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @else{{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | {{ $merit->section_class ?? '' }} | @endif @endif|||||||||||||
| {{ $sl++ }} | {{ $result['subject_name'] }} @if($result['is_fourth']) (Additional) @endif | {{-- @if ($checkMT == 1 && $checkTerm == null)20 | @else100 | @endif --}} @foreach ($weightedExams as $wExam) @if (!$printedFullMarksCell) {{-- Single/Additional subject এর Full Marks cell (MT + Term weight সহ) --}}{{ (int) round($combinedFullMarks) }} | @php $printedFullMarksCell = true; @endphp @endif @php $marks = $result['weighted_marks'][$wExam->component_exam_id] ?? null; @endphp @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @if($isPrimary == 1 || $isJunior == 1){{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif {{-- END: Combined full marks calculation and single-cell rendering for MT + Term merged exams --}} @elseif ($isJunior == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @elseif ($isSecondary == 1){{ $marks['cq_full'] }} | {{ $marks['cq_obt'] }} | {{ $marks['mcq_full'] }} | {{ $marks['mcq_obt'] }} | {{ $marks['prac_full'] }} | {{ $marks['prac_obt'] }} | {{ $marks['total_full'] }} | {{ $marks['total_obt'] }} | @php $termTotalOb += is_numeric($marks['total_obt'] ?? null) ? (float) $marks['total_obt'] : 0; $termTotalFull += is_numeric($marks['total_full'] ?? null) ? (float) $marks['total_full'] : 0; $termTotalMCQOb += is_numeric($marks['mcq_obt'] ?? null) ? (float) $marks['mcq_obt'] : 0; $termTotalMCQFull += is_numeric($marks['mcq_full'] ?? null) ? (float) $marks['mcq_full'] : 0; $termTotalCQOb += is_numeric($marks['cq_obt'] ?? null) ? (float) $marks['cq_obt'] : 0; $termTotalCQFull += is_numeric($marks['cq_full'] ?? null) ? (float) $marks['cq_full'] : 0; $termTotalPatOb += is_numeric($marks['prac_obt'] ?? null) ? (float) $marks['prac_obt'] : 0; $termTotalPatFull += is_numeric($marks['prac_full'] ?? null) ? (float) $marks['prac_full'] : 0; @endphp @if ($wExam->weightage_percent < 100) @php $weightedCon = is_numeric($marks['total_obt'] ?? null) ? round(((float) $marks['total_obt'] * $wExam->weightage_percent) / 100) : 'AB'; @endphp{{ $weightedCon }} | @php $termTotalConOb += is_numeric($weightedCon) ? (float) $weightedCon : 0; @endphp @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{ $marks['mt_total_full'] }} | {{ $marks['mt_total_obt'] }} | @if($isSecondary == 1){{ $result['final']->total_obtained ?? 0 }} | @endif @php $mtTotalTotalFull += is_numeric($marks['mt_total_full'] ?? null) ? (float) $marks['mt_total_full'] : 0; $mtTotalTotalOb += is_numeric($marks['mt_total_obt'] ?? null) ? (float) $marks['mt_total_obt'] : 0; @endphp @endif @endforeach{{ $result['final']->total_obtained ?? 0 }} | {{ $result['final']->highest_marks ?? 0 }} | {{ $result['final']->grade ?? '' }} | {{ rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.') }} | @php $totalGPAPoint += floatval(rtrim(rtrim(number_format($result['final']->grade_point ?? 0, 2), '0'), '.')); @endphp @if ($loop->first) {{-- Secondary (class 9-12) needs TWO GPA cells (w/o 4th + with 4th) --}} @if($isSecondary == 1){{ number_format($merit->gpa_without_4th ?? 0, 2) }} | {{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @elseif($isJunior == 1){{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_class ?? '' }} | @else{{ number_format($merit->gpa ?? 0, 2) }} | {{ $merit->position_section ?? '' }} | {{ $merit->position_class ?? '' }} | @endif @endif|||||||||||||
| Grand Total | {{$mtTotalTotalFull}} | {{ $merit->total_mark ?? '' }} | @if ($isSecondary == 1){{ $merit->total_mark ?? '' }} | @endif- | @if ($isPrimary == 1)- | {{ $totalGPAPoint }} | @elseif ($isJunior == 1)- | {{ $totalGPAPoint }} | @elseif ($isSecondary == 1)- | {{ $totalGPAPoint }} | @endif|||||||||||||||||||||||||||||||||||||||||
| Grand Total | @php // Grand Total (Full Marks) should reflect counted marks when both MT + Term are enabled. // i.e. (Term Full * Term%) + (MT Full * MT%) instead of only Term Full. $termWeightPercent = 100; $mtWeightPercent = 100; foreach ($weightedExams as $wExam) { $typeName = strtolower($wExam->componentExam->examType->name ?? ''); if ($typeName === 'term') { $termWeightPercent = (float) ($wExam->weightage_percent ?? 100); } if ($typeName === 'mt') { $mtWeightPercent = (float) ($wExam->weightage_percent ?? 100); } } $termWeightPercent = max(0, min(100, $termWeightPercent)); $mtWeightPercent = max(0, min(100, $mtWeightPercent)); $grandTotalFullMarks = 0; if ($checkMT == 1 && $checkTerm == null) { $grandTotalFullMarks = $mtTotalTotalFull; } elseif ($checkMT == null && $checkTerm == 1) { $grandTotalFullMarks = $termTotalFull; } else { // Both MT + Term $grandTotalFullMarks = round(($termTotalFull * $termWeightPercent) / 100) + round(($mtTotalTotalFull * $mtWeightPercent) / 100); } @endphp{{ (int) $grandTotalFullMarks }} | @foreach ($weightedExams as $wExam) @if(in_array(strtolower($wExam->componentExam->examType->name), ['term'])) @if ($isPrimary == 1 || $isJunior == 1){{ $termTotalFull }} | {{ $termTotalOb }} | @if ($wExam->weightage_percent < 100){{ $termTotalConOb }} | @endif @elseif ($isJunior == 1)@elseif ($isSecondary == 1) | {{ $termTotalCQFull }} | {{ $termTotalCQOb }} | {{ $termTotalMCQFull }} | {{ $termTotalMCQOb }} | {{ $termTotalPatFull }} | {{ $termTotalPatOb }} | {{ $termTotalFull }} | {{ $termTotalOb }} | @if ($wExam->weightage_percent < 100){{ $termTotalConOb }} | @endif @endif @elseif(in_array(strtolower($wExam->componentExam->examType->name), ['mt'])){{$mtTotalTotalFull}} | {{$mtTotalTotalOb }} | @endif @endforeach{{ $merit->total_mark ?? '' }} | - | @if ($isPrimary == 1)- | {{ $totalGPAPoint }} | @elseif ($isJunior == 1)- | {{ $totalGPAPoint }} | @elseif ($isSecondary == 1)- | {{ $totalGPAPoint }} | @endif|||||||||||||||||||||||||||
| Categories | Excellent | Very Good | Good | Average |
|---|---|---|---|---|
| Behaviour | {{ $perf && $perf->behaviour === 'Ex.' ? '✓' : '' }} | {{ $perf && $perf->behaviour === 'V.G' ? '✓' : '' }} | {{ $perf && $perf->behaviour === 'Good' ? '✓' : '' }} | {{ $perf && $perf->behaviour === 'Avg.' ? '✓' : '' }} |
| Dress Up | {{ $perf && $perf->dress_up === 'Ex.' ? '✓' : '' }} | {{ $perf && $perf->dress_up === 'V.G' ? '✓' : '' }} | {{ $perf && $perf->dress_up === 'Good' ? '✓' : '' }} | {{ $perf && $perf->dress_up === 'Avg.' ? '✓' : '' }} |
| Performance | {{ $perf && $perf->performance === 'Ex.' ? '✓' : '' }} | {{ $perf && $perf->performance === 'V.G' ? '✓' : '' }} | {{ $perf && $perf->performance === 'Good' ? '✓' : '' }} | {{ $perf && $perf->performance === 'Avg.' ? '✓' : '' }} |
| Co-Curricular | {{ $perf && $perf->co_curriculum === 'Ex.' ? '✓' : '' }} | {{ $perf && $perf->co_curriculum === 'V.G' ? '✓' : '' }} | {{ $perf && $perf->co_curriculum === 'Good' ? '✓' : '' }} | {{ $perf && $perf->co_curriculum === 'Avg.' ? '✓' : '' }} |
| Designation | Comments |
|---|---|
| {{ $role }} | {{ $comment }} |
| Remark | Principal's Signature |
|---|---|
| {{ $comment }} |
No student data available for this exam.
@endforelse