/**
  * @param Account $account
  *
  * @return TransactionJournal|null
  */
 public function openingBalanceTransaction(Account $account)
 {
     return TransactionJournal::orderBy('transaction_journals.date', 'ASC')->accountIs($account)->transactionTypes(['Opening balance'])->orderBy('created_at', 'ASC')->first(['transaction_journals.*']);
 }
Example #2
0
 /**
  * @param Account $account
  *
  * @return TransactionJournal|null
  */
 public function openingBalanceTransaction(Account $account)
 {
     $journal = TransactionJournal::orderBy('transaction_journals.date', 'ASC')->leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')->where('transactions.account_id', $account->id)->transactionTypes([TransactionType::OPENING_BALANCE])->orderBy('created_at', 'ASC')->first(['transaction_journals.*']);
     return $journal;
 }
 /**
  * @param Account $account
  *
  * @return TransactionJournal|null
  */
 public function openingBalanceTransaction(Account $account)
 {
     $cache = new CacheProperties();
     $cache->addProperty($account->id);
     $cache->addProperty('opening-balance-journal');
     if ($cache->has()) {
         return $cache->get();
         // @codeCoverageIgnore
     }
     $journal = TransactionJournal::orderBy('transaction_journals.date', 'ASC')->accountIs($account)->transactionTypes([TransactionType::OPENING_BALANCE])->orderBy('created_at', 'ASC')->first(['transaction_journals.*']);
     $cache->store($journal);
     return $journal;
 }
 /**
  * @param Account $account
  *
  * @return TransactionJournal|null
  */
 public function openingBalanceTransaction(Account $account)
 {
     $journal = TransactionJournal::orderBy('transaction_journals.date', 'ASC')->accountIs($account)->transactionTypes([TransactionType::OPENING_BALANCE])->orderBy('created_at', 'ASC')->first(['transaction_journals.*']);
     return $journal;
 }