UploadController.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | likeadmin快速开发前后端分离管理后台(PHP版)
  4. // +----------------------------------------------------------------------
  5. // | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
  6. // | 开源版本可自由商用,可去除界面版权logo
  7. // | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
  8. // | github下载:https://github.com/likeshop-github/likeadmin
  9. // | 访问官网:https://www.likeadmin.cn
  10. // | likeadmin团队 版权所有 拥有最终解释权
  11. // +----------------------------------------------------------------------
  12. // | author: likeadminTeam
  13. // +----------------------------------------------------------------------
  14. namespace app\api\controller;
  15. use app\api\validate\UploadFileValidate;
  16. use app\common\enum\FileEnum;
  17. use app\common\service\UploadService;
  18. use Exception;
  19. use think\response\Json;
  20. /** 上传文件
  21. * Class UploadController
  22. * @package app\api\controller
  23. */
  24. class UploadController extends BaseApiController
  25. {
  26. public array $notNeedLogin = ['uploadFiles'];
  27. /**
  28. * @notes 上传图片
  29. * @return Json
  30. * @author 段誉
  31. * @date 2022/9/20 18:11
  32. */
  33. public function image()
  34. {
  35. try {
  36. $result = UploadService::image(0, $this->userId, FileEnum::SOURCE_USER);
  37. return $this->success('上传成功', $result);
  38. } catch (Exception $e) {
  39. return $this->fail($e->getMessage());
  40. }
  41. }
  42. public function uploadFile()
  43. {
  44. // dd($this->request->all());
  45. $params = (new UploadFileValidate())->post()->goCheck('uploadFile');
  46. try {
  47. if ($params['file_type'] == FileEnum::IMAGE_TYPE) {
  48. $result = UploadService::image($params['cid'], $this->userId, $params['source']);
  49. } else if ($params['file_type'] == FileEnum::VIDEO_TYPE) {
  50. $result = UploadService::video($params['cid'], $this->userId, $params['source']);
  51. } else if ($params['file_type'] == FileEnum::FILE_TYPE) {
  52. $result = UploadService::file($params['cid'], $this->userId, $params['source']);
  53. } else {
  54. throw new \Exception('未定义文件类型');
  55. }
  56. return $this->success('上传成功', $result);
  57. } catch (Exception $e) {
  58. return $this->fail($e->getMessage());
  59. }
  60. }
  61. public function uploadFiles()
  62. {
  63. $params = (new UploadFileValidate())->post()->goCheck('uploadFiles');
  64. try {
  65. $result = UploadService::uploadFies($params['cid'], $this->userId, $params['source']);
  66. return $this->success('上传成功', $result);
  67. } catch (Exception $e) {
  68. return $this->fail($e->getMessage());
  69. }
  70. }
  71. }