ldc-showroom-bo/app/Helpers/ShowroomFileHelper.php

33 lines
898 B
PHP
Raw Permalink Normal View History

<?php
namespace App\Helpers;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\UploadedFile;
use Uwil\LaravelCommon\Helpers\FileHelper;
use Illuminate\Support\Str;
class ShowroomFileHelper
{
/**
* Store file using UUID as name.
*
* @param \Illuminate\Http\UploadedFile $file
* @param Model $model
* @phpstan-param Model&object{tenant_id: string|int} $model
* @return string
*/
public static function storeFileWithUuidName(UploadedFile $file, Model $model): string
{
$extension = $file->getClientOriginalExtension();
$uuidName = (string) Str::uuid() . ($extension ? '.' . $extension : '');
return FileHelper::storeFile(
model: $model,
file: $file,
slugify: false,
filename: $uuidName,
prefix: $model->tenant_id
);
}
}