Appearance
Complaint
hostel.complaint · every change is kept in the audit log · numbered TKT-{YYYY}-{#####}
Fields
Every record also has id, created_at and updated_at.
| Field | Label | Type | Rules |
|---|---|---|---|
student | student | link → core.student | required |
hostel | hostel | link → hostel.hostel | |
issue_type | issue type | text | required |
description | description | longtext | required |
status | status | select | one of: Open, In progress, Resolved, Closed; default "Open" |
comments | comments | table of complaint_comment |
Permissions
| Role | Can |
|---|---|
hostel:admin | read, create, update, delete, import, export |
hostel:warden | read, create, update — only rows in the user's scope (via hostel) |
hostel:student | read, create, update — only own rows (via student) |
API
http
GET /api/hostel/complaint?<field>=<value>&limit=100&offset=0
POST /api/hostel/complaint
GET /api/hostel/complaint/:id
PATCH /api/hostel/complaint/:id
DELETE /api/hostel/complaint/:idBulk import: GET /api/_import/hostel/complaint/template (CSV template), then POST /api/_import/hostel/complaint. See REST API.