From 0656ccbdd9147b0c432737cd591840376540b83f Mon Sep 17 00:00:00 2001 From: James Cole Date: Sun, 19 Apr 2015 13:57:43 +0200 Subject: [PATCH] Fixed a bug where the query would include deleted transactions. --- app/Models/LimitRepetition.php | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/app/Models/LimitRepetition.php b/app/Models/LimitRepetition.php index 927d33b1f9..129e0a4901 100644 --- a/app/Models/LimitRepetition.php +++ b/app/Models/LimitRepetition.php @@ -1,5 +1,7 @@ leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id') - ->leftJoin('budget_transaction_journal', 'budget_transaction_journal.transaction_journal_id', '=', 'transaction_journals.id') - ->leftJoin('budget_limits', 'budget_limits.budget_id', '=', 'budget_transaction_journal.budget_id') - ->leftJoin('limit_repetitions', 'limit_repetitions.budget_limit_id', '=', 'budget_limits.id') - ->where('transaction_journals.date', '>=', $this->startdate->format('Y-m-d')) - ->where('transaction_journals.date', '<=', $this->enddate->format('Y-m-d')) - ->where('transactions.amount', '>', 0) - ->where('limit_repetitions.id', '=', $this->id) - ->sum('transactions.amount'); + $sum = DB::table('transactions') + ->leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id') + ->leftJoin('budget_transaction_journal', 'budget_transaction_journal.transaction_journal_id', '=', 'transaction_journals.id') + ->leftJoin('budget_limits', 'budget_limits.budget_id', '=', 'budget_transaction_journal.budget_id') + ->leftJoin('limit_repetitions', 'limit_repetitions.budget_limit_id', '=', 'budget_limits.id') + ->where('transaction_journals.date', '>=', $this->startdate->format('Y-m-d')) + ->where('transaction_journals.date', '<=', $this->enddate->format('Y-m-d')) + ->where('transaction_journals.user_id', Auth::user()->id) + ->whereNull('transactions.deleted_at') + ->where('transactions.amount', '>', 0) + ->where('limit_repetitions.id', '=', $this->id) + ->sum('transactions.amount'); return floatval($sum); }