diff options
| author | Aldrik Ramaekers <aldrik@amftech.nl> | 2022-08-17 13:54:48 +0200 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrik@amftech.nl> | 2022-08-17 13:54:48 +0200 |
| commit | 8ed1b574e8b5e9fc806aedc87af7aabcf73da6e6 (patch) | |
| tree | 5126fb297b9df2829b6b34f966f615183b4c73af /lib/services/local_shift_provider_service.dart | |
| parent | 3d25fdc99fd37f3b5e37f25b7a38804a02130426 (diff) | |
b0.2
Diffstat (limited to 'lib/services/local_shift_provider_service.dart')
| -rw-r--r-- | lib/services/local_shift_provider_service.dart | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/lib/services/local_shift_provider_service.dart b/lib/services/local_shift_provider_service.dart index 263d747..2d00a1e 100644 --- a/lib/services/local_shift_provider_service.dart +++ b/lib/services/local_shift_provider_service.dart @@ -8,9 +8,7 @@ import 'package:in_date_utils/in_date_utils.dart' as DateUtilities; import 'package:path_provider/path_provider.dart'; class LocalShiftProviderService extends IProgramProviderService { - LocalShiftProviderService() { - writeShiftsFromFile([]); - } + LocalShiftProviderService() {} Future<String> get _localPath async { final directory = await getApplicationDocumentsDirectory(); @@ -19,6 +17,15 @@ class LocalShiftProviderService extends IProgramProviderService { Future<File> get _localFile async { final path = await _localPath; + File file = File('$path/shifts.json'); + + bool exists = await file.exists(); + if (!exists) { + print('created shifts.json'); + await file.create(); + await writeShiftsFromFile([]); + } + return File('$path/shifts.json'); } @@ -67,16 +74,17 @@ class LocalShiftProviderService extends IProgramProviderService { } @override - Future<void> addShift(Shift shift) async { + Future<bool> addShift(Shift shift) async { List<Shift> savedShifts = await readShiftsFromFile(); for (var item in savedShifts) { if (DateUtilities.DateUtils.isSameDay(shift.start, item.start)) { - return; + return false; } } savedShifts.add(shift); await writeShiftsFromFile(savedShifts); + return true; } @override |
