diff --git a/app/Models/TransactionJournal.php b/app/Models/TransactionJournal.php index 0b5ca3ea8d..334a21225c 100644 --- a/app/Models/TransactionJournal.php +++ b/app/Models/TransactionJournal.php @@ -166,6 +166,16 @@ class TransactionJournal extends Model return $value; } + /** + * @param $value + * + * @return string + */ + public function getDestinationAccountNameAttribute($value) + { + return Crypt::decrypt($value); + } + /** * * @param string $fieldName @@ -183,6 +193,16 @@ class TransactionJournal extends Model return ''; } + /** + * @param $value + * + * @return string + */ + public function getSourceAccountNameAttribute($value) + { + return Crypt::decrypt($value); + } + /** * @return bool */ @@ -319,6 +339,8 @@ class TransactionJournal extends Model // join destination account type $query->leftJoin('account_types as source_acct_type', 'source_account.account_type_id', '=', 'source_acct_type.id'); + $query->with(['categories', 'budgets', 'attachments', 'bill']); + } @@ -330,9 +352,6 @@ class TransactionJournal extends Model */ public function scopeTransactionTypes(EloquentBuilder $query, array $types) { - $query->leftJoin( - 'transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id' - ); $query->whereIn('transaction_types.type', $types); } diff --git a/app/Repositories/Journal/JournalRepository.php b/app/Repositories/Journal/JournalRepository.php index 2a69fbdb04..fe9a80c0cb 100644 --- a/app/Repositories/Journal/JournalRepository.php +++ b/app/Repositories/Journal/JournalRepository.php @@ -118,14 +118,20 @@ class JournalRepository implements JournalRepositoryInterface */ public function getJournalsOfTypes(array $types, int $offset, int $page, int $pagesize = 50) { - $set = Auth::user()->transactionJournals()->transactionTypes($types)->withRelevantData()->take($pagesize)->offset($offset) - ->orderBy('date', 'DESC') - ->orderBy('order', 'ASC') - ->orderBy('id', 'DESC') - ->get( - ['transaction_journals.*'] - ); - $count = Auth::user()->transactionJournals()->transactionTypes($types)->count(); + $set = Auth::user() + ->transactionJournals() + ->expanded() + ->transactionTypes($types) + ->take($pagesize) + ->offset($offset) + ->orderBy('date', 'DESC') + ->orderBy('order', 'ASC') + ->orderBy('id', 'DESC') + ->get(TransactionJournal::QUERYFIELDS); + + $count = Auth::user()->transactionJournals() + ->leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id') + ->transactionTypes($types)->count(); $journals = new LengthAwarePaginator($set, $count, $pagesize, $page); return $journals; diff --git a/resources/views/list/journals.twig b/resources/views/list/journals.twig index b51f83defa..0cfcfa40a3 100644 --- a/resources/views/list/journals.twig +++ b/resources/views/list/journals.twig @@ -28,90 +28,77 @@
{% set _sum = 0 %} {% for journal in journals %} - {% if invalidJournal(journal) %} -