From d18231966ccd1b17bfa538cc1a222d90c8933d48 Mon Sep 17 00:00:00 2001 From: Crondung <1922635@stud.hs-mannheim.de> Date: Mon, 6 Mar 2023 18:39:36 +0100 Subject: [PATCH] fix scanner, try catch export --- lib/models/settings.dart | 2 +- lib/services/export_service.dart | 18 ++++++++++++------ lib/services/settings_service.dart | 3 +-- lib/widgets/scanner.dart | 7 +++++-- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/lib/models/settings.dart b/lib/models/settings.dart index dfa79be..1954cc8 100644 --- a/lib/models/settings.dart +++ b/lib/models/settings.dart @@ -19,7 +19,7 @@ class Settings { chessTime = json['chess_time'] != null ? TimeConfig.fromJson(json['chess_time']) : null, - startedAt = DateTime.parse(json['startedAt']); + startedAt = DateTime.now(); } class QueryConfig { diff --git a/lib/services/export_service.dart b/lib/services/export_service.dart index 9758270..223ecf3 100644 --- a/lib/services/export_service.dart +++ b/lib/services/export_service.dart @@ -33,11 +33,17 @@ class ExportService { Future exportData() async { Map> body = await _loadRecords(); - final response = await http.post(url, - headers: { - 'Content-Type': 'application/json; charset=UTF-8', - }, - body: jsonEncode(body)); - return response.statusCode >= 400 ? 0 : 1; + try { + final response = await http.post(url, + headers: { + 'Content-Type': 'application/json; charset=UTF-8', + }, + body: jsonEncode(body)); + return response.statusCode >= 400 ? 0 : 1; + } catch (e) { + // ignore: avoid_print + print(jsonEncode(body)); + return 0; + } } } diff --git a/lib/services/settings_service.dart b/lib/services/settings_service.dart index ec8a656..7349c75 100644 --- a/lib/services/settings_service.dart +++ b/lib/services/settings_service.dart @@ -49,7 +49,6 @@ Future?> _getStringListSetting(String settingKey) => Future loadSettingsFromLocalJSON() async { Map configJSON = await loadLocalConfigJSON(); - configJSON['startedAt'] = DateTime.now().toIso8601String(); Settings settings = Settings.fromJson(configJSON); saveSettings(settings); } @@ -63,7 +62,7 @@ void saveSettings(Settings settings) { _setStringListSetting('sleep_query_days', settings.sleepQuery!.days!); _setIntSetting('sleep_query_hours', settings.sleepQuery!.hours!); _setIntSetting('sleep_query_minutes', settings.sleepQuery!.minutes!); - _setStringSetting('startedAt', DateTime.now().toIso8601String()); + _setStringSetting('startedAt', settings.startedAt.toIso8601String()); if (settings.chessTime != null) { _setIntSetting('chess_hours', settings.chessTime!.hours!); _setIntSetting('chess_minutes', settings.chessTime!.minutes!); diff --git a/lib/widgets/scanner.dart b/lib/widgets/scanner.dart index c292bf4..0eed1e4 100644 --- a/lib/widgets/scanner.dart +++ b/lib/widgets/scanner.dart @@ -16,7 +16,8 @@ class MyScanner extends StatelessWidget { Widget build(BuildContext context) { SettingsProvider settingsProvider = context.watch(); - void handleSucces(String? rawValue) { + void handleSuccess(String? rawValue) { + print('in Success: $rawValue'); String qrText = rawValue!; Map json = stringToJSON(qrText); Settings settings = Settings.fromJson(json); @@ -49,10 +50,12 @@ class MyScanner extends StatelessWidget { final List barcodes = capture.barcodes; for (final barcode in barcodes) { if (barcode.rawValue != null) { - return handleSucces(barcode.rawValue); + print(barcode.rawValue); + return handleSuccess(barcode.rawValue); } } } catch (e) { + print(e); handleError(); } }