Add company create and update events

This commit is contained in:
Burak Çakırel 2020-09-13 21:57:10 +03:00
parent c72b5194dd
commit 0dfb759ab0
No known key found for this signature in database
GPG Key ID: 48FFBB7771B99C7C
6 changed files with 108 additions and 0 deletions

View File

@ -0,0 +1,22 @@
<?php
namespace App\Events\Common;
use Illuminate\Queue\SerializesModels;
class CompanyCreated
{
use SerializesModels;
public $company;
/**
* Create a new event instance.
*
* @param $company
*/
public function __construct($company)
{
$this->company = $company;
}
}

View File

@ -0,0 +1,22 @@
<?php
namespace App\Events\Common;
use Illuminate\Queue\SerializesModels;
class CompanyCreating
{
use SerializesModels;
public $request;
/**
* Create a new event instance.
*
* @param $request
*/
public function __construct($request)
{
$this->request = $request;
}
}

View File

@ -0,0 +1,26 @@
<?php
namespace App\Events\Common;
use Illuminate\Queue\SerializesModels;
class CompanyUpdated
{
use SerializesModels;
public $company;
public $request;
/**
* Create a new event instance.
*
* @param $company
* @param $request
*/
public function __construct($company, $request)
{
$this->company = $company;
$this->request = $request;
}
}

View File

@ -0,0 +1,26 @@
<?php
namespace App\Events\Common;
use Illuminate\Queue\SerializesModels;
class CompanyUpdating
{
use SerializesModels;
public $company;
public $request;
/**
* Create a new event instance.
*
* @param $company
* @param $request
*/
public function __construct($company, $request)
{
$this->company = $company;
$this->request = $request;
}
}

View File

@ -3,6 +3,8 @@
namespace App\Jobs\Common;
use App\Abstracts\Job;
use App\Events\Common\CompanyCreated;
use App\Events\Common\CompanyCreating;
use App\Models\Common\Company;
use Artisan;
@ -29,6 +31,8 @@ class CreateCompany extends Job
*/
public function handle()
{
event(new CompanyCreating($this->request));
\DB::transaction(function () {
$this->company = Company::create($this->request->all());
@ -41,6 +45,8 @@ class CreateCompany extends Job
$this->updateSettings();
});
event(new CompanyCreated($this->company));
return $this->company;
}

View File

@ -3,6 +3,8 @@
namespace App\Jobs\Common;
use App\Abstracts\Job;
use App\Events\Common\CompanyUpdated;
use App\Events\Common\CompanyUpdating;
use App\Models\Common\Company;
use App\Traits\Users;
@ -35,6 +37,8 @@ class UpdateCompany extends Job
{
$this->authorize();
event(new CompanyUpdating($this->company, $this->request));
\DB::transaction(function () {
$this->company->update($this->request->all());
@ -77,6 +81,8 @@ class UpdateCompany extends Job
setting()->forgetAll();
});
event(new CompanyUpdated($this->company, $this->request));
return $this->company;
}