diff --git a/app/Events/Model/TransactionGroup/TransactionGroupEventFlags.php b/app/Events/Model/TransactionGroup/TransactionGroupEventFlags.php index 638d20ad27..bebf0d1cd2 100644 --- a/app/Events/Model/TransactionGroup/TransactionGroupEventFlags.php +++ b/app/Events/Model/TransactionGroup/TransactionGroupEventFlags.php @@ -30,5 +30,5 @@ class TransactionGroupEventFlags public bool $fireWebhooks = true; public bool $batchSubmission = false; public bool $recalculateCredit = true; - public bool $unifyOnly = false; + public bool $unifyOnly = false; } diff --git a/app/Listeners/Model/TransactionGroup/ProcessesUpdatedTransactionGroup.php b/app/Listeners/Model/TransactionGroup/ProcessesUpdatedTransactionGroup.php index f63b890986..49b15be0fa 100644 --- a/app/Listeners/Model/TransactionGroup/ProcessesUpdatedTransactionGroup.php +++ b/app/Listeners/Model/TransactionGroup/ProcessesUpdatedTransactionGroup.php @@ -71,7 +71,6 @@ class ProcessesUpdatedTransactionGroup $this->recalculateRunningBalance($event->objects); } - Log::debug('Done with handle() for UpdatedSingleTransactionGroup'); } @@ -88,6 +87,7 @@ class ProcessesUpdatedTransactionGroup $effect += $this->unifyAccountsForGroup($group); } Log::debug(sprintf('Done with unifyAccounts(%d)', $effect)); + return $effect; } @@ -101,13 +101,14 @@ class ProcessesUpdatedTransactionGroup // first journal: /** @var null|TransactionJournal $first */ - $first = $group + $first = $group ->transactionJournals() ->orderBy('transaction_journals.date', 'DESC') ->orderBy('transaction_journals.order', 'ASC') ->orderBy('transaction_journals.id', 'DESC') ->orderBy('transaction_journals.description', 'DESC') - ->first(); + ->first() + ; if (null === $first) { Log::warning(sprintf('Group #%d has no transaction journals.', $group->id)); @@ -115,29 +116,31 @@ class ProcessesUpdatedTransactionGroup return 0; } - $all = $group->transactionJournals()->get()->pluck('id')->toArray(); + $all = $group->transactionJournals()->get()->pluck('id')->toArray(); /** @var Account $sourceAccount */ $sourceAccount = $first->transactions()->where('amount', '<', '0')->first()->account; /** @var Account $destAccount */ - $destAccount = $first->transactions()->where('amount', '>', '0')->first()->account; + $destAccount = $first->transactions()->where('amount', '>', '0')->first()->account; - $type = $first->transactionType->type; - $effect = 0; + $type = $first->transactionType->type; + $effect = 0; if (TransactionTypeEnum::TRANSFER->value === $type || TransactionTypeEnum::WITHDRAWAL->value === $type) { // set all source transactions to source account: $effect += Transaction::whereIn('transaction_journal_id', $all) - ->where('account_id', '!=', $sourceAccount->id) - ->where('amount', '<', 0) - ->update(['account_id' => $sourceAccount->id]); + ->where('account_id', '!=', $sourceAccount->id) + ->where('amount', '<', 0) + ->update(['account_id' => $sourceAccount->id]) + ; } if (TransactionTypeEnum::TRANSFER->value === $type || TransactionTypeEnum::DEPOSIT->value === $type) { // set all destination transactions to destination account: $effect += Transaction::whereIn('transaction_journal_id', $all) - ->where('account_id', '!=', $destAccount->id) - ->where('amount', '>', 0) - ->update(['account_id' => $destAccount->id]); + ->where('account_id', '!=', $destAccount->id) + ->where('amount', '>', 0) + ->update(['account_id' => $destAccount->id]) + ; } if (0 === $effect) { Log::debug(sprintf('Had nothing to do in unifyAccounts(#%d)', $group->id)); @@ -145,6 +148,7 @@ class ProcessesUpdatedTransactionGroup return 0; } Log::debug(sprintf('Updated %d transaction(s) in unifyAccounts(#%d)', $effect, $group->id)); + return $effect; } } diff --git a/composer.lock b/composer.lock index 99ddce139e..8094e55215 100644 --- a/composer.lock +++ b/composer.lock @@ -11220,16 +11220,16 @@ }, { "name": "php-debugbar/php-debugbar", - "version": "v3.5.1", + "version": "v3.6.0", "source": { "type": "git", "url": "https://github.com/php-debugbar/php-debugbar.git", - "reference": "486b32fd98efe9a3c10f0b24c0caabc187f78f04" + "reference": "31f7d2e7943a82e72a670335d408d967b05efa5a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-debugbar/php-debugbar/zipball/486b32fd98efe9a3c10f0b24c0caabc187f78f04", - "reference": "486b32fd98efe9a3c10f0b24c0caabc187f78f04", + "url": "https://api.github.com/repos/php-debugbar/php-debugbar/zipball/31f7d2e7943a82e72a670335d408d967b05efa5a", + "reference": "31f7d2e7943a82e72a670335d408d967b05efa5a", "shasum": "" }, "require": { @@ -11306,7 +11306,7 @@ ], "support": { "issues": "https://github.com/php-debugbar/php-debugbar/issues", - "source": "https://github.com/php-debugbar/php-debugbar/tree/v3.5.1" + "source": "https://github.com/php-debugbar/php-debugbar/tree/v3.6.0" }, "funding": [ { @@ -11318,7 +11318,7 @@ "type": "github" } ], - "time": "2026-03-05T20:37:33+00:00" + "time": "2026-03-29T17:26:18+00:00" }, { "name": "php-debugbar/symfony-bridge", diff --git a/config/firefly.php b/config/firefly.php index 9b785e8045..047236f49c 100644 --- a/config/firefly.php +++ b/config/firefly.php @@ -79,7 +79,7 @@ return [ // see cer.php for exchange rates feature flag. ], 'version' => 'develop/2026-03-29', - 'build_time' => 1774795378, + 'build_time' => 1774808978, 'api_version' => '2.1.0', // field is no longer used. 'db_version' => 28, // field is no longer used.