added mute/unmute

This commit is contained in:
denisdulici 2020-03-11 14:15:24 +03:00
parent adbc26a6bd
commit 48f3b7c3b6
4 changed files with 18 additions and 13 deletions

View File

@ -0,0 +1,10 @@
<?php
namespace App\Abstracts;
use Monooso\Unobserve\CanMute;
abstract class Observer
{
use CanMute;
}

View File

@ -4,6 +4,7 @@ namespace App\Jobs\Purchase;
use App\Abstracts\Job; use App\Abstracts\Job;
use App\Models\Purchase\Bill; use App\Models\Purchase\Bill;
use App\Observers\Transaction;
class DeleteBill extends Job class DeleteBill extends Job
{ {
@ -26,7 +27,7 @@ class DeleteBill extends Job
*/ */
public function handle() public function handle()
{ {
session(['deleting_bill' => true]); Transaction::mute();
$this->deleteRelationships($this->bill, [ $this->deleteRelationships($this->bill, [
'items', 'item_taxes', 'histories', 'transactions', 'recurring', 'totals' 'items', 'item_taxes', 'histories', 'transactions', 'recurring', 'totals'
@ -34,7 +35,7 @@ class DeleteBill extends Job
$this->bill->delete(); $this->bill->delete();
session()->forget('deleting_bill'); Transaction::unmute();
return true; return true;
} }

View File

@ -4,6 +4,7 @@ namespace App\Jobs\Sale;
use App\Abstracts\Job; use App\Abstracts\Job;
use App\Models\Sale\Invoice; use App\Models\Sale\Invoice;
use App\Observers\Transaction;
class DeleteInvoice extends Job class DeleteInvoice extends Job
{ {
@ -26,7 +27,7 @@ class DeleteInvoice extends Job
*/ */
public function handle() public function handle()
{ {
session(['deleting_invoice' => true]); Transaction::mute();
$this->deleteRelationships($this->invoice, [ $this->deleteRelationships($this->invoice, [
'items', 'item_taxes', 'histories', 'transactions', 'recurring', 'totals' 'items', 'item_taxes', 'histories', 'transactions', 'recurring', 'totals'
@ -34,7 +35,7 @@ class DeleteInvoice extends Job
$this->invoice->delete(); $this->invoice->delete();
session()->forget('deleting_invoice'); Transaction::unmute();
return true; return true;
} }

View File

@ -2,12 +2,13 @@
namespace App\Observers; namespace App\Observers;
use App\Abstracts\Observer;
use App\Jobs\Purchase\CreateBillHistory; use App\Jobs\Purchase\CreateBillHistory;
use App\Jobs\Sale\CreateInvoiceHistory; use App\Jobs\Sale\CreateInvoiceHistory;
use App\Models\Banking\Transaction as Model; use App\Models\Banking\Transaction as Model;
use App\Traits\Jobs; use App\Traits\Jobs;
class Transaction class Transaction extends Observer
{ {
use Jobs; use Jobs;
@ -30,10 +31,6 @@ class Transaction
protected function updateInvoice($transaction) protected function updateInvoice($transaction)
{ {
if (session('deleting_invoice')) {
return;
}
$invoice = $transaction->invoice; $invoice = $transaction->invoice;
$invoice->status = ($invoice->transactions->count() > 1) ? 'partial' : 'sent'; $invoice->status = ($invoice->transactions->count() > 1) ? 'partial' : 'sent';
@ -45,10 +42,6 @@ class Transaction
protected function updateBill($transaction) protected function updateBill($transaction)
{ {
if (session('deleting_bill')) {
return;
}
$bill = $transaction->bill; $bill = $transaction->bill;
$bill->status = ($bill->transactions->count() > 1) ? 'partial' : 'received'; $bill->status = ($bill->transactions->count() > 1) ? 'partial' : 'received';