FileUploadController.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Exports\MyExport;
  4. use App\Service\FileUploadService;
  5. use App\Service\OssService;
  6. use Illuminate\Http\Request;
  7. use PhpOffice\PhpSpreadsheet\Calculation\Statistical\Distributions\F;
  8. //文件上传
  9. class FileUploadController extends BaseController
  10. {
  11. public function uploadFile(Request $request){
  12. $service = new FileUploadService();
  13. list($status,$data) = $service->uploadFile($request->file('file'));
  14. if($status){
  15. return $this->json_return(200,'上传成功',['url' => $data]);
  16. }else{
  17. return $this->json_return(201,$data);
  18. }
  19. }
  20. //获取文件的位置预览(临时文件)
  21. public function getFile($file_name){
  22. $file_name = str_replace(FileUploadService::string2,'',$file_name);
  23. $timestamp = substr($file_name, 0, 8); // 截取前八位数字
  24. $date = \DateTime::createFromFormat('Ymd', $timestamp);
  25. $date = $date->format('Y-m-d');
  26. $path = storage_path() . "/app/public/" . FileUploadService::tmp_dir . '/' . $date. '/' . $file_name;
  27. return response()->file($path);
  28. }
  29. //获取文件的位置
  30. public function getFileLocal($file_name){
  31. $path = storage_path() . "/app/public/upload_files/".$file_name;
  32. if(file_exists($path)) return response()->file($path);
  33. return "";
  34. }
  35. }