Assignment Status Service
Component Detail
Service Layer
medium complexity
mobile
1
Dependencies
2
Dependents
2
Entities
0
Integrations
Description
Manages assignment lifecycle state transitions - dispatched, delivered, read, contact established - by communicating status updates to the REST API and updating local cache. Also handles optimistic UI state via Flutter BLoC.
assignment-status-service
Responsibilities
- Send delivery confirmation receipt when assignment reaches device
- Send read confirmation when peer mentor opens assignment detail
- Update contact-established status on coordinator action
- Expose BLoC state stream for real-time UI updates
- Validate status transition rules (e.g. cannot mark read before delivered)
Interfaces
confirmDelivery(assignmentId: String): Future<void>
confirmRead(assignmentId: String): Future<void>
confirmContactEstablished(assignmentId: String): Future<void>
getAssignmentStatus(assignmentId: String): AssignmentStatus
watchAssignmentStream(): Stream<AssignmentState>
Relationships
Dependents (2)
Components that depend on this component
Related Data Entities (2)
Data entities managed by this component