/** * */ protected function registerDeleteEvents() { TransactionJournal::deleted(function (TransactionJournal $journal) { /** @var Transaction $transaction */ foreach ($journal->transactions()->get() as $transaction) { $transaction->delete(); } }); Account::deleted(function (Account $account) { /** @var Transaction $transaction */ foreach ($account->transactions()->get() as $transaction) { $journal = $transaction->transactionJournal()->first(); $journal->delete(); } }); }
/** * */ protected function registerDeleteEvents() { Account::deleted(function (Account $account) { Log::debug('Now trigger account delete response #' . $account->id); /** @var Transaction $transaction */ foreach ($account->transactions()->get() as $transaction) { Log::debug('Now at transaction #' . $transaction->id); $journal = $transaction->transactionJournal()->first(); if (!is_null($journal)) { Log::debug('Call for deletion of journal #' . $journal->id); $journal->delete(); } } }); TransactionJournal::deleted(function (TransactionJournal $journal) { Log::debug('Now triggered journal delete response #' . $journal->id); /** @var Transaction $transaction */ foreach ($journal->transactions()->get() as $transaction) { Log::debug('Will now delete transaction #' . $transaction->id); $transaction->delete(); } }); }