Appearance
Attendance
lms.attendance · every change is kept in the audit log
Fields
Every record also has id, created_at and updated_at.
| Field | Label | Type | Rules |
|---|---|---|---|
lecture_session | lecture session | link → lms.lecture_session | required |
student | student | link → core.student | required |
subject | subject | link → core.subject | required |
batch | batch | link → lms.batch | |
division | division | link → lms.division | |
attendance_date | attendance date | date | required |
status | status | select | required; one of: Present, Absent, Unmarked; default "Unmarked" |
method | method | select | one of: Manual, Geo Radar, Face, CCTV, Biometric, Online, Bulk Upload; default "Manual" |
marked_at | marked at | time | |
distance_m | distance m | decimal | min 0 |
device_name | device name | text | max 100 characters |
evidence_photo | evidence photo | image | personal data |
marked_by | marked by | link → core.user |
Unique together: lecture_session + student
Permissions
| Role | Can |
|---|---|
lms:admin | read, create, update, delete |
lms:college_admin | read, create, update, delete |
lms:hod | read, create, update, delete |
lms:faculty | read, create, update |
lms:student | read — only own rows (via student) |
lms:parent | read — only own rows (via student) |
API
http
GET /api/lms/attendance?<field>=<value>&limit=100&offset=0
POST /api/lms/attendance
GET /api/lms/attendance/:id
PATCH /api/lms/attendance/:id
DELETE /api/lms/attendance/:id