Files
energy-management-system/router/router.go
2024-09-03 15:52:38 +08:00

61 lines
1.5 KiB
Go

package router
import (
v1 "energy-management-system/api/v1"
"energy-management-system/global"
"energy-management-system/middleware"
"energy-management-system/router/routes"
"energy-management-system/utils/code"
"energy-management-system/utils/exception"
"energy-management-system/utils/recovery"
"github.com/gin-gonic/gin"
"net/http"
)
func InitRouter() *gin.Engine {
if global.AppConf.IsDebug {
gin.SetMode(gin.DebugMode)
} else {
gin.SetMode("release")
}
r := gin.Default()
//r.NoRoute(exception.NotFoundR)
//r.NoMethod(exception.NotFoundM)
r.NoRoute(func(c *gin.Context) {
c.JSON(http.StatusForbidden, exception.E{Code: code.NOT_FOUND_ROUTE, Msg: "Not Found Route", Err: nil})
})
r.NoMethod(func(c *gin.Context) {
c.JSON(http.StatusForbidden, exception.E{Code: code.NOT_FOUND_METH, Msg: "Not Found Method"})
})
r.Use(middleware.Cors(), middleware.Log, recovery.GinRecovery)
api := r.Group("api")
{
controllersV1 := new(v1.Controller)
apiV1 := api.Group("v1")
{
apiV1.GET("test/test", controllersV1.TestApi.Test)
apiV1.GET("test/testData", controllersV1.TestApi.TestData)
}
//// 需要权限校验
//apiV1.Use(middleware.JWTAuth())
//{
// apiV1.GET("user/test_d", controllersV1.TestD)
//}
// 需要权限校验
//apiV1.Use(middleware.CasbinRBAC())
{
routes.GroupRoutes.Common.InitCommon(apiV1)
routes.GroupRoutes.PeakValley.InitPeakValley(apiV1)
routes.GroupRoutes.DevicePoint.InitDevicePoint(apiV1)
}
}
return r
}