# Task Breakdown: 12 - Pencatatan Kehadiran Mata Pelajaran Siswa 

**Referensi Dokumen:** FR-12, Tech Spec 2.3
**Tujuan:** Memberikan panel fungsional pada masing-masing Guru Kelas (yang sedang mengawasi jalannya Sesi) untuk mengabsen satu persatu partisipasi *Subject Attendance* anak murid yang terjadwal.

## 1. UI dan Parameter Controller
- [ ] Buat `SubjectAttendanceController@create($schedule_id)`.
  - Tampilkan nama-siswa dan toggle form pilihan status: `Hadir (Present)`, `Sakit (Sick)`, `Izin (Permission)`, `Telat (Late)`, atau `Alpa (Absent)`.
  - Filter pra-syarat akses ketat: Sesi ini mutlak harus sudah masuk status `teaching` pada rekaman `TeachingAttendanceController` guru yang bersangkutan. (Guru belum pencet tombol "Mulai Sesi" = Ditendang ke halaman depan panel dengan *Flash Message* teguran!).

## 2. Bulk Store Database Logic
- [ ] Buat `SubjectAttendanceController@store(Request $request)`
  - Formulir mengirim Array Multi / Batch yang mengikutsertakan id list siswa serta id enum status absensinya masing-masing.
  - Buat Looping massal `UpdateOrCreate` di tabel `STUDENT_SUBJECT_ATTENDANCES`, lalu sertakan *stamp* waktu terkini dan kolom penanda `submitted_by` (ID akun Guru bersangkutan).

## 3. Acceptance Criteria
- [ ] UI List murid dijamin otomatis mendata *hanya list enrollment dari table Student pada Kelas bersangkutan saja*. Siswa kelas luar dilarang bocor ke dashboard.
- [ ] Rekaman valid dan guru yang terdaftar tercap secara forensik dalam database untuk pembuktian di hari esok selaku pencatatnya (`submitted_by`).
