View personal expense report submission history
The Expense Repository provides a query interface to fetch the authenticated user's expense report history from the `travel_expense_reports` Supabase table, filtered by the RLS policy to return only their own records. Each record in the history list displays the submission date, a summary of expense items (type and amount), the total reimbursement value, and the current approval status (pending, auto-approved, awaiting attestation, approved, or rejected). The history is ordered by submission date descending. Tapping a report navigates to a read-only detail view of the individual expense items.
User Story
Acceptance Criteria
- Given the user navigates to their expense history, when the repository query executes, then all of their previously submitted expense reports are listed in descending submission date order
- Given a submitted expense report exists, when the user views the history list, then each item shows the submission date, total reimbursement amount, and an approval status badge
- Given the user has no previous submissions, when the history screen loads, then an empty state message is displayed prompting them to submit their first claim
- Given the RLS policy is active, when the user queries the expense history, then only expense reports associated with their own user ID are returned
- Given the user taps a history item, when the detail view opens, then the individual expense line items (type, amount, receipt indicator) are shown in a read-only format
Business Value
Giving users visibility into their submitted claims and approval status reduces the volume of coordinator enquiries about claim status, as peer mentors can self-serve this information. It also builds trust in the system by making the process transparent and traceable, which is important for volunteer confidence in digital expense submission.
Components
- Expense Registration Screen ui
- Expense Repository data
- Expense Registration BLoC service