Only trigger running balance when amount actually changes.

This commit is contained in:
James Cole
2025-05-31 07:22:42 +02:00
parent 3344d2e5f3
commit d465b51da8
14 changed files with 188 additions and 155 deletions

View File

@@ -432,4 +432,19 @@ class TransactionGroupRepository implements TransactionGroupRepositoryInterface,
return $service->update($transactionGroup, $data);
}
public function getTotalAmount(TransactionGroup $group): string
{
$sum = '0';
/** @var TransactionJournal $journal */
foreach($group->transactionJournals as $journal) {
/** @var Transaction $transaction */
foreach($journal->transactions as $transaction) {
if(-1 === bccomp('0', (string) $transaction->amount)) {
$sum = bcadd($sum, $transaction->amount);
}
}
}
return $sum;
}
}

View File

@@ -49,6 +49,8 @@ interface TransactionGroupRepositoryInterface
{
public function countAttachments(int $journalId): int;
public function getTotalAmount(TransactionGroup $group): string;
public function destroy(TransactionGroup $group): void;
/**