@extends('layouts.admin.app') @section('content')
{{-- Header --}}

Kelola Nilai

{{ $guru->nama_guru }} — {{ $guru->mata_pelajaran ?? '-' }}

{{-- Notifikasi --}} @if(session('success'))
{{ session('success') }}
@endif {{-- Statistik --}}

{{ $statistik['rata_kelas'] }}

Rata-rata Kelas

{{ $statistik['jumlah_tp'] }}

Jumlah TP

{{ $statistik['belum_lengkap'] }}

Belum Lengkap

{{ $statistik['total_siswa'] }}

Total Siswa

{{-- Tabel Nilai --}}

Input Nilai Siswa

@csrf
@for($i = 1; $i <= max($jumlahTp, 1); $i++) @endfor @forelse($nilaiSiswa as $index => $nilai) @php $tpArr = $nilai->tp->sortBy('urutan_tp')->pluck('nilai')->toArray(); $allNilai = array_merge($tpArr, array_filter([$nilai->pts, $nilai->pas])); $rata = count($allNilai) > 0 ? round(array_sum($allNilai) / count($allNilai), 1) : 0; $grade = $rata >= 90 ? 'A' : ($rata >= 80 ? 'B' : ($rata >= 70 ? 'C' : 'D')); $gradeColor = match($grade) { 'A' => 'bg-green-100 text-green-700', 'B' => 'bg-blue-100 text-blue-700', 'C' => 'bg-yellow-100 text-yellow-700', default => 'bg-red-100 text-red-700', }; @endphp {{-- TP Inputs --}} @for($i = 0; $i < max($jumlahTp, 1); $i++) @endfor {{-- PTS --}} {{-- PAS --}} @empty @endforelse
No Siswa KelasTP {{ $i }}PTS PAS Rata-rata Grade Aksi
{{ $index + 1 }}
{{ strtoupper(substr($nilai->siswa->nama_siswa, 0, 1)) }}

{{ $nilai->siswa->nama_siswa }}

{{ $nilai->siswa->nisn }}

{{ $nilai->siswa->kelas->nama_kelas ?? '-' }} {{ $rata > 0 ? $rata : '-' }} {{ $rata > 0 ? $grade : '-' }} @csrf @method('DELETE')

Belum ada siswa

Tambahkan siswa terlebih dahulu

{{-- Tombol Simpan --}} @if($nilaiSiswa->count() > 0)
@endif
{{-- Modal Tambah Siswa --}} @endsection