akaunting/app/Jobs/Sale/CancelInvoice.php
2020-06-26 13:40:19 +03:00

41 lines
716 B
PHP

<?php
namespace App\Jobs\Sale;
use App\Abstracts\Job;
use App\Models\Sale\Invoice;
class CancelInvoice extends Job
{
protected $invoice;
/**
* Create a new job instance.
*
* @param $invoice
*/
public function __construct($invoice)
{
$this->invoice = $invoice;
}
/**
* Execute the job.
*
* @return Invoice
*/
public function handle()
{
\DB::transaction(function () {
$this->deleteRelationships($this->invoice, [
'transactions', 'recurring'
]);
$this->invoice->status = 'cancelled';
$this->invoice->save();
});
return $this->invoice;
}
}