From 52824a545903bfb0600fb08a14ff6e4452abe9a1 Mon Sep 17 00:00:00 2001 From: DragonSlayer_14 Date: Fri, 2 Jan 2026 00:53:36 +0100 Subject: [PATCH] =?UTF-8?q?Feat:=20F=C3=BCgt=20das=20automatische=20Setzen?= =?UTF-8?q?=20der=20updatedAt=20in=20die=20Repositories=20hinzu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/Repositories/account_repository.dart | 11 +++++++++-- .../recurring_transacation_repository.dart | 18 ++++++++++++++++-- lib/Repositories/transaction_repository.dart | 16 ++++++++++++++-- 3 files changed, 39 insertions(+), 6 deletions(-) diff --git a/lib/Repositories/account_repository.dart b/lib/Repositories/account_repository.dart index cca9478..4cd90b2 100644 --- a/lib/Repositories/account_repository.dart +++ b/lib/Repositories/account_repository.dart @@ -14,8 +14,15 @@ class AccountRepository { } /// Aktualisiert ein Konto in der Datenbank - Future update(final AccountsCompanion account) => - _db.update(_db.accounts).replace(account); + Future update(final AccountsCompanion account) { + final AccountsCompanion accountToUpdate = AccountsCompanion( + id: account.id, + name: account.name, + updatedAt: Value(DateTime.now()), + ); + + return _db.update(_db.accounts).replace(accountToUpdate); + } /// Entfernt ein Konto aus der Datenbank Future remove(final Account account) => (_db.delete( diff --git a/lib/Repositories/recurring_transacation_repository.dart b/lib/Repositories/recurring_transacation_repository.dart index c949b1c..00a809a 100644 --- a/lib/Repositories/recurring_transacation_repository.dart +++ b/lib/Repositories/recurring_transacation_repository.dart @@ -20,8 +20,22 @@ class RecurringTransactionRepository { /// Aktualisiert eine wiederkehrende Transaktion in der Datenbank Future update( - final RecurringTransactionsCompanion recurringTransaction, - ) => _db.update(_db.recurringTransactions).replace(recurringTransaction); + final RecurringTransactionsCompanion recurringTransaction,) { + final RecurringTransactionsCompanion recurringTransactionToUpdate = + RecurringTransactionsCompanion( + id: recurringTransaction.id, + name: recurringTransaction.name, + startDate: recurringTransaction.startDate, + timeFrame: recurringTransaction.timeFrame, + amount: recurringTransaction.amount, + accountId: recurringTransaction.accountId, + updatedAt: Value(DateTime.now()), + ); + + return _db + .update(_db.recurringTransactions) + .replace(recurringTransactionToUpdate); + } /// Entfernt eine wiederkehrende Transaktion aus der Datenbank Future remove(final RecurringTransaction recurringTransaction) => diff --git a/lib/Repositories/transaction_repository.dart b/lib/Repositories/transaction_repository.dart index a457569..dcc2a26 100644 --- a/lib/Repositories/transaction_repository.dart +++ b/lib/Repositories/transaction_repository.dart @@ -14,8 +14,20 @@ class TransactionRepository { } /// Aktualisiert eine Transaktion in der Datenbank - Future update(final TransactionsCompanion transaction) => - _db.update(_db.transactions).replace(transaction); + Future update(final TransactionsCompanion transaction) { + final TransactionsCompanion transactionToUpdate = TransactionsCompanion( + id: transaction.id, + name: transaction.name, + date: transaction.date, + amount: transaction.amount, + checked: transaction.checked, + accountId: transaction.accountId, + recurringTransactionId: transaction.recurringTransactionId, + updatedAt: Value(DateTime.now()), + ); + + return _db.update(_db.transactions).replace(transactionToUpdate); + } /// Entfernt eine Transaktion aus der Datenbank Future remove(final Transaction transaction) => (_db.delete(