ExpenseRegistrationScreen
Component Detail
User Interface
medium complexity
mobile
0
Dependencies
0
Dependents
1
Entities
0
Integrations
Description
Mobile screen for registering travel expenses including kilometer reimbursement, tolls, parking, and public transport costs. Presents fixed-choice type fields and standard defaults to minimize input friction for common scenarios. Displays real-time approval status feedback and queues entries for sync when offline.
expense-registration-screen
Sources & reasoning
Lines 66 and 341 explicitly describe the expense registration need for HLF and Blindeforbundet. The priority matrix at line 148 places the parent area as SHOULD HAVE Fase 2, which maps to v1.0 by ordinal phase position.
-
docs/source/likeperson.md · line 66Begge organisasjoner har behov for registrering av kilometergodtgjørelse, bompenger, parkering og kollektivt. Behovene er like, men HLF har mest detaljert krav:
-
docs/source/likeperson.md · line 148Reiserefusjon / utleggsregistrering | - | - | ✓ | ✓ | ✓ | SHOULD HAVE | 2
-
docs/source/likeperson.md · line 341Reiserefusjonshåndtering (faste valg, terskelbasert godkjenning)
Responsibilities
- Render expense type selector with fixed choices preventing invalid type combinations
- Pre-populate standard defaults for common expense scenarios
- Display automatic approval confirmation or pending-attestation status
- Show offline indicator and sync queue state to the user
- Navigate to parent activity record for context and linkage
Interfaces
render(activityId: string): void
onExpenseTypeChange(type: ExpenseType): void
onSubmit(draft: ExpenseDraft): Promise<SubmitResult>
onSyncStatusChange(status: SyncStatus): void