Some small changes.

This commit is contained in:
James Cole
2016-05-11 07:57:16 +02:00
parent d233a2df3c
commit 934656c954
3 changed files with 15 additions and 8 deletions

View File

@@ -319,6 +319,14 @@ class TransactionJournal extends TransactionJournalSupport
return $query->where('transaction_journals.date', '<=', $date->format('Y-m-d 00:00:00')); return $query->where('transaction_journals.date', '<=', $date->format('Y-m-d 00:00:00'));
} }
public function scopeSortCorrectly(EloquentBuilder $query)
{
$query->orderBy('transaction_journals.date', 'DESC');
$query->orderBy('transaction_journals.order', 'ASC');
$query->orderBy('transaction_journals.id', 'DESC');
}
/** /**
* @param EloquentBuilder $query * @param EloquentBuilder $query
*/ */
@@ -339,7 +347,7 @@ class TransactionJournal extends TransactionJournalSupport
} }
); );
$query->groupBy('transaction_journals.id'); $query->groupBy('transaction_journals.id');
$query->with(['categories', 'budgets', 'attachments', 'bill','transactions']); $query->with(['categories', 'budgets', 'attachments', 'bill', 'transactions']);
} }
/** /**

View File

@@ -236,8 +236,10 @@ class AccountRepository implements AccountRepositoryInterface
$query = $this->user $query = $this->user
->transactionjournals() ->transactionjournals()
->expanded() ->expanded()
->sortCorrectly()
->before($end) ->before($end)
->after($start); ->after($start)
->take(10);
// expand query: // expand query:
$query->leftJoin( $query->leftJoin(
@@ -450,7 +452,7 @@ class AccountRepository implements AccountRepositoryInterface
$journal = TransactionJournal:: $journal = TransactionJournal::
leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id') leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id) ->where('transactions.account_id', $account->id)
->orderBy('transaction_journals.date', 'ASC') ->sortCorrectly()
->first(['transaction_journals.*']); ->first(['transaction_journals.*']);
if (is_null($journal)) { if (is_null($journal)) {
$date = new Carbon; $date = new Carbon;
@@ -495,11 +497,10 @@ class AccountRepository implements AccountRepositoryInterface
public function openingBalanceTransaction(Account $account): TransactionJournal public function openingBalanceTransaction(Account $account): TransactionJournal
{ {
$journal = TransactionJournal $journal = TransactionJournal
::orderBy('transaction_journals.date', 'ASC') ::sortCorrectly()
->leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id') ->leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id) ->where('transactions.account_id', $account->id)
->transactionTypes([TransactionType::OPENING_BALANCE]) ->transactionTypes([TransactionType::OPENING_BALANCE])
->orderBy('created_at', 'ASC')
->first(['transaction_journals.*']); ->first(['transaction_journals.*']);
if (is_null($journal)) { if (is_null($journal)) {
return new TransactionJournal; return new TransactionJournal;

View File

@@ -315,9 +315,7 @@ class BillRepository implements BillRepositoryInterface
$offset = ($page - 1) * $pageSize; $offset = ($page - 1) * $pageSize;
$query = $bill->transactionjournals() $query = $bill->transactionjournals()
->expanded() ->expanded()
->orderBy('transaction_journals.date', 'DESC') ->sortCorrectly();
->orderBy('transaction_journals.order', 'ASC')
->orderBy('transaction_journals.id', 'DESC');
$count = $query->count(); $count = $query->count();
$set = $query->take($pageSize)->offset($offset)->get(TransactionJournal::queryFields()); $set = $query->take($pageSize)->offset($offset)->get(TransactionJournal::queryFields());
$paginator = new LengthAwarePaginator($set, $count, $pageSize, $page); $paginator = new LengthAwarePaginator($set, $count, $pageSize, $page);