Peer Mentor Service
Component Detail
Service Layer
medium complexity
mobilebackend
1
Dependencies
3
Dependents
7
Entities
0
Integrations
Description
Business logic layer for all peer mentor domain operations, exposing a typed PeerMentor domain model to the UI. Handles status transitions (active, paused, deactivated), certification expiry computation, and association assignment logic. Coordinates between the repository and any downstream services such as the Pause Notification Service.
peer-mentor-service
Responsibilities
- Fetch and compose PeerMentor domain model from repository data
- Compute certification expiry warning states
- Orchestrate status transitions and validate business rules
- Provide filtered mentor lists by status, association, or search query
Interfaces
getMentor(mentorId: string): Future<PeerMentor>
getMentorsByAssociation(associationId: string): Future<List<PeerMentor>>
getMentorsByStatus(status: MentorStatus): Future<List<PeerMentor>>
updateMentorStatus(mentorId: string, status: MentorStatus): Future<void>
getCertificationStatus(mentorId: string): CertificationStatus
assignMentorToAssociation(mentorId: string, associationId: string): Future<void>
searchMentors(query: String): Future<List<PeerMentor>>
getMentorActivitySummary(mentorId: string): Future<ActivitySummary>
Relationships
Dependents (3)
Components that depend on this component
Related Data Entities (7)
Data entities managed by this component