liuxiaolong
2020-08-17 bae4af47f77a195a12a0437584d667465e826e12
controllers/sys.go
@@ -2,6 +2,8 @@
import (
   "car-service/models"
   "car-service/vo"
   "encoding/json"
   "fmt"
   "github.com/astaxie/beego"
   "strconv"
@@ -15,22 +17,40 @@
// @Title 比对版本号,看是否有升级
// @Description 比对版本号,看是否有升级
// @Param curVersion query string  true "当前版本号"
// @Success 200 {object} models.SysVersion
// @Success 200 {object} models.SysUpgrade
// @Failure 403 {string} json ""
// @router /version [get]
func (c *AppController)  Version() {
   curV := c.GetString("curVersion")
   latestV := beego.AppConfig.String("latestVersion")
   fmt.Println("curV:", curV, "latestV:", latestV)
   result := models.SysVersion{
      LatestVersion: latestV,
   }
   if shouldVersionBeUpgrade(curV, latestV) {
      result.IsUpgrade = true
      result.Url = beego.AppConfig.String("latestUrl")
   fmt.Println("curV:", curV)
   result := vo.Upgrade{}
   var sv models.SysUpgrade
   err := sv.GetLatest()
   if err != nil {
      result.Msg = []string{}
   } else {
      result.IsUpgrade = false
      latestV := sv.LatestVersion
      if shouldVersionBeUpgrade(curV, latestV) {
         result.IsUpgrade = true
         result.Url = sv.Url
         result.LatestVersion = sv.LatestVersion
         result.Time = sv.Time
         result.ForceUpgrade = sv.ForceUpgrade
         var msgArr []string
         if e1 := json.Unmarshal([]byte(sv.Msg), &msgArr);e1 ==nil {
            result.Msg = msgArr
         } else {
            fmt.Println("unmarshal err:", e1)
            result.Msg = []string{}
         }
         result.Size = sv.Size
      } else {
         result.IsUpgrade = false
         result.Msg = []string{}
      }
   }
   c.Data["json"] = result
   c.ServeJSON()
}