Service Layer medium complexity backend
0
Dependencies
0
Dependents
2
Entities
0
Integrations

Description

Handles business logic for managing workshop participant registrations and attendance records. Coordinates between the UI layer and data repository, enforcing rules around registration limits, duplicate prevention, and post-session record locking. Produces structured participant reports for coordinator use.

Feature: Workshop Participant Lists

workshop-participant-service

Sources & reasoning

Line 100 explicitly lists "deltakerlister" (participant lists) as a named component of the Blindeforbundet Mentorordning in the context of two-day group sessions. Line 471 names Workshop Participant Lists as a distinct mentor-program feature. The Mentorordning is placed in Fase 3 (line 358), mapping to v1.1.

  • docs/source/likeperson.md · line 100
    **Mentorordning (karriereverksted):** Eget notatverktøy, to-do-lister og deltakerlister for gruppeveiledning over to dager.
  • docs/source/likeperson.md · line 471
    | mentor-program | Mentor Program | Career Workshops, Workshop Notes, Workshop Participant Lists, Workshop To-Do Lists |

Responsibilities

  • Process participant registration and cancellation requests
  • Enforce workshop capacity limits and prevent duplicate registrations
  • Update attendance status during and after workshop sessions
  • Generate participant summary reports with headcount and attendance rate
  • Validate coordinator permissions before mutating participant records

Interfaces

registerParticipant(workshopId: string, userId: string): Registration
cancelRegistration(workshopId: string, userId: string): void
markAttendance(workshopId: string, userId: string, attended: boolean): void
getParticipantList(workshopId: string): Participant[]
generateParticipantReport(workshopId: string): ParticipantReport

Related Data Entities (2)

Data entities managed by this component