Commit Graph

13 Commits

Author SHA1 Message Date
Achintha Isuru
4834266986 feat: add entities for staff personal info, reports, shifts, and user sessions
- Implemented StaffPersonalInfo entity for staff profile data.
- Created ReportSummary entity for summarizing report metrics.
- Added SpendReport and SpendDataPoint entities for spend reporting.
- Introduced AssignedShift, CancelledShift, CompletedShift, OpenShift, PendingAssignment, ShiftDetail, TodayShift entities for shift management.
- Developed ClientSession and StaffSession entities for user session management.
2026-03-16 15:59:22 -04:00
Achintha Isuru
28a219bbea Refactor clock-in feature: Introduce validation pipeline and interaction strategies
- Added a validation pipeline for clock-in actions, including geofence, time window, and override notes validators.
- Created a context class for passing validation data and results.
- Implemented check-in interaction strategies for swipe and NFC methods, encapsulating their UI and behavior.
- Removed redundant utility functions and centralized time formatting in a new utility file.
- Enhanced the notification service to handle clock-in and clock-out notifications separately.
- Updated the ClockInBloc to utilize the new validation and notification services.
- Cleaned up the ClockInActionSection widget to use the new interaction strategies and removed unnecessary listeners.
2026-03-14 19:58:43 -04:00
Achintha Isuru
7b576c0ed4 feat: Implement notification and storage services, geofence management, and BLoC for geofence verification
- Add NotificationService for handling local notifications.
- Introduce StorageService for key-value storage using SharedPreferences.
- Create DeviceLocation model to represent geographic locations.
- Define LocationPermissionStatus enum for managing location permissions.
- Implement BackgroundGeofenceService for periodic geofence checks while clocked in.
- Develop GeofenceServiceImpl for geofence proximity verification using LocationService.
- Create GeofenceResult model to encapsulate geofence check results.
- Define GeofenceServiceInterface for geofence service abstraction.
- Implement GeofenceBloc to manage geofence verification and background tracking.
- Create events and states for GeofenceBloc to handle various geofence scenarios.
- Add GeofenceStatusBanner widget to display geofence verification status in the UI.
2026-03-13 16:01:26 -04:00
Achintha Isuru
9d25fd44cc Add rapid order parsing & audio recording
Add support for transcribing and parsing rapid (urgent) orders into one-time order drafts. Introduces ParseRapidOrderTextToOrderUseCase and wiring for TranscribeRapidOrderUseCase, implements parseRapidOrder and transcribeRapidOrder in the client repository, and injects these into the RapidOrderBloc and module. Adds the record package dependency and registers the record plugin for iOS/macOS targets. Updates OneTimeOrder state, bloc and views to handle rapid-order drafts and navigate to the one-time order flow after parsing. Also includes small formatting and navigator changes.
2026-02-27 13:16:11 -05:00
Achintha Isuru
6eafba311b refactor: Implement custom DioClient with AuthInterceptor and strongly typed API service responses. 2026-02-25 15:10:44 -05:00
Achintha Isuru
19b82ff73a feat: device services implemented 2026-02-25 12:39:25 -05:00
Achintha Isuru
71c1610c0e feat: Implement ApiService with Dio for standardized API requests and responses using ApiResponse entity. 2026-02-25 10:05:41 -05:00
Achintha Isuru
12211e54e2 refactor: Reorder pubspec.yaml dependencies, update SavingsCard text to a hardcoded value, and add scripts/issues-to-create.md to .gitignore. 2026-02-25 09:38:13 -05:00
c1112ac01c feat: Centralized Error Handling & Crash Fixes 2026-02-11 18:52:23 +05:30
7570ffa3b9 Fix: Resolve critical linting issues and bugs (concurrency, syntax, dead code) 2026-02-10 19:12:01 +05:30
Achintha Isuru
62bed9fdbf feat: Update NEXT_SPRINT_TASKS with new tasks and fixes; add routing and navigation extensions for Client and Staff applications 2026-02-04 16:14:57 -05:00
Achintha Isuru
40c43b06cc feat: Integrate krow_core package and update WebMobileFrame widget for improved structure 2026-02-01 15:50:04 -05:00
Achintha Isuru
cf59935ec8 Move apps to mobile directory structure
Relocated all app directories (client, design_system_viewer, staff) and their contents under the new 'apps/mobile' path. This change improves project organization and prepares for future platform-specific structuring.
2026-01-22 10:17:19 -05:00