Feat: Fügt Benachrichtigungen für nicht überprüfte Transaktionen hinzu
This commit is contained in:
25
lib/Services/initializer.dart
Normal file
25
lib/Services/initializer.dart
Normal file
@@ -0,0 +1,25 @@
|
||||
import 'dart:async';
|
||||
|
||||
/// Ein Service zur vereinfachung, um darauf zu warten,
|
||||
/// dass etwas Initialisiert wurde
|
||||
class Initializer {
|
||||
bool _initialized = false;
|
||||
final Completer<void> _initializedCompleter = Completer<void>();
|
||||
|
||||
/// Gibt zurück, ob bereits initialisiert wurde
|
||||
bool get initialized => _initialized;
|
||||
|
||||
/// Auf diese Funktion kann gewartet werden,
|
||||
/// bis [Initializer] initialisiert wurde
|
||||
Future<void> waitUntilInitialized() => _initializedCompleter.future;
|
||||
|
||||
/// Setzt den [Initializer] auf initialisiert
|
||||
void setInitialized() {
|
||||
if (_initialized) {
|
||||
return;
|
||||
}
|
||||
|
||||
_initialized = true;
|
||||
_initializedCompleter.complete();
|
||||
}
|
||||
}
|
||||
29
lib/Services/transaction_service.dart
Normal file
29
lib/Services/transaction_service.dart
Normal file
@@ -0,0 +1,29 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import '../Entities/drift_database.dart';
|
||||
|
||||
/// Ein Service um Transaktionen zu verarbeiten
|
||||
class TransactionService {
|
||||
/// Wandelt die übergebenen Transaktionen in einen String um
|
||||
static String transactionsToString(final List<Transaction> transactions) {
|
||||
final List<Map<String, dynamic>> jsonTransactions = transactions
|
||||
.map((final value) => value.toJson())
|
||||
.toList();
|
||||
|
||||
return jsonEncode(jsonTransactions);
|
||||
}
|
||||
|
||||
/// Wandelt den String in eine Liste von Transaktionen um
|
||||
static List<Transaction> transactionsFromString(final String? transactions) {
|
||||
if (transactions == null) {
|
||||
return [];
|
||||
}
|
||||
|
||||
try {
|
||||
final List<dynamic> decoded = jsonDecode(transactions);
|
||||
return decoded.map((final item) => Transaction.fromJson(item)).toList();
|
||||
} on Exception {
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user