Clean up sql codes.

This commit is contained in:
James Cole
2015-03-20 22:39:07 +01:00
parent 5dc0677599
commit c259a46ed3
4 changed files with 45 additions and 17 deletions

View File

@@ -64,6 +64,10 @@ class AccountRepository implements AccountRepositoryInterface
}
/**
* This method is used on the front page where (in turn) its viewed journals-tiny.php which (in turn)
* is almost the only place where formatJournal is used. Aka, we can use some custom querying to get some specific.
* fields using left joins.
*
* @param Account $account
* @param Carbon $start
* @param Carbon $end
@@ -74,15 +78,17 @@ class AccountRepository implements AccountRepositoryInterface
{
return Auth::user()
->transactionjournals()
->with(['transactions', 'transactioncurrency', 'transactiontype'])
->with(['transactions'])
->leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->leftJoin('accounts', 'accounts.id', '=', 'transactions.account_id')->where('accounts.id', $account->id)
->leftJoin('transaction_currencies', 'transaction_currencies.id', '=', 'transaction_journals.transaction_currency_id')
->leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id')
->before($end)
->after($start)
->orderBy('transaction_journals.date', 'DESC')
->orderBy('transaction_journals.id', 'DESC')
->take(10)
->get(['transaction_journals.*']);
->get(['transaction_journals.*', 'transaction_currencies.symbol', 'transaction_types.type']);
}
/**