From 42b57c0e0e2d966bb289916f71133c86a7e98e91 Mon Sep 17 00:00:00 2001 From: James Cole Date: Sat, 9 Aug 2025 16:31:11 +0200 Subject: [PATCH] Migrate to optimized method. --- app/Helpers/Report/NetWorth.php | 4 ++-- app/Http/Controllers/Account/IndexController.php | 8 ++++---- app/Http/Controllers/Chart/AccountController.php | 8 ++++---- app/Repositories/Account/AccountTasker.php | 4 ++-- app/Support/Steam.php | 1 + 5 files changed, 13 insertions(+), 12 deletions(-) diff --git a/app/Helpers/Report/NetWorth.php b/app/Helpers/Report/NetWorth.php index 4e317d65eb..3bea16257b 100644 --- a/app/Helpers/Report/NetWorth.php +++ b/app/Helpers/Report/NetWorth.php @@ -78,7 +78,7 @@ class NetWorth implements NetWorthInterface $primary = Amount::getPrimaryCurrency(); $netWorth = []; Log::debug(sprintf('NetWorth: finalAccountsBalance("%s")', $date->format('Y-m-d H:i:s'))); - $balances = Steam::finalAccountsBalance($accounts, $date); + $balances = Steam::accountsBalancesOptimized($accounts, $date); /** @var Account $account */ foreach ($accounts as $account) { @@ -144,7 +144,7 @@ class NetWorth implements NetWorthInterface $accounts = $this->getAccounts(); $return = []; Log::debug(sprintf('SumNetWorth: finalAccountsBalance("%s")', $date->format('Y-m-d H:i:s'))); - $balances = Steam::finalAccountsBalance($accounts, $date); + $balances = Steam::accountsBalancesOptimized($accounts, $date); foreach ($accounts as $account) { $currency = $this->accountRepository->getAccountCurrency($account); $balance = $balances[$account->id]['balance'] ?? '0'; diff --git a/app/Http/Controllers/Account/IndexController.php b/app/Http/Controllers/Account/IndexController.php index 31ec4d033b..12e0e17262 100644 --- a/app/Http/Controllers/Account/IndexController.php +++ b/app/Http/Controllers/Account/IndexController.php @@ -95,8 +95,8 @@ class IndexController extends Controller $ids = $accounts->pluck('id')->toArray(); Log::debug(sprintf('inactive start: finalAccountsBalance("%s")', $start->format('Y-m-d H:i:s'))); Log::debug(sprintf('inactive end: finalAccountsBalance("%s")', $end->format('Y-m-d H:i:s'))); - $startBalances = Steam::finalAccountsBalance($accounts, $start); - $endBalances = Steam::finalAccountsBalance($accounts, $end); + $startBalances = Steam::accountsBalancesOptimized($accounts, $start); + $endBalances = Steam::accountsBalancesOptimized($accounts, $end); $activities = Steam::getLastActivities($ids); @@ -172,8 +172,8 @@ class IndexController extends Controller $ids = $accounts->pluck('id')->toArray(); Log::debug(sprintf('index start: finalAccountsBalance("%s")', $start->format('Y-m-d H:i:s'))); Log::debug(sprintf('index end: finalAccountsBalance("%s")', $end->format('Y-m-d H:i:s'))); - $startBalances = Steam::finalAccountsBalance($accounts, $start); - $endBalances = Steam::finalAccountsBalance($accounts, $end); + $startBalances = Steam::accountsBalancesOptimized($accounts, $start); + $endBalances = Steam::accountsBalancesOptimized($accounts, $end); $activities = Steam::getLastActivities($ids); diff --git a/app/Http/Controllers/Chart/AccountController.php b/app/Http/Controllers/Chart/AccountController.php index 63f80a2d92..b623637eb5 100644 --- a/app/Http/Controllers/Chart/AccountController.php +++ b/app/Http/Controllers/Chart/AccountController.php @@ -116,8 +116,8 @@ class AccountController extends Controller // grab all balances Log::debug(sprintf('expenseAccounts: finalAccountsBalance("%s")', $start->format('Y-m-d H:i:s'))); Log::debug(sprintf('expenseAccounts: finalAccountsBalance("%s")', $end->format('Y-m-d H:i:s'))); - $startBalances = Steam::finalAccountsBalance($accounts, $start, $this->primaryCurrency, $this->convertToPrimary); - $endBalances = Steam::finalAccountsBalance($accounts, $end, $this->primaryCurrency, $this->convertToPrimary); + $startBalances = Steam::accountsBalancesOptimized($accounts, $start, $this->primaryCurrency, $this->convertToPrimary); + $endBalances = Steam::accountsBalancesOptimized($accounts, $end, $this->primaryCurrency, $this->convertToPrimary); // loop the accounts, then check for balance and currency info. foreach ($accounts as $account) { @@ -656,8 +656,8 @@ class AccountController extends Controller // grab all balances Log::debug(sprintf('revAccounts: finalAccountsBalance("%s")', $start->format('Y-m-d H:i:s'))); Log::debug(sprintf('revAccounts: finalAccountsBalance("%s")', $end->format('Y-m-d H:i:s'))); - $startBalances = Steam::finalAccountsBalance($accounts, $start); - $endBalances = Steam::finalAccountsBalance($accounts, $end); + $startBalances = Steam::accountsBalancesOptimized($accounts, $start); + $endBalances = Steam::accountsBalancesOptimized($accounts, $end); // loop the accounts, then check for balance and currency info. diff --git a/app/Repositories/Account/AccountTasker.php b/app/Repositories/Account/AccountTasker.php index a8fda5196c..266446e3dd 100644 --- a/app/Repositories/Account/AccountTasker.php +++ b/app/Repositories/Account/AccountTasker.php @@ -52,8 +52,8 @@ class AccountTasker implements AccountTaskerInterface, UserGroupInterface $end->endOfDay(); // needs to be end of day to be correct. Log::debug(sprintf('getAccountReport: finalAccountsBalance("%s")', $yesterday->format('Y-m-d H:i:s'))); Log::debug(sprintf('getAccountReport: finalAccountsBalance("%s")', $end->format('Y-m-d H:i:s'))); - $startSet = Steam::finalAccountsBalance($accounts, $yesterday); - $endSet = Steam::finalAccountsBalance($accounts, $end); + $startSet = Steam::accountsBalancesOptimized($accounts, $yesterday); + $endSet = Steam::accountsBalancesOptimized($accounts, $end); Log::debug('Start of accountreport'); /** @var AccountRepositoryInterface $repository */ diff --git a/app/Support/Steam.php b/app/Support/Steam.php index 89eabef781..fafb6e05c3 100644 --- a/app/Support/Steam.php +++ b/app/Support/Steam.php @@ -321,6 +321,7 @@ class Steam public function accountsBalancesOptimized(Collection $accounts, Carbon $date, ?TransactionCurrency $primary = null, ?bool $convertToPrimary = null): array { + Log::debug(sprintf('accountsBalancesOptimized: Called with date/time "%s"', $date->toIso8601String())); $result = []; $convertToPrimary ??= Amount::convertToPrimary(); $primary ??= Amount::getPrimaryCurrency();