//任务管理 //编辑、启动、停止、测试 package task import ( . "jy/admin" . "jy/extract" . "jy/mongodbutil" "time" "github.com/gin-contrib/sessions" "github.com/gin-gonic/gin" ) func init() { //首页 Admin.GET("/task", func(c *gin.Context) { c.HTML(200, "task_list.html", nil) }) //获取任务列表 Admin.POST("/task/list", func(c *gin.Context) { data, _ := Mgo.Find("task", ``, `{"_id":-1}`, nil, false, -1, -1) c.JSON(200, gin.H{"data": data}) }) //新增任务、编辑任务 Admin.POST("/task/save", func(c *gin.Context) { data := GetPostForm(c) _id, _ := c.GetPostForm("_id") b := false if _id == "" { data["l_createtime"] = time.Now().Unix() data["s_username"] = sessions.Default(c).Get("username") b = Mgo.Save("task", data) != "" } else { data["l_lasttime"] = time.Now().Unix() b = Mgo.Update("task", `{"_id":"`+_id+`"}`, map[string]interface{}{ "$set": data, }, false, false) } c.JSON(200, gin.H{"rep": b}) }) //获取版本列表 Admin.POST("/task/getversion", func(c *gin.Context) { list, b := Mgo.Find("version", `{}`, `{"_id":-1}`, `{"version":1}`, false, -1, -1) if b && list != nil { for _, v := range *list { v["_id"] = v["version"] v["s_name"] = v["version"] } } c.JSON(200, gin.H{"data": list}) }) //任务测试 Admin.POST("/task/test", func(c *gin.Context) { startid, _ := c.GetPostForm("startid") num, _ := c.GetPostForm("num") taskid, _ := c.GetPostForm("taskid") b := StartExtractTestTask(taskid, startid, num) c.JSON(200, gin.H{"rep": b}) }) }