Data Layer medium complexity Shared Component mobile
0
Dependencies
1
Dependents
2
Entities
0
Integrations

Description

Data access layer for activity records supporting both online REST API writes and offline local SQLite reads. Shared with the simple activity logging feature. Manages optimistic writes, conflict resolution during sync, and activity query filtering by user, date range, and contact.

Feature: Activity Registration Wizard

activity-repository

Responsibilities

  • Create and update activity records via REST API
  • Cache activities in local SQLite for offline access
  • Queue writes when offline and flush on reconnection
  • Provide filtered activity queries by user, date, and contact
  • Handle conflict resolution on sync

Interfaces

createActivity(Activity activity)
updateActivity(String id, Activity activity)
deleteActivity(String id)
getById(String id)
getByUser(String userId, {DateRange? range})
getByContact(String contactId)
getByDateRange(DateRange range)
syncPendingActivities()
getPendingCount()

Relationships

Dependents (1)

Components that depend on this component

Related Data Entities (2)

Data entities managed by this component