File: /home/royaltuning/www/public/backoffice.royaltuning.hu/app/Models/Traits/Uuid.php
<?php
namespace App\Models\Traits;
use Ramsey\Uuid\Uuid as PackageUuid;
/**
* Trait Uuid.
*/
trait Uuid
{
/**
* @param $query
* @param $uuid
* @return mixed
*/
public function scopeUuid($query, $uuid)
{
return $query->where($this->getUuidName(), $uuid);
}
/**
* @return string
*/
public function getUuidName()
{
return property_exists($this, 'uuidName') ? $this->uuidName : 'uuid';
}
/**
* Use Laravel bootable traits.
*/
protected static function bootUuid()
{
static::creating(function ($model) {
$model->{$model->getUuidName()} = PackageUuid::uuid4()->toString();
});
}
}