UploadController.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace app\workerapi\controller;
  3. use app\workerapi\controller\BaseApiController;
  4. use app\common\enum\FileEnum;
  5. use app\workerapi\validate\UploadFileValidate;
  6. use Exception;
  7. use app\common\service\UploadService;
  8. class UploadController extends BaseApiController
  9. {
  10. public array $notNeedLogin = ['image'];
  11. public function image()
  12. {
  13. try {
  14. $result = UploadService::image(2, $this->userId,FileEnum::SOURCE_WORKER);
  15. return $this->success('上传成功', $result);
  16. } catch (Exception $e) {
  17. return $this->fail($e->getMessage());
  18. }
  19. }
  20. public function uploadFile()
  21. {
  22. // dd($this->request->all());
  23. $params = (new UploadFileValidate())->post()->goCheck('uploadFile');
  24. try {
  25. if ($params['file_type'] == FileEnum::IMAGE_TYPE) {
  26. $result = UploadService::image(2, $this->userId, $params['source']);
  27. } else if ($params['file_type'] == FileEnum::VIDEO_TYPE) {
  28. $result = UploadService::video(2, $this->userId, $params['source']);
  29. } else if ($params['file_type'] == FileEnum::FILE_TYPE) {
  30. $result = UploadService::file(2, $this->userId, $params['source']);
  31. } else {
  32. throw new \Exception('未定义文件类型');
  33. }
  34. return $this->success('上传成功', $result);
  35. } catch (Exception $e) {
  36. return $this->fail($e->getMessage());
  37. }
  38. }
  39. }