*/ protected $fillable = [ 'name', 'slug', 'description', ]; /** * Get the permissions for the role. */ public function permissions(): BelongsToMany { return $this->belongsToMany(Permission::class, 'role_permission') ->withTimestamps(); } /** * Get the users for the role. */ public function users(): BelongsToMany { return $this->belongsToMany(User::class, 'user_roles') ->withPivot('tenant_id') ->withTimestamps(); } /** * Check if role has a specific permission. */ public function hasPermission(string $permissionSlug): bool { return $this->permissions()->where('slug', $permissionSlug)->exists(); } }