BulkRegistrationService
Component Detail
Description
Backend service responsible for processing bulk activity registration requests by iterating over the selected peer mentor IDs and creating individual activity records for each. It enforces authorization rules, validates activity data, and collects per-record success or failure outcomes into a consolidated result. The service integrates with the activity logging infrastructure used by the simple-activity-logging feature.
bulk-registration-service
Sources & reasoning
Lines 83-84 explicitly describe bulk registration for recurring group activities as a coordinator need shared by NHF, HLF, and Barnekreftforeningen. Line 151 assigns SHOULD HAVE priority in Phase 2 (Fase 2), mapping to v1.0 by ordinal position. The blueprint confirms [v1.0] for this feature. The SHOULD HAVE classification and second-phase placement together rule out MVP and confirm v1.0.
-
docs/source/likeperson.md · line 83-84Koordinatorer må ha mulighet til å registrere aktivitet på vegne av sine likepersoner, enten enkeltvis eller samlet for faste aktiviteter (f.eks. ukentlig trening med mange deltakere).
-
docs/source/likeperson.md · line 151| Bulkregistrering / proxy-rapportering | ✓ | ✓ | - | ✓ | ✓ | SHOULD HAVE | 2 |
Responsibilities
- Validate coordinator authorization before processing any records
- Iterate over selected mentor IDs and create individual activity records
- Collect and aggregate per-record success and failure outcomes
- Enforce business rules such as duplicate detection and activity eligibility
- Return a structured BulkSubmissionResult to the calling client
Interfaces
processBulkRegistration(coordinatorId, mentorIds, activityDetails): BulkSubmissionResult
validateActivityDetails(details: ActivityDetails): ValidationResult
createActivityRecord(mentorId, activityDetails): ActivityRecord
checkDuplicate(mentorId, activityDetails): boolean
Related Data Entities (3)
Data entities managed by this component