PrintPartImageService.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace App\Services;
  3. use App\Traits\ServiceAppAop;
  4. use App\PrintPartImage;
  5. class PrintPartImageService
  6. {
  7. use ServiceAppAop;
  8. protected $modelClass=PrintPartImage::class;
  9. public function saveFile(PrintPartImage $model,$file): array
  10. {
  11. $tmpFil = $file->getRealPath();
  12. if (!$file) return ['success' => false, 'message' => '上传图片为找到'];
  13. if (!$file->isValid()) return ['success' => false, 'message' => '找不到上传图片'];
  14. if (!is_uploaded_file($tmpFil)) return ['success' => false, 'message' => '文件错误'];
  15. if ($file->getSize() > 5 * 1024 * 1024) return ['success' => false, 'message' => '文件不能大于5MB'];
  16. $dirPath = storage_path('app\public\files\partImage');
  17. if (!file_exists($dirPath)) {
  18. mkdir($dirPath);
  19. }
  20. $fileSuffix = $file->getClientOriginalExtension();
  21. $filePath = storage_path('app\public\files\partImage\\' . $model['name'] . $fileSuffix);
  22. $result = move_uploaded_file($tmpFil,$filePath);
  23. if ($result == false) return ['success' => false, 'data' => '文件上传失败'];
  24. $model->saveFile($file);
  25. $model->load('file');
  26. return ['success' => true, 'data' => '文件上传成功'];
  27. }
  28. }