<?php
declare(strict_types=1);
namespace App\Domain\Users;
use App\BaseClasses\BaseService;
use App\Enums\RoleEnum;
use App\Models\Role;
use App\Models\User;
class UserService extends BaseService
{
/**
* @param User $user
* @param RoleEnum $role
* @return void
*/
public function assignRole($user, RoleEnum $role, ?int $modelID): void
{
Role::create([
'user_id' => $user->id,
'role' => $role->value,
'model_id' => $modelID
]);
}
public function assignPermissions($user, $permissions, ?int $modelID): void
{
if ($user) {
Role::query()->where(['user_id' => $user->id, 'model_id' => $modelID])->update(['permissions' => json_encode($permissions)]);
}
}
}