QR_code_generator/app/Support/HasPermissionsUuid.php

33 lines
833 B
PHP

<?php
namespace App\Support;
use App\Models\Permission as PermissionEntity;
use Spatie\Permission\Contracts\Permission;
/**
* Class HasPermissionsUuid.
*/
trait HasPermissionsUuid
{
/**
* Added support to use a UUID to find the Permission.
*
* @param string|array|Permission|\Illuminate\Support\Collection $permissions
*
* @return Permission
*/
protected function getStoredPermission($permissions): Permission
{
if (is_string($permissions)) {
return app(PermissionEntity::class)->where('name', $permissions)->orWhere('uuid', $permissions)->first();
}
if (is_array($permissions)) {
return app(PermissionEntity::class)->whereIn('name', $permissions)->orWhereIn('uuid', $permissions)->get();
}
return $permissions;
}
}