File: /var/www/quadcode-jobs/app/Models/LeverCategory.php
<?php
namespace App\Models;
use App\Helpers\CollectionHelper;
use App\Repositories\VacancyRepository;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Collection;
/**
* @property int $id
* @property string $title
* @property int $count
* @property string $created_at
* @property string $updated_at
*
* @property Collection $vacancies
*/
class LeverCategory extends Model
{
protected $table = 'lever_categories';
protected $fillable = [
'title',
'count',
];
public function vacancies(): HasMany
{
return $this->hasMany(Vacancy::class, 'category_id')->where('state', VacancyRepository::STATE_PUBLISHED);
}
public function getVacanciesList(): LengthAwarePaginator
{
return CollectionHelper::paginate($this->vacancies, 10);
}
}