diff --git a/app/Repositories/Bill/BillRepository.php b/app/Repositories/Bill/BillRepository.php index 5c4f2b806c..abc6c05412 100644 --- a/app/Repositories/Bill/BillRepository.php +++ b/app/Repositories/Bill/BillRepository.php @@ -458,7 +458,7 @@ class BillRepository implements BillRepositoryInterface //Log::debug(sprintf('Dates = %d, journalCount = %d, total = %d', $dates->count(), $count, $total)); if ($total > 0) { - $average = bcdiv(bcadd($bill->amount_max, $bill->amount_min), '2'); + $average = bcdiv(bcadd((string) $bill->amount_max, (string) $bill->amount_min), '2'); $multi = bcmul($average, (string) $total); $return[$currencyId] = $return[$currencyId] ?? '0'; $return[$currencyId] = bcadd($return[$currencyId], $multi); diff --git a/app/Repositories/PiggyBank/PiggyBankRepository.php b/app/Repositories/PiggyBank/PiggyBankRepository.php index 9acd034ec8..e74d486dd3 100644 --- a/app/Repositories/PiggyBank/PiggyBankRepository.php +++ b/app/Repositories/PiggyBank/PiggyBankRepository.php @@ -341,7 +341,8 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface } if (null !== $piggyBank->targetdate && $repetition->currentamount < $piggyBank->targetamount) { $now = Carbon::now(); - $diffInMonths = $now->diffInMonths($piggyBank->targetdate, false); + $startDate = null !== $piggyBank->startdate && $piggyBank->startdate->gte($now) ? $piggyBank->startdate : $now; + $diffInMonths = $startDate->diffInMonths($piggyBank->targetdate, false); $remainingAmount = bcsub($piggyBank->targetamount, $repetition->currentamount); // more than 1 month to go and still need money to save: diff --git a/app/Transformers/TransactionGroupTransformer.php b/app/Transformers/TransactionGroupTransformer.php index 553c03ef5d..6868f45957 100644 --- a/app/Transformers/TransactionGroupTransformer.php +++ b/app/Transformers/TransactionGroupTransformer.php @@ -353,7 +353,7 @@ class TransactionGroupTransformer extends AbstractTransformer $source = $this->getSourceTransaction($journal); $destination = $this->getDestinationTransaction($journal); $type = $journal->transactionType->type; - $amount = $this->getAmount($type, $source->amount); + $amount = $this->getAmount($type, (string) $source->amount); $foreignAmount = $this->getForeignAmount($type, $source->foreign_amount); $metaFieldData = $this->groupRepos->getMetaFields($journal->id, $this->metaFields); $metaDates = $this->getDates($this->groupRepos->getMetaDateFields($journal->id, $this->metaDateFields));