package web import ( "net/http" "videoweb/app/service/videoser" "github.com/gin-gonic/gin" ) // VideoCollectSet BFF:代理 POST /api/app/video/collect/set。 // 文档:http://172.104.181.99:25319/swagger/index.html#/视频相关接口/post_api_app_video_collect_set func VideoCollectSet(c *gin.Context) { var body struct { ID int64 `json:"id"` IsCollect *bool `json:"isCollect"` } if err := c.ShouldBindJSON(&body); err != nil { c.JSON(http.StatusBadRequest, gin.H{ "code": 400, "msg": "invalid body", "tip": "参数错误", "data": nil, }) return } if body.ID <= 0 || body.IsCollect == nil { c.JSON(http.StatusOK, gin.H{ "code": 400, "msg": "id/isCollect required", "tip": "缺少视频 ID 或收藏状态", "data": nil, }) return } env, err := videoser.CollectSet(c, videoser.VideoCollectSetReq{ ID: body.ID, IsCollect: *body.IsCollect, }) if err != nil { c.JSON(http.StatusOK, gin.H{ "code": 500, "msg": err.Error(), "tip": "操作失败,请稍后重试", "data": nil, }) return } if env == nil { c.JSON(http.StatusOK, gin.H{ "code": 500, "msg": "empty response", "tip": "操作失败,请稍后重试", "data": nil, }) return } c.JSON(http.StatusOK, gin.H{ "code": env.Code, "msg": env.Msg, "tip": env.Tip, "data": env.Data, }) }