diff --git a/app/Http/Controllers/Account/IndexController.php b/app/Http/Controllers/Account/IndexController.php index 15829a575f..7ca768cafa 100644 --- a/app/Http/Controllers/Account/IndexController.php +++ b/app/Http/Controllers/Account/IndexController.php @@ -93,6 +93,8 @@ class IndexController extends Controller $endBalances = app('steam')->finalAccountsBalance($accounts, $end); $activities = app('steam')->getLastActivities($ids); + + $accounts->each( function (Account $account) use ($activities, $startBalances, $endBalances): void { $account->lastActivityDate = $this->isInArrayDate($activities, $account->id); @@ -152,7 +154,6 @@ class IndexController extends Controller $startBalances = app('steam')->finalAccountsBalance($accounts, $start); $endBalances = app('steam')->finalAccountsBalance($accounts, $end); $activities = app('steam')->getLastActivities($ids); - $accounts->each( function (Account $account) use ($activities, $startBalances, $endBalances): void { $interest = (string) $this->repository->getMetaValue($account, 'interest'); diff --git a/app/Http/Controllers/Chart/AccountController.php b/app/Http/Controllers/Chart/AccountController.php index 836e0d7997..828c4ffe5f 100644 --- a/app/Http/Controllers/Chart/AccountController.php +++ b/app/Http/Controllers/Chart/AccountController.php @@ -114,7 +114,9 @@ class AccountController extends Controller $accountId = (int) $accountId; // loop each expense entry (each entry can be a different currency). foreach ($expenses as $currencyCode => $endAmount) { - + if(3 !== strlen($currencyCode)) { + continue; + } // see if there is an accompanying start amount. // grab the difference and find the currency. $startAmount = (string) ($startBalances[$accountId][$currencyCode] ?? '0'); @@ -514,6 +516,9 @@ class AccountController extends Controller $accountId = (int) $accountId; // loop each expense entry (each entry can be a different currency). foreach ($expenses as $currencyCode => $endAmount) { + if(3 !== strlen($currencyCode)) { + continue; + } // see if there is an accompanying start amount. // grab the difference and find the currency. diff --git a/app/Support/Http/Controllers/BasicDataSupport.php b/app/Support/Http/Controllers/BasicDataSupport.php index 5ffdb834bc..bbd35dad87 100644 --- a/app/Support/Http/Controllers/BasicDataSupport.php +++ b/app/Support/Http/Controllers/BasicDataSupport.php @@ -46,6 +46,6 @@ trait BasicDataSupport */ protected function isInArrayDate(array $array, int $entryId): ?Carbon { - return $array[$entryId]['balance'] ?? null; + return $array[$entryId] ?? null; } } diff --git a/app/Support/Steam.php b/app/Support/Steam.php index bf61a6c5da..b245dfdcfa 100644 --- a/app/Support/Steam.php +++ b/app/Support/Steam.php @@ -282,10 +282,10 @@ class Steam ->where('transactions.transaction_currency_id', $currency->id) ->get(['transactions.amount'])->toArray(); $return['balance'] = $this->sumTransactions($array, 'amount'); - Log::debug(sprintf('balance is %s', $return['balance'])); + //Log::debug(sprintf('balance is %s', $return['balance'])); // add virtual balance: $return['balance'] = bcadd('' === (string) $account->virtual_balance ? '0' : $account->virtual_balance, $return['balance']); - Log::debug(sprintf('balance is %s (with virtual balance)', $return['balance'])); + //Log::debug(sprintf('balance is %s (with virtual balance)', $return['balance'])); // then, native balance (if necessary( if ($native->id !== $currency->id) { @@ -294,9 +294,9 @@ class Steam ->where('transaction_journals.date', '<=', $date->format('Y-m-d H:i:s')) ->get(['transactions.native_amount'])->toArray(); $return['native_balance'] = $this->sumTransactions($array, 'native_amount'); - Log::debug(sprintf('native_balance is %s', $return['native_balance'])); +// Log::debug(sprintf('native_balance is %s', $return['native_balance'])); $return['native_balance'] = bcadd('' === (string) $account->native_virtual_balance ? '0' : $account->native_virtual_balance, $return['balance']); - Log::debug(sprintf('native_balance is %s (with virtual balance)', $return['native_balance'])); +// Log::debug(sprintf('native_balance is %s (with virtual balance)', $return['native_balance'])); } // balance(s) in other currencies. @@ -306,7 +306,7 @@ class Steam ->where('transaction_journals.date', '<=', $date->format('Y-m-d H:i:s')) ->get(['transaction_currencies.code', 'transactions.amount'])->toArray(); $others = $this->groupAndSumTransactions($array, 'code', 'amount'); - Log::debug('All others are (joined)', $others); +// Log::debug('All others are (joined)', $others); return array_merge($return, $others); } @@ -356,7 +356,7 @@ class Steam foreach ($set as $entry) { $date = new Carbon($entry->max_date, config('app.timezone')); $date->setTimezone(config('app.timezone')); - $list[$entry->account_id] = $date; + $list[(int)$entry->account_id] = $date; } return $list;