package v1 import ( "mime/multipart" "quyun/v2/app/http/v1/dto" "quyun/v2/app/services" "github.com/gofiber/fiber/v3" ) // @provider type Common struct{} // Upload file // // @Router /v1/upload [post] // @Summary Upload file // @Description Upload file // @Tags Common // @Accept multipart/form-data // @Produce json // @Param file formData file true "File" // @Param type formData string false "Type enum(image, video, audio)" // @Success 200 {object} dto.UploadResult // @Bind file file // @Bind typeArg body key(type) func (c *Common) Upload(ctx fiber.Ctx, file *multipart.FileHeader, typeArg *string) (*dto.UploadResult, error) { val := "" if typeArg != nil { val = *typeArg } return services.Common.Upload(ctx.Context(), file, val) }