package router import ( "github.com/gin-gonic/gin" "live/app/controller/callback" "live/app/controller/goods" "live/app/controller/live" "live/app/controller/order" "live/app/controller/short" "live/app/controller/topic" "live/app/controller/user" "live/app/controller/user/trend" grend2 "live/app/controller/user/trend/comment" "live/app/router/middleware" ) func Router(router *gin.Engine) { router.Use(middleware.CORS()) liveRouter := router.Group("/api/v1/live") auth := middleware.Auth() bothAuth := middleware.BothAuth() // websocket //wsC := &ws.Ws{} //liveRouter.GET("ws", wsC.Ws) liveRouter.Use(middleware.Decrypt()) { // 橱柜 cupboardR := liveRouter.Group("/cupboard") cupboardR.Use(auth) { cupboard := &goods.Cupboard{} cupboardR.POST("list", cupboard.List) // 会员橱柜列表 cupboardR.POST("delete", cupboard.Delete) // 会员橱柜商品删除 } // 商品 goodsR := liveRouter.Group("/goods") { goodsC := &goods.Goods{} goodsR.POST("list", goodsC.List) // 商品列表 goodsR.POST("brandlist", goodsC.BrandList) // 品牌列表 goodsR.POST("brandgoodslist", goodsC.BrandGoodsList) // 品牌商品列表 } // 会员 userR := liveRouter.Group("/user") { userC := &user.User{} { userR.POST("baseinfo", userC.BaseInfo) // 会员基础信息 } followC := &user.Follow{} userR.POST("follow/list", bothAuth, followC.List) // 会员关注列表 followR := userR.Group("follow") followR.Use(auth) { followR.POST("add", followC.Add) // 添加关注 followR.POST("cancel", followC.Cancel) // 取消关注 } trendC := &user.Trend{} userR.POST("trend/list", bothAuth, trendC.List) // 会员动态列表 commentC := &trend.Comment{} userR.POST("trend/comment/list", bothAuth, commentC.List) // 评论列表 userR.POST("trend/comment/add", auth, commentC.Add) // 评论列表 // 评论点赞 commentPraiseC := grend2.Praise{} userR.POST("trend/comment/praise/add", auth, commentPraiseC.Add) // 评论点赞 userR.POST("trend/comment/praise/cancel", auth, commentPraiseC.Cancel) // 评论取消点赞 praiseC := &trend.Praise{} userR.POST("trend/praise/add", auth, praiseC.Add) // 动态点赞 userR.POST("trend/praise/cancel", auth, praiseC.Cancel) // 动态取消点赞 liveC := user.Live{} userR.POST("live/list", liveC.UserList) // 会员直播列表 } // 订单 orderR := liveRouter.Group("/order") { orderGoodsC := &order.Goods{} orderR.POST("history", auth, orderGoodsC.Histroy) } // 话题 topicR := liveRouter.Group("/topic") { topicC := &topic.Topic{} topicR.POST("list", topicC.List) // 话题列表 topicR.POST("hot", topicC.Hot) // 热门话题 topicR.POST("info", bothAuth, topicC.Info) // 话题基础信息 topicR.POST("content/list", bothAuth, topicC.ContentList) // 话题内容列表 followC := &topic.Follow{} topicR.POST("follow/list", bothAuth, followC.List) topicR.POST("follow/add", bothAuth, followC.Add) topicR.POST("follow/cancel", bothAuth, followC.Cancel) } // 短视频 shortR := liveRouter.Group("/short") { shortC := &short.Short{} shortR.POST("list", bothAuth, shortC.List) // 短视频列表 shortR.POST("upload_sign", auth, shortC.UploadSign) // 短视频列表 shortR.POST("publish", auth, shortC.Publish) // 短视频列表 shortR.POST("info", shortC.Info) // 短视频列表 } // 直播 liveR := liveRouter.Group("/live") { liveC := &live.Live{} { liveR.POST("license", liveC.License) // 直播列表 liveR.POST("list", liveC.List) // 直播列表 liveR.POST("info", auth, liveC.Info) // 当前用户直播信息获取 liveR.POST("agree", auth, liveC.Agree) // 同意协议 liveR.POST("follow_list", auth, liveC.FollowList) // 关注主播直播列表 liveR.POST("start", auth, liveC.Start) // 开始直播 liveR.POST("stop", auth, liveC.Stop) // 结束直播 liveR.POST("transcribe", auth, liveC.Transcribe) // 确认录制视频 liveR.POST("live_info", bothAuth, liveC.LiveInfo) // 获取直播间信息 liveR.POST("video_info", bothAuth, liveC.VideoInfo) // 录播信息 liveR.POST("explain", auth, liveC.Explain) // 讲解 liveR.POST("un_explain", auth, liveC.UnExplain) // 取消讲解 liveR.POST("user_data", bothAuth, liveC.UserData) // 获取用户数据 dataC := live.Data{} { liveR.POST("data/list", auth, dataC.List) // 直播场次列表 liveR.POST("data/info", auth, dataC.Info) // 直播统计详情 liveR.POST("data/count", auth, dataC.Count) // 统计数据 } praiseC := &live.Praise{} liveR.POST("praise/add", auth, praiseC.Add) // 直播点赞 reportC := live.Report{} { liveR.POST("report/types", reportC.Types) // 举报类型 liveR.POST("report/submit", auth, reportC.Submit) // 举报类型 } } imR := liveR.Group("im") imC := &live.Im{} { imR.POST("login_info", auth, imC.LoginInfo) // 获取当前账号im账号信息 imR.POST("no_login_info", imC.NoLoginInfo) // 获取游客im账号信息 imR.POST("buy_goods", auth, imC.BuyGoods) // 获取游客im账号信息 } } // 回调 callbackR := liveRouter.Group("callback") { liveC := &callback.Live{} { callbackR.POST("push", liveC.Push) callbackR.POST("cutout", liveC.Cutout) callbackR.POST("identify", liveC.Identify) callbackR.POST("screenshot", liveC.ScreenShot) callbackR.POST("transcribe", liveC.Transcribe) } shortC := &callback.Short{} { callbackR.POST("short", shortC.Callback) } } } }