Assignment Repository
Component Detail
Data Layer
medium complexity
mobilebackend
0
Dependencies
0
Dependents
3
Entities
0
Integrations
Description
Data access layer providing CRUD operations for assignments, assignment_dispatches, and assignment_read_receipts tables in Supabase. Abstracts all database queries behind typed Dart interfaces. Supports real-time subscriptions for coordinator status dashboards and peer mentor inbox updates.
assignment-repository
Responsibilities
- Create and persist encrypted assignment records
- Query assignments by recipient or coordinator
- Update dispatch and read receipt status
- Provide real-time streams for status changes
Interfaces
createAssignment(assignment)
getAssignmentById(assignmentId)
getAssignmentsForRecipient(userId)
getAssignmentsForCoordinator(coordinatorId)
updateDispatchStatus(assignmentId, status)
createReadReceipt(assignmentId, userId, timestamp)
createDeliveryAcknowledgement(assignmentId, timestamp)
streamAssignmentStatus(assignmentId)
listOpenAssignments(coordinatorId)
deleteAssignment(assignmentId)
Related Data Entities (3)
Data entities managed by this component