You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

120 lines
2.9 KiB

8 months ago
package api
import (
"pure/model/request"
"pure/model/response"
"pure/service"
"github.com/gin-gonic/gin"
)
// @Tags terminal
// @Summary 终端心跳上报
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
// @Param data body request.TerminalPant true "page,pageSize"
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
// @Router /terminal/pant [post]
func TerminalPant(c *gin.Context) {
var (
err error
p request.TerminalPant
)
err = c.ShouldBind(&p)
base := response.BaseResp{
Cmd: 1022,
Time: p.Time,
MsgID: p.MsgID,
}
if err != nil {
response.FailWithMessage("参数错误", base, c)
return
}
//从 hearders 中获取 boxID
boxID := c.GetHeader("x-box_id")
err, user := service.TerminalPant(&p, boxID)
if err != nil {
response.FailWithMessage("上报失败,"+err.Error(), base, c)
return
}
response.OkWithDataMessage(response.TerminalPant{
NewVer: user.NewVer,
UpdateTime: user.UpdateTime,
Ver: user.Ver,
UrgentRepair: user.UrgentRepair,
}, base, "修改成功", c)
}
// @Tags terminal
// @Summary 终端获取最新固件更新
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
// @Param data body request.TerminalUpdateGet true "page,pageSize"
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
// @Router /terminal/update [post]
func TerminalUpdateGet(c *gin.Context) {
var (
err error
p request.TerminalUpdateGet
)
err = c.ShouldBind(&p)
base := response.BaseResp{
Cmd: 1052,
Time: p.Time,
MsgID: p.MsgID,
}
if err != nil {
response.FailWithMessage("参数错误", base, c)
return
}
//从 hearders 中获取 boxID
boxID := c.GetHeader("x-box_id")
err, up := service.TerminalUpdateGet(&p, boxID)
if err != nil {
response.FailWithMessage("获取失败,"+err.Error(), base, c)
return
}
response.OkWithDataMessage(response.TerminalUpdateGet{
Ver: up.Ver,
Url: up.Url,
Md5: up.Md5,
}, base, "获取成功", c)
}
// @Tags terminal
// @Summary 终端固件更新完成
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
// @Param data body request.TerminalUpdateGet true "page,pageSize"
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
// @Router /terminal/update [put]
func TerminalUpdatePut(c *gin.Context) {
var (
err error
p request.TerminalUpdatePut
)
err = c.ShouldBind(&p)
base := response.BaseResp{
Cmd: 1062,
Time: p.Time,
MsgID: p.MsgID,
}
if err != nil {
response.FailWithMessage("参数错误", base, c)
return
}
//从 hearders 中获取 boxID
boxID := c.GetHeader("x-box_id")
err, up := service.TerminalUpdatePut(&p, boxID)
if err != nil {
response.FailWithMessage("更新失败,"+err.Error(), base, c)
return
}
response.OkWithDataMessage(response.TerminalUpdatePut{
BoxID: up.BoxID,
}, base, "修改成功", c)
}