package monkey import ( "autogo/controllers" "autogo/dbsql" "autogo/models" "net/http" "github.com/gin-gonic/gin" "github.com/spf13/cast" ) // @Tags Monkey相关 /api/monkey/v1/ // @Summary 上报Monkey应用页 // @Description Android上报activity名 // @accept x-www-form-urlencoded // @Param task_id formData int true "任务id" // @Param device_name formData string false "设备id" // @Param activity_name formData string false "页面名称" // @Success 200 {object} models.Response "返回更新后的任务信息" // @Router /api/monkey/v1/task/activity [post] func UpdataActivity(c *gin.Context) { rsp := controllers.NewResponse() var res models.MonkeyActivity res.TaskId = cast.ToInt(c.PostForm("task_id")) if res.TaskId < 1 { rsp.Error("task_id error:" + c.PostForm("task_id")) c.JSON(http.StatusOK, rsp) } res.DeviceName = c.PostForm("device_name") if res.DeviceName == "" { rsp.Error("device_name不能为空") c.JSON(http.StatusOK, rsp) } res.ActivityName = c.PostForm("activity_name") if res.ActivityName == "" { rsp.Error("activity_name不能为空") c.JSON(http.StatusOK, rsp) } db, err := dbsql.GetConn(dbsql.DSN) if err != nil { rsp.Error(err.Error()) c.JSON(http.StatusOK, rsp) return } defer dbsql.Close(db) db.Create(&res) if res.ID < 1 { rsp.Error("记录activity应用页失败") c.JSON(http.StatusOK, rsp) return } task, err := getTaskById(res.TaskId, db) var p models.AppPage p.Product = task.Product p.PageName = res.ActivityName p.Pf = task.Platform countPage(p, db) rsp.Success() rsp.Data = res c.JSON(http.StatusOK, rsp) } // @Tags Monkey相关 /api/monkey/v1/ // @Summary 获取覆盖页面列表 // @Description 通过monkey任务id获取覆盖的活动页面 // @accept x-www-form-urlencoded // @Param task_id query int true "任务id" // @Success 200 {object} models.Response "返回任务覆盖的活动页" // @Router /api/monkey/v1/task/activity [get] func GetMonkeyActivities(c *gin.Context) { rsp := controllers.NewResponse() var list []models.MonkeyActivity db, err := dbsql.GetConn(dbsql.DSN) if err != nil { rsp.Error(err.Error()) c.JSON(http.StatusOK, rsp) return } defer dbsql.Close(db) db.Where("task_id = ?", c.Query("task_id")).Find(&list) rsp.Success() rsp.Data = list c.JSON(http.StatusOK, rsp) }