Files
toutoukan/router/setupRouter.go
2025-09-29 11:36:17 +08:00

76 lines
2.1 KiB
Go

package router
import (
"toutoukan/controllers/article"
"toutoukan/controllers/article/getArticleNum"
"toutoukan/controllers/comments/getcomments"
"toutoukan/controllers/comments/publishComments"
"toutoukan/controllers/feedback"
"toutoukan/controllers/file"
"toutoukan/controllers/goods"
"toutoukan/controllers/kills"
"toutoukan/controllers/notifications/getnotifications"
"toutoukan/controllers/search"
"toutoukan/controllers/system"
"toutoukan/controllers/user"
"toutoukan/controllers/user/setting"
"toutoukan/init/ratelimit"
"github.com/gin-gonic/gin"
)
func SetupRouter() *gin.Engine {
r := gin.Default()
userGroup := r.Group("/user")
//apiGroup.Use(hystrix.CircuitBreakerMiddleware("user_api"))
{
userGroup.POST("/login", user.UserLogin)
userGroup.POST("/kill", ratelimit.RateLimitMiddleware(), kills.Userkill)
userGroup.POST("/getscore", user.GetScore)
userGroup.POST("/getInfo", user.GetUserInfo)
userGroup.POST("/change", setting.ChangeUserSetting)
userGroup.POST("/feedback", feedback.UpFeedback)
}
//r.GET("/socket", jwt.JWTAuthMiddleware(), func(c *gin.Context) {
// socket.WebsocketHandler(c)
//})
systemGroup := r.Group("/system")
{
systemGroup.POST("/sendMsg", system.SendMsg)
}
searchGroup := r.Group("/search")
{
searchGroup.POST("/usersearch", search.DataSearch)
searchGroup.POST("/insert", search.InsertDocument)
}
articleGroup := r.Group("/article")
{
articleGroup.POST("/get", article.ArticleListget)
articleGroup.POST("/vote", article.VoteArticle)
articleGroup.POST("/create", article.CreateArticle)
articleGroup.POST("/delete", article.DeleteArticle)
articleGroup.POST("/getnum", getArticleNum.GetArticlenum)
}
goodsGroup := r.Group("/goods")
{
goodsGroup.GET("/getgoodslist", goods.GetGoods)
}
commentGroup := r.Group("/comment")
{
commentGroup.POST("/get", getcomments.GetComments)
commentGroup.POST("/publish", publishComments.PublishComment)
}
notificationGroup := r.Group("/notification")
{
notificationGroup.POST("/get", getnotifications.GetNotifications)
}
fileGroup := r.Group("/file")
{
fileGroup.POST("/upload", file.PicUpload)
}
return r
}