From 9c0fe8baa0e2a633f6a037fa09d9302e9583eed9 Mon Sep 17 00:00:00 2001 From: Power BI Dev Date: Sun, 9 Aug 2026 18:35:43 +0700 Subject: [PATCH] Tambah filter kelas di halaman Input Nilai - /nilai/: dropdown "Tampilkan kelas" menyaring tabel Nilai per Komponen & Nilai per Mahasiswa sekaligus (tanpa reload); baris ringkasan (rata-rata/% lulus MK) ikut disembunyikan saat filter aktif karena angkanya dihitung dari seluruh MK, bukan per kelas - /nilai//komponen/: filter serupa + kolom Kelas ditambahkan di tabel Nilai Mahasiswa (halaman paling sering dipakai dosen isi nilai per sesi/tugas) - Muncul otomatis hanya bila MK punya >1 kelas Co-Authored-By: Claude Sonnet 5 --- app/templates/form_nilai.html | 54 +++++++++++++++++++++++--- app/templates/form_nilai_komponen.html | 41 ++++++++++++++++++- 2 files changed, 89 insertions(+), 6 deletions(-) diff --git a/app/templates/form_nilai.html b/app/templates/form_nilai.html index fc455cb..fba2cbc 100644 --- a/app/templates/form_nilai.html +++ b/app/templates/form_nilai.html @@ -89,6 +89,21 @@ {% endif %} + {% set ada_kelas = grid and grid|selectattr('kelas')|list|length > 0 %} + {% if ada_kelas %} + {% set semua_kelas = grid|map(attribute='kelas')|select|unique|sort|list %} +
+ + + +
+ {% endif %} + {% if grid and tabel_komponen and komponen_daftar %}

NILAI PER KOMPONEN — nilai mahasiswa berdasarkan komponen

Angka = rata-rata skor mentah tiap sesi/tugas komponen itu yang diikuti mahasiswa (bukan lewat Sub-CPMK). Ketik untuk menimpa — @@ -109,7 +124,7 @@ {% for r in tabel_komponen %} {% set ri = loop.index0 %} - + {{ loop.index }} @@ -142,7 +157,6 @@

NILAI PER MAHASISWA — nilai mahasiswa berdasarkan Sub-CPMK

- {% set ada_kelas = grid|selectattr('kelas')|list|length > 0 %} {% set n_kiri = 4 if ada_kelas else 3 %} @@ -158,7 +172,7 @@ {% for m in grid %} {% set i = loop.index0 %} - + @@ -174,7 +188,7 @@ {% endfor %} {% if per_mhs and hasil %} - + {% for s in peta.subs %} {% set info = hasil.sub.get(s.kode) %} @@ -182,7 +196,7 @@ {% endfor %} - + {% for s in peta.subs %} {% set info = hasil.sub.get(s.kode) %} @@ -383,4 +397,34 @@ {% endif %} {% endif %} + + {% if ada_kelas %} + + {% endif %} {% endblock %} diff --git a/app/templates/form_nilai_komponen.html b/app/templates/form_nilai_komponen.html index ce939d9..3742dda 100644 --- a/app/templates/form_nilai_komponen.html +++ b/app/templates/form_nilai_komponen.html @@ -96,6 +96,20 @@ {% endif %}

NILAI MAHASISWA

+ {% set ada_kelas = grid|selectattr('kelas')|list|length > 0 %} + {% if ada_kelas %} + {% set semua_kelas = grid|map(attribute='kelas')|select|unique|sort|list %} +
+ + + +
+ {% endif %}
{{ loop.index }}
Rata-rata kelas (tersimpan){{ '%.1f'|format(akhir.values()|sum / akhir|length) if akhir else '—' }}
% lulus (≥ {{ ambang|round(0)|int }})
@@ -103,17 +117,19 @@ + {% if ada_kelas %}{% endif %} {% for m in grid %} - + + {% if ada_kelas %}{% endif %} @@ -129,6 +145,29 @@ + {% if ada_kelas %} + + {% endif %} + {% if komponen.tugas %}
No. NIM NamaKelasNilai (0–100)
{{ loop.index }} {{ m.nim }} {{ m.nama }}{{ m.kelas or '—' }}