Expense Approval Query Service
Component Detail
Service Layer
medium complexity
backend
1
Dependencies
1
Dependents
4
Entities
0
Integrations
Description
Read-side backend service exposing a paginated, filterable REST endpoint that returns expense claims scoped to the authenticated approver's organization. Handles query parameter validation, builds efficient SQL with optional status, date range, and submitter filters, and returns normalized claim summaries with attachment counts for queue rendering.
expense-approval-query-service
Responsibilities
- Scope claim queries to the approver's organization using tenant isolation
- Accept and validate filter parameters (status, date range, submitter_id, page, limit)
- Return paginated claim summaries including claimant name, amount, type, date, and receipt count
- Provide a single-claim detail endpoint joining expense_items, expense_receipts, and declarations
- Support efficient cursor or offset pagination for large result sets
Interfaces
getClaimsQueue(organizationId, filters, pagination)
getClaimDetail(claimId, organizationId)
countPendingClaims(organizationId)
buildFilteredClaimQuery(filters)
paginateClaims(query, page, limit)
Relationships
Related Data Entities (4)
Data entities managed by this component