123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- package http
- import (
- "bytes"
- "io"
- "mime/multipart"
- "path"
- "strconv"
- "time"
- "go-common/app/admin/ep/melloi/model"
- "go-common/library/ecode"
- "go-common/library/log"
- bm "go-common/library/net/http/blademaster"
- "go-common/library/net/http/blademaster/binding"
- )
- const (
- _upLoadSuccess = "上传成功"
- _upLoadFail = "上传失败"
- )
- func upload(c *bm.Context) {
- uploadParam := model.UploadParam{}
- if err := c.BindWith(&uploadParam, binding.Form); err != nil {
- c.JSON(nil, err)
- return
- }
- formFile, header, err := c.Request.FormFile("file")
- if err != nil {
- log.Error("Get form file failed,error(%v)", err)
- c.JSON(nil, err)
- return
- }
- var upLoadResultMap = make(map[string]string)
- upLoadResultMap["result"] = _upLoadSuccess
- scriptID, scriptPath, err := srv.Upload(c, &uploadParam, formFile, header)
- if err != nil {
- log.Error("Write file failed, error(%v)", err)
- upLoadResultMap["result"] = _upLoadFail
- c.JSON(upLoadResultMap, err)
- return
- }
- upLoadResultMap["script_id"] = strconv.Itoa(scriptID)
- upLoadResultMap["script_path"] = scriptPath
- upLoadResultMap["full_path"] = path.Join(scriptPath, header.Filename)
- c.JSON(upLoadResultMap, nil)
- }
- func uploadDependProto(c *bm.Context) {
- var (
- upParam = &model.UploadParam{}
- header *multipart.FileHeader
- formFile multipart.File
- err error
- )
- if err = c.BindWith(upParam, binding.Form); err != nil {
- return
- }
- if formFile, header, err = c.Request.FormFile("file"); err != nil {
- c.JSON(nil, err)
- return
- }
- c.JSON(srv.UploadAndGetProtoInfo(c, upParam, formFile, header))
- }
- func compileProtoFile(c *bm.Context) {
- uploadParam := model.UploadParam{}
- if err := c.BindWith(&uploadParam, binding.JSON); err != nil {
- c.JSON(nil, err)
- return
- }
- fileName := strconv.FormatInt(time.Now().UTC().UnixNano(), 10)
- c.JSON(srv.CompileProtoFile(uploadParam.ScriptPath, fileName))
- }
- func uploadImg(c *bm.Context) {
- file, header, err := c.Request.FormFile("file")
- if err != nil {
- log.Error("get IMG file error (%v)", err)
- c.JSON(nil, err)
- return
- }
- defer file.Close()
- buff := new(bytes.Buffer)
- if _, err = io.Copy(buff, file); err != nil {
- c.JSON(nil, ecode.RequestErr)
- return
- }
- c.JSON(srv.UploadImg(c, buff.Bytes(), header.Filename))
- }
- func readFile(c *bm.Context) {
- file := c.Request.Form.Get("file")
- limit := c.Request.Form.Get("limit")
- var upLoadResultMap = make(map[string]string)
- data, err := srv.ReadFile(c, file, limit)
- if err != nil {
- return
- }
- upLoadResultMap["data"] = data
- c.JSON(upLoadResultMap, nil)
- }
- func downloadFile(c *bm.Context) {
- filePath := c.Request.Form.Get("file_path")
- c.JSON(nil, srv.DownloadFile(c, filePath, c.Writer))
- }
- func isFileExists(c *bm.Context) {
- fileName := c.Request.Form.Get("file_name")
- exists, err := srv.IsFileExists(c, fileName)
- var ResultMap = make(map[string]string)
- ResultMap["fileExists"] = strconv.FormatBool(exists)
- c.JSON(ResultMap, err)
- }
|