Bufdir Report Service
Component Detail
Service Layer
high complexity
backendmobile
1
Dependencies
1
Dependents
13
Entities
0
Integrations
Description
Core business logic service that aggregates registered activities, participant data, and outcome metrics from the database into the standardized Bufdir reporting format. Handles mapping from Meander's internal activity schema to Bufdir's required reporting fields, enforces multi-tenancy so each organization only sees its own data, and coordinates with the backend API for report compilation and PDF generation.
bufdir-report-service
Responsibilities
- Aggregate activity records filtered by organization, date range, and role
- Map internal activity schema to Bufdir required reporting fields
- Validate report completeness and flag missing or inconsistent data
- Coordinate with backend API route for server-side report compilation
- Enforce multi-tenancy data isolation per organization
Interfaces
generateReport(organizationId, startDate, endDate)
getReportPreview(reportId)
validateReportData(reportData)
getReportCompleteness(organizationId, period)
mapActivityToBufdirFormat(activity)
aggregateParticipantMetrics(organizationId, period)
aggregateOutcomeMetrics(organizationId, period)
getAvailableReportingPeriods(organizationId)
saveReportDraft(reportData)
finalizeReport(reportId)
Relationships
Related Data Entities (13)
Data entities managed by this component
Activity
26 fields
core
Activity Approval
19 fields
core
Bufdir Report
21 fields
core
Event
19 fields
core
Activities
24 fields
core
Activity Approvals
14 fields
core
Bufdir Reports
25 fields
core
Event Registrations
14 fields
core
Events
27 fields
core
Expenses
31 fields
core
Organizations
25 fields
core
Reimbursements
21 fields
core
Users
26 fields
core