akaunting/app/Jobs/Setting/CreateCategory.php

28 lines
681 B
PHP

<?php
namespace App\Jobs\Setting;
use App\Abstracts\Job;
use App\Events\Setting\CategoryCreated;
use App\Events\Setting\CategoryCreating;
use App\Interfaces\Job\HasOwner;
use App\Interfaces\Job\HasSource;
use App\Interfaces\Job\ShouldCreate;
use App\Models\Setting\Category;
class CreateCategory extends Job implements HasOwner, HasSource, ShouldCreate
{
public function handle(): Category
{
event(new CategoryCreating($this->request));
\DB::transaction(function () {
$this->model = Category::create($this->request->all());
});
event(new CategoryCreated($this->model, $this->request));
return $this->model;
}
}