12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- package uploadfilehander
- import (
- "bytes"
- "io"
- "ipsomc/core/gin/resp"
- "ipsomc/module/upgrade"
- "ipsomc/module/uploadfile/uploadfileapi"
- "ipsomc/module/uploadfile/uploadfilemodel"
- "strconv"
- "github.com/gin-gonic/gin"
- )
- type UploadFileHan struct {
- upgradeApi upgrade.Upgrade
- uploadFileApi uploadfileapi.UploadFileApi
- }
- func (obj *UploadFileHan) UploadUpgradeFileHan(c *gin.Context) {
- dataModel := new(uploadfilemodel.UploadFileParam)
-
- projectIdStr := c.Request.FormValue("project_id")
- btsIdStr := c.Request.FormValue("bts_id")
- ProjectID, _ := strconv.Atoi(projectIdStr)
- BtsID, _ := strconv.Atoi(btsIdStr)
- if ProjectID <= 0 || BtsID <= 0 {
- resp.RespFail(c, "升级参数有误")
- return
- }
- dataModel.ProjectID = ProjectID
- dataModel.BtsID = BtsID
-
- file, err := c.FormFile("file")
- if err != nil {
- resp.RespFail(c, "提取数据错误")
- return
- }
-
- f, err := file.Open()
- if err != nil {
- resp.RespFail(c, "打开文件错误")
- return
- }
- defer f.Close()
-
- var buf bytes.Buffer
- _, err = io.Copy(&buf, f)
- if err != nil {
- resp.RespFail(c, "拷贝文件错误")
- return
- }
- fileLen := buf.Len()
- println(fileLen)
-
- if err := obj.upgradeApi.UpgradeReceiveFile(dataModel, buf.Bytes(), uint32(buf.Len())); err != nil {
- resp.RespFail(c, "远程升级失败")
- }
- resp.RespOk(c)
- }
- func (obj *UploadFileHan) GetUpgradeStatusHan(c *gin.Context) {
- dataMode := new(uploadfilemodel.UploadFileResp)
- resp.RespData(c, dataMode)
- }
- func (obj *UploadFileHan) CreateWebSocketHan(c *gin.Context) {
-
- if err := obj.uploadFileApi.CreateWebSocketApi(c); err != nil {
- resp.RespFail(c, err.Error())
- return
- }
-
- resp.RespOk(c)
- }
|