Proje: OkulUp API · Hub: OkulUp API — Domain

OkulUp API — Devamsızlık Modülü

Devamsızlık Durumları

StatusAçıklama
presentMevcut
absentDevamsız
lateGeç geldi
excusedMazeretli

requiresNotification() → absent veya late ise ve parent_notified_at null ise veli bildirimi gerekir.

API Endpoint’leri

MethodPathAçıklama
GET/attendancesListe (filtrelenmiş)
POST/attendancesTek kayıt
POST/attendances/bulkToplu yoklama (sınıf için)
GET/attendances/reportRapor (feature:attendance_reports)
GET/attendances/{id}Detay
PUT/attendances/{id}Güncelle
GET/attendances/class/{class}/date/{date}Sınıf + tarih bazında

Bulk Yoklama

POST /attendances/bulk — bir sınıfın tüm öğrencileri için tek seferde yoklama kaydı.
Öğretmen en pratik şekilde günlük yoklamayı tamamlar.

Veli Bildirimi

SendAttendanceNotificationJob → absent/late girişlerinde velilere otomatik bildirim.

Dashboard’da Kullanımı

  • Manager dashboard: bugünkü okul geneli devam oranı
  • Teacher dashboard:
    • Bugünkü sınıf oranı
    • 30 günlük ortalama
    • Yoklama alınmamış aktif sınıflar listesi (pending_actions)
  • Student/Parent dashboard: son 30 günün devam oranı

Audit

Attendance modeli Auditable trait kullanır → her değişiklik audit_logs’a yazılır.

Feature Flag

feature:attendance_reports — sadece rapor endpoint’ini kısıtlar, yoklama girişini değil.