73 lines
2.1 KiB
PHP
73 lines
2.1 KiB
PHP
<?php
|
|
|
|
namespace App\Service\common;
|
|
|
|
use App\BaseApp\BaseService;
|
|
use App\Models\ProjectModel;
|
|
use App\Models\RoleModel;
|
|
use App\Models\UserModel;
|
|
use App\Service\common\upload\QiniuStorageService;
|
|
use App\Service\FileService;
|
|
use Exception;
|
|
use Illuminate\Support\Str;
|
|
use Psr\Container\ContainerExceptionInterface;
|
|
use Psr\Container\NotFoundExceptionInterface;
|
|
|
|
class UploadService extends BaseService
|
|
{
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
$this->model = RoleModel::class;
|
|
}
|
|
|
|
/**
|
|
* 上传OSS图片
|
|
* @param $file
|
|
* @return array|bool
|
|
* @throws Exception
|
|
*/
|
|
public function uploadImage($file): array|bool
|
|
{
|
|
// 获取文件后缀
|
|
$ext = $file->getClientOriginalExtension();
|
|
$key = 'spa/image/'. date('Ymd') . '/' . 'cc_upload_'. Str::random(). uniqid() . '.' . $ext;
|
|
// $result = QiniuStorageService::getInstance()->uploadVideo($file, $key);
|
|
$result = [
|
|
'key' => $key,
|
|
'url' => 'https://img2.baidu.com/it/u=1629222614,1358629025&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500&a='. rand(1111111, 9999999)
|
|
];
|
|
FileService::getInstance()->create([
|
|
'user_id' => $this->userId,
|
|
'url' => $result['url'],
|
|
]);
|
|
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* 上传OSS视频
|
|
* @param $file
|
|
* @return array|bool
|
|
* @throws Exception
|
|
*/
|
|
public function uploadVideo($file): array|bool
|
|
{
|
|
// 获取文件后缀
|
|
$ext = $file->getClientOriginalExtension();
|
|
$key = 'spa/video/'. date('Ymd') . '/' . 'cc_upload_'. Str::random(). uniqid() . '.' . $ext;
|
|
// $result = QiniuStorageService::getInstance()->uploadVideo($file, $key);
|
|
$result = [
|
|
'key' => $key,
|
|
'url' => 'https://img2.baidu.com/it/u=1629222614,1358629025&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500&a='. rand(1111111, 9999999)
|
|
];
|
|
FileService::getInstance()->create([
|
|
'user_id' => $this->userId,
|
|
'url' => $result['url'],
|
|
]);
|
|
|
|
return $result;
|
|
}
|
|
|
|
}
|