model = RoleModel::class; switch (env('ECS')) { case 'aliyun': // $this->uploadService = AliyunStorageService::getInstance(); break; case 'qcloud': // $this->uploadService = QcloudStorageService::getInstance(); break; case 'qiniu': $this->uploadService = QiniuStorageService::getInstance(); break; default: $this->uploadService = LocalhostStorageService::getInstance(); break; } } /** * 上传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 = $this->uploadService->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 = $this->uploadService->uploadVideo($file, $key); // $result = [ // 'key' => $key, // 'url' => 'http://d-jy.nailaoyun.cn//storage/video//20250327/2cc1abf9bd69410ce7c69660daf54260.mp4' // ]; FileService::getInstance()->create([ 'user_id' => $this->userId, 'url' => $result['url'], ]); return $result; } }