This commit is contained in:
James Cole
2021-04-05 06:14:13 +02:00
parent 63ed3d09d5
commit 25dcb73e27
2 changed files with 10 additions and 4 deletions

View File

@@ -203,7 +203,7 @@ class OperationsRepository implements OperationsRepositoryInterface
];
$array[$currencyId]['transaction_journals'][$journalId] = [
'amount' => app('steam')->$direction($journal['amount']),
'amount' => app('steam')->$direction((string)$journal['amount']),
'date' => $journal['date'],
'transaction_journal_id' => $journalId,
'budget_name' => $journal['budget_name'],
@@ -364,7 +364,7 @@ class OperationsRepository implements OperationsRepositoryInterface
'currency_code' => $journal['currency_code'],
'currency_decimal_places' => $journal['currency_decimal_places'],
];
$array[$key]['sum'] = bcadd($array[$key]['sum'], app('steam')->$method($journal['amount']));
$array[$key]['sum'] = bcadd($array[$key]['sum'], app('steam')->$method((string)$journal['amount']));
// also do foreign amount:
if (0 !== (int)$journal['foreign_currency_id']) {
@@ -379,7 +379,7 @@ class OperationsRepository implements OperationsRepositoryInterface
'currency_code' => $journal['foreign_currency_code'],
'currency_decimal_places' => $journal['foreign_currency_decimal_places'],
];
$array[$key]['sum'] = bcadd($array[$key]['sum'], app('steam')->$method($journal['foreign_amount']));
$array[$key]['sum'] = bcadd($array[$key]['sum'], app('steam')->$method((string)$journal['foreign_amount']));
}
}

View File

@@ -493,6 +493,9 @@ class Steam
*/
public function negative(string $amount): string
{
if ('' === $amount) {
return '0';
}
if (1 === bccomp($amount, '0')) {
$amount = bcmul($amount, '-1');
}
@@ -554,6 +557,9 @@ class Steam
*/
public function positive(string $amount): string
{
if ('' === $amount) {
return '0';
}
if (bccomp($amount, '0') === -1) {
$amount = bcmul($amount, '-1');
}