From 3bf6891e1ca1d53a90ba4550dbf6d259bf7a43e2 Mon Sep 17 00:00:00 2001 From: James Cole Date: Sat, 1 Aug 2020 15:08:39 +0200 Subject: [PATCH] Fix #3630 --- app/Jobs/CreateAutoBudgetLimits.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/Jobs/CreateAutoBudgetLimits.php b/app/Jobs/CreateAutoBudgetLimits.php index fc33cf2ba9..b2cd983b75 100644 --- a/app/Jobs/CreateAutoBudgetLimits.php +++ b/app/Jobs/CreateAutoBudgetLimits.php @@ -151,7 +151,7 @@ class CreateAutoBudgetLimits implements ShouldQueue $repository = app(OperationsRepositoryInterface::class); $repository->setUser($autoBudget->budget->user); $spent = $repository->sumExpenses($previousStart, $previousEnd, null, new Collection([$autoBudget->budget]), $autoBudget->transactionCurrency); - $currencyId = (int) $autoBudget->transaction_currency_id; + $currencyId = (int)$autoBudget->transaction_currency_id; $spentAmount = $spent[$currencyId]['sum'] ?? '0'; Log::debug(sprintf('Spent in previous budget period (%s-%s) is %s', $previousStart->format('Y-m-d'), $previousEnd->format('Y-m-d'), $spentAmount)); @@ -200,6 +200,11 @@ class CreateAutoBudgetLimits implements ShouldQueue */ private function handleAutoBudget(AutoBudget $autoBudget): void { + if (null === $autoBudget->budget) { + Log::info(sprintf('Auto budget #%d is associated with a deleted budget.', $autoBudget->id)); + $autoBudget->delete(); + return; + } if (!$this->isMagicDay($autoBudget)) { Log::info( sprintf( @@ -255,8 +260,8 @@ class CreateAutoBudgetLimits implements ShouldQueue /** * @param AutoBudget $autoBudget * - * @throws FireflyException * @return bool + * @throws FireflyException */ private function isMagicDay(AutoBudget $autoBudget): bool {