package Api import ( "github.com/aarongao/tools" "github.com/gin-gonic/gin" "gopkg.in/mgo.v2/bson" "letu/Lib/DelayMessage" "letu/Lib/Token" ) // @Title 查询用户的定时提醒 // @Description 查询用户的定时提醒 // @Accept json // @Produce json // @Param UserId 5dfb03070a9ac17ac7a82054 string true "用户id" // @Param Token wgergejfwe string true "用户token" // @Success 200 {object} tools.ResponseSeccess "DelayTime=执行时间;Type=类型(0请求url地址1发送app通知);Fail失败次数;Title=通知标题;Content=通知内容;UDID=设备id" // @Failure 500 {object} tools.ResponseError "{"errcode":1,"errmsg":"错误原因"}" // @Router /DealyMessage/Info? [get] func DealyMessageInfo(c *gin.Context) { c.Header("Access-Control-Allow-Origin", c.Request.Header.Get("Origin")) c.Header("Access-Control-Allow-Credentials", "true") if c.Query("Token") == "" || bson.IsObjectIdHex(c.Query("UserId")) == false { c.JSON(200, tools.ResponseError{ 1, "参数不正确", }) return } if Token.GetToken(c.Query("UserId")) != c.Query("Token") { c.JSON(200, tools.ResponseError{ 401, "token过期", }) return } var aDelayMessage []DelayMessage.Message DelayMessage.CDelayMessage.Find(bson.M{"UserId": c.Query("UserId")}).All(&aDelayMessage) if aDelayMessage == nil { aDelayMessage = []DelayMessage.Message{} } c.JSON(200, tools.ResponseSeccess{ 0, aDelayMessage, }) } // @Title 创建提醒 // @Description 创建提醒 // @Accept json // @Produce json // @Param UserId 5dfb03070a9ac17ac7a82054 string true "用户id" // @Param Token wgergejfwe string true "用户token" // @Param UDID 5dfb03070a9ac17ac7a82054 string true "设备id" // @Param Title 表演时间提醒 string true "标题" // @Param Content 5分钟后有表演 string true "内容" // @Param DelayTime 1579066863 string true "到达这个时间戳就执行" // @Success 200 {object} tools.ResponseSeccess "{"errcode":0,"result":"ok"}" // @Failure 500 {object} tools.ResponseError "{"errcode":1,"errmsg":"错误原因"}" // @Router /DealyMessage/Create? [post] func CreateDealyMessage(c *gin.Context) { c.Header("Access-Control-Allow-Origin", c.Request.Header.Get("Origin")) c.Header("Access-Control-Allow-Credentials", "true") if c.PostForm("Token") == "" || bson.IsObjectIdHex(c.PostForm("UserId")) == false { c.JSON(200, tools.ResponseError{ 1, "参数不正确", }) return } if Token.GetToken(c.PostForm("UserId")) != c.PostForm("Token") { c.JSON(200, tools.ResponseError{ 401, "token过期", }) return } err := DelayMessage.GlobalDM.AddTaskForAppMessage(c.PostForm("DelayTime"), c.PostForm("UDID"), c.PostForm("Title"), c.PostForm("Content"), c.PostForm("UserId")) if err == nil { c.JSON(200, tools.ResponseSeccess{ 0, "ok", }) } else { c.JSON(200, tools.ResponseError{ 1, err.Error(), }) } } // @Title 删除提醒 // @Description 删除提醒 // @Accept json // @Produce json // @Param id 5dfb03070a9ac17ac7a82054 string true "提醒id" // @Param UserId 5dfb03070a9ac17ac7a82054 string true "用户id" // @Param Token wgergejfwe string true "用户token" // @Success 200 {object} tools.ResponseSeccess "{"errcode":0,"result":"ok"}" // @Failure 500 {object} tools.ResponseError "{"errcode":1,"errmsg":"错误原因"}" // @Router /DealyMessage/Remove? [post] func RemoveDealyMessage(c *gin.Context) { c.Header("Access-Control-Allow-Origin", c.Request.Header.Get("Origin")) c.Header("Access-Control-Allow-Credentials", "true") if c.PostForm("Token") == "" || bson.IsObjectIdHex(c.PostForm("UserId")) == false { c.JSON(200, tools.ResponseError{ 1, "参数不正确", }) return } if Token.GetToken(c.PostForm("UserId")) != c.PostForm("Token") { c.JSON(200, tools.ResponseError{ 401, "token过期", }) return } DelayMessage.GlobalDM.DelTaskForId(c.PostForm("id")) c.JSON(200, tools.ResponseSeccess{ 0, "ok", }) }