c_file.go 1007 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package controllers
  2. import (
  3. "github.com/gogf/gf/v2/net/ghttp"
  4. "yx-dataset-server/app/bll"
  5. "yx-dataset-server/library/gplus"
  6. )
  7. // NewFile 创建文件管理控制器
  8. func NewFile(bFile bll.IFile) *File {
  9. return &File{
  10. FileBll: bFile,
  11. }
  12. }
  13. // File 文件管理
  14. // @Name File
  15. // @Description 文件管理
  16. type File struct {
  17. FileBll bll.IFile
  18. }
  19. // Upload 上传文件
  20. // @Summary 上传文件
  21. // @Param Authorization header string false "Bearer 用户令牌"
  22. // @Param data form file true
  23. // @Success 200 schema.FileInfo
  24. // @Failure 400 schema.HTTPError "{error:{code:0,message:无效的请求参数}}"
  25. // @Failure 401 schema.HTTPError "{error:{code:0,message:未授权}}"
  26. // @Failure 500 schema.HTTPError "{error:{code:0,message:服务器错误}}"
  27. // @Router POST /web/v1/files
  28. func (a *File) Upload(r *ghttp.Request) {
  29. ctx := gplus.NewContext(r)
  30. info, err := a.FileBll.Upload(ctx, r.Request, "file", "dataset")
  31. if err != nil {
  32. gplus.ResError(r, err)
  33. return
  34. }
  35. gplus.ResSuccess(r, info)
  36. }