diff --git a/app/controllers/GoogleChartController.php b/app/controllers/GoogleChartController.php index eb6bfab8e8..88c405d9ed 100644 --- a/app/controllers/GoogleChartController.php +++ b/app/controllers/GoogleChartController.php @@ -47,7 +47,6 @@ class GoogleChartController extends BaseController $this->_chart->addColumn('Day of month', 'date'); $this->_chart->addColumn('Balance for ' . $account->name, 'number'); - // TODO this can be combined in some method, it's coming up quite often, is it? $start = $this->_start; $end = $this->_end; $count = $account->transactions()->count(); @@ -62,7 +61,6 @@ class GoogleChartController extends BaseController $start = new Carbon($first->date); $end = new Carbon($last->date); } - // todo until this part. $current = clone $start; diff --git a/app/lib/FireflyIII/Database/TransactionJournal/TransactionJournal.php b/app/lib/FireflyIII/Database/TransactionJournal/TransactionJournal.php index ab476a09b6..0d76c4e984 100644 --- a/app/lib/FireflyIII/Database/TransactionJournal/TransactionJournal.php +++ b/app/lib/FireflyIII/Database/TransactionJournal/TransactionJournal.php @@ -468,24 +468,24 @@ class TransactionJournal implements TransactionJournalInterface, CUD, CommonData } /** + * TODO This query includes incomes to "shared" accounts which arent income. + * * @param Carbon $date * * @return float */ public function getSumOfIncomesByMonth(Carbon $date) { - $end = clone $date; - $date->startOfMonth(); - $end->endOfMonth(); + /** @var \FireflyIII\Report\ReportInterface $reportRepository */ + $reportRepository = \App::make('FireflyIII\Report\ReportInterface'); - $sum = \DB::table('transactions')->leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id')->leftJoin( - 'transaction_types', 'transaction_journals.transaction_type_id', '=', 'transaction_types.id' - )->where('amount', '>', 0)->where('transaction_types.type', '=', 'Deposit')->where('transaction_journals.date', '>=', $date->format('Y-m-d'))->where( - 'transaction_journals.date', '<=', $end->format('Y-m-d') - )->sum('transactions.amount'); - $sum = floatval($sum); + $incomes = $reportRepository->getIncomeForMonth($date); + $totalIn = 0; + foreach ($incomes as $entry) { + $totalIn += floatval($entry->transactions[1]->amount); + } - return $sum; + return $totalIn; } /**