From d804093f8b293e63ef6b7931c34da8e5745fd0c1 Mon Sep 17 00:00:00 2001 From: James Cole Date: Fri, 23 Feb 2018 15:13:30 +0100 Subject: [PATCH] Expand destroy routine. --- .../Destroy/JournalDestroyService.php | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/app/Services/Internal/Destroy/JournalDestroyService.php b/app/Services/Internal/Destroy/JournalDestroyService.php index 869860a9ca..bb1feb5a93 100644 --- a/app/Services/Internal/Destroy/JournalDestroyService.php +++ b/app/Services/Internal/Destroy/JournalDestroyService.php @@ -22,7 +22,12 @@ declare(strict_types=1); namespace FireflyIII\Services\Internal\Destroy; + +use Exception; +use FireflyIII\Models\Transaction; use FireflyIII\Models\TransactionJournal; +use FireflyIII\Models\TransactionJournalMeta; +use Log; /** * Class JournalDestroyService @@ -32,8 +37,28 @@ class JournalDestroyService /** * @param TransactionJournal $journal */ - public function destroy(TransactionJournal $journal): void { + public function destroy(TransactionJournal $journal): void + { + try { + /** @var Transaction $transaction */ + foreach ($journal->transactions()->get() as $transaction) { + Log::debug(sprintf('Will now delete transaction #%d', $transaction->id)); + $transaction->delete(); + } + // also delete journal_meta entries. + + /** @var TransactionJournalMeta $meta */ + foreach ($journal->transactionJournalMeta()->get() as $meta) { + Log::debug(sprintf('Will now delete meta-entry #%d', $meta->id)); + $meta->delete(); + } + $journal->delete(); + } catch (Exception $e) { + // don't care + } + + return; } } \ No newline at end of file