FileService.php 745 B

1234567891011121314151617181920212223242526
  1. <?php
  2. namespace App\Services;
  3. use App\Models\File;
  4. use Illuminate\Support\Facades\Storage;
  5. class FileService
  6. {
  7. /**
  8. * @param $path
  9. * @param $file
  10. * @return File
  11. */
  12. public function saveUploadedFile($path, $file): File
  13. {
  14. Storage::disk('public')->put($path . '/' .$file->getClientOriginalName(), $file->getContent());
  15. return File::query()->updateOrCreate([
  16. 'link' => url('/storage/') . '/' . $path . '/' .$file->getClientOriginalName(),
  17. 'path' => $path . '/' .$file->getClientOriginalName(),
  18. 'user_id' => auth()->user()->id,
  19. 'original_name' => $file->getClientOriginalName(),
  20. 'mime_type' => $file->getClientMimeType(),
  21. ]);
  22. }
  23. }