working on update of transactions

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
2026-04-10 09:30:41 +02:00
parent 90a7c5dd18
commit 0c6e5850d2
4 changed files with 33 additions and 12 deletions

View File

@@ -159,11 +159,9 @@ public class AccountingModule extends BaseHandler implements AccountingService {
var transaction = accountDb.loadTransaction(transactionId);
LOG.log(WARNING,"Missing permission check in patchTransaction(…)!");
var json = json(ex);
if (json.has(Field.DATE)){
var date = LocalDate.parse(json.getString(Field.DATE));
transaction.date(date);
accountDb.save(transaction);
}
if (json.has(Field.DATE)) transaction.date(LocalDate.parse(json.getString(Field.DATE)));
if (json.has(Field.PURPOSE)) transaction.purpose(json.getString(Field.PURPOSE));
accountDb.save(transaction);
return sendContent(ex,transaction);
}

View File

@@ -217,12 +217,12 @@ public class SqliteDb extends BaseDb implements AccountDb {
} catch (SQLException e) {
throw failedToStoreObject(transaction);
}
} else {
} else if (transaction.isDirty()) {
try {
Query.replaceInto(TABLE_TRANSACTIONS, Field.ID, Field.ACCOUNT, Field.TIMESTAMP, Field.SOURCE, Field.DESTINATION, Field.AMOUNT, Field.DESCRIPTION)
.values(transaction.id(), transaction.accountId(), timestamp, transaction.source().value(), transaction.destination().value(), transaction.amount(), transaction.purpose())
.execute(db).close();
return transaction;
return transaction.clearDirtyState();
} catch (SQLException e) {
throw failedToStoreObject(transaction);
}