You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

161 lines
5.5 KiB

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) {
liveRouter := router.Group("/api/v1/live")
// websocket
//wsC := &ws.Ws{}
//liveRouter.GET("ws", wsC.Ws)
liveRouter.Use(middleware.Decrypt())
{
// 橱柜
cupboardR := liveRouter.Group("/cupboard")
cupboardR.Use(middleware.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", middleware.BothAuth(), followC.List) // 会员关注列表
followR := userR.Group("follow")
followR.Use(middleware.Auth())
{
followR.POST("add", followC.Add) // 添加关注
followR.POST("cancel", followC.Cancel) // 取消关注
}
trendC := &user.Trend{}
userR.POST("trend/list", middleware.BothAuth(), trendC.List) // 会员动态列表
commentC := &trend.Comment{}
userR.POST("trend/comment/list", middleware.BothAuth(), commentC.List) // 评论列表
userR.POST("trend/comment/add", middleware.Auth(), commentC.Add) // 评论列表
// 评论点赞
commentPraiseC := grend2.Praise{}
userR.POST("trend/comment/praise/add", middleware.Auth(), commentPraiseC.Add) // 评论点赞
userR.POST("trend/comment/praise/cancel", middleware.Auth(), commentPraiseC.Cancel) // 评论取消点赞
praiseC := &trend.Praise{}
userR.POST("trend/praise/add", middleware.Auth(), praiseC.Add) // 动态点赞
userR.POST("trend/praise/cancel", middleware.Auth(), praiseC.Cancel) // 动态取消点赞
liveC := user.Live{}
userR.POST("live/list", liveC.UserList) // 会员直播列表
}
// 订单
orderR := liveRouter.Group("/order")
{
orderGoodsC := &order.Goods{}
orderR.POST("history", middleware.Auth(), orderGoodsC.Histroy)
}
// 话题
topicR := liveRouter.Group("/topic")
{
topicC := &topic.Topic{}
topicR.POST("list", topicC.List) // 话题列表
topicR.POST("hot", topicC.Hot) // 热门话题
topicR.POST("info", middleware.BothAuth(), topicC.Info) // 话题基础信息
topicR.POST("content/list", middleware.BothAuth(), topicC.ContentList) // 话题内容列表
followC := &topic.Follow{}
topicR.POST("follow/list", middleware.BothAuth(), followC.List)
topicR.POST("follow/add", middleware.BothAuth(), followC.Add)
topicR.POST("follow/cancel", middleware.BothAuth(), followC.Cancel)
}
// 短视频
shortR := liveRouter.Group("/short")
{
shortC := &short.Short{}
shortR.POST("list", middleware.BothAuth(), shortC.List) // 短视频列表
shortR.POST("upload_sign", middleware.Auth(), shortC.UploadSign) // 短视频列表
shortR.POST("publish", middleware.Auth(), shortC.Publish) // 短视频列表
shortR.POST("info", shortC.Info) // 短视频列表
}
// 直播
liveR := liveRouter.Group("/live")
{
liveC := &live.Live{}
{
liveR.POST("list", liveC.List) // 直播列表
liveR.POST("follow_list", middleware.Auth(), liveC.FollowList) // 关注主播直播列表
liveR.POST("start", middleware.Auth(), liveC.Start) // 开始直播
liveR.POST("stop", middleware.Auth(), liveC.Stop) // 结束直播
liveR.POST("live_info", middleware.BothAuth(), liveC.LiveInfo) // 获取直播间信息
liveR.POST("video_info", middleware.BothAuth(), liveC.VideoInfo) // 录播信息
liveR.POST("explain", middleware.Auth(), liveC.Explain) // 讲解
liveR.POST("un_explain", middleware.Auth(), liveC.UnExplain) // 取消讲解
dataC := live.Data{}
{
liveR.POST("data/list", middleware.Auth(), dataC.List) // 直播场次列表
liveR.POST("data/info", middleware.Auth(), dataC.Info) // 直播统计详情
liveR.POST("data/count", middleware.Auth(), dataC.Count) // 统计数据
}
praiseC := &live.Praise{}
liveR.POST("praise/add", middleware.Auth(), praiseC.Add) // 动态点赞
liveR.POST("praise/cancel", middleware.Auth(), praiseC.Cancel) // 动态取消点赞
}
imR := liveR.Group("im")
imC := &live.Im{}
{
imR.POST("login_info", middleware.Auth(), imC.LoginInfo) // 获取当前账号im账号信息
imR.POST("no_login_info", imC.NoLoginInfo) // 获取游客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)
}
}
}
}