diff --git a/app/Jobs/Purchase/DeleteBill.php b/app/Jobs/Purchase/DeleteBill.php index eddbb45d1..918fd1186 100644 --- a/app/Jobs/Purchase/DeleteBill.php +++ b/app/Jobs/Purchase/DeleteBill.php @@ -26,12 +26,16 @@ class DeleteBill extends Job */ public function handle() { + session(['deleting_bill' => true]); + $this->deleteRelationships($this->bill, [ 'items', 'item_taxes', 'histories', 'transactions', 'recurring', 'totals' ]); $this->bill->delete(); + session()->forget('deleting_bill'); + return true; } } diff --git a/app/Jobs/Sale/DeleteInvoice.php b/app/Jobs/Sale/DeleteInvoice.php index 94d7461eb..a2beaef8c 100644 --- a/app/Jobs/Sale/DeleteInvoice.php +++ b/app/Jobs/Sale/DeleteInvoice.php @@ -26,12 +26,16 @@ class DeleteInvoice extends Job */ public function handle() { + session(['deleting_invoice' => true]); + $this->deleteRelationships($this->invoice, [ 'items', 'item_taxes', 'histories', 'transactions', 'recurring', 'totals' ]); $this->invoice->delete(); + session()->forget('deleting_invoice'); + return true; } } diff --git a/app/Observers/Transaction.php b/app/Observers/Transaction.php index 10a94db78..c3985d652 100644 --- a/app/Observers/Transaction.php +++ b/app/Observers/Transaction.php @@ -30,6 +30,10 @@ class Transaction protected function updateInvoice($transaction) { + if (session('deleting_invoice')) { + return; + } + $invoice = $transaction->invoice; $invoice->status = ($invoice->transactions->count() > 1) ? 'partial' : 'sent'; @@ -41,6 +45,10 @@ class Transaction protected function updateBill($transaction) { + if (session('deleting_bill')) { + return; + } + $bill = $transaction->bill; $bill->status = ($bill->transactions->count() > 1) ? 'partial' : 'received';