telco_server/app/admin/router/router.go

54 lines
1.3 KiB
Go

package router
import (
"github.com/gin-gonic/gin"
_ "github.com/gin-gonic/gin"
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth"
jwt "github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth"
)
var (
routerNoCheckRole = make([]func(*gin.RouterGroup), 0)
routerCheckRole = make([]func(v1 *gin.RouterGroup, authMiddleware *jwt.GinJWTMiddleware), 0)
)
func InitBusinessRouter(r *gin.Engine, authMiddleware *jwt.GinJWTMiddleware) *gin.Engine {
// 无需认证的路由
businessNoCheckRoleRouter(r)
// 需要认证的路由
businessCheckRoleRouter(r, authMiddleware)
return r
}
// 无需认证的路由示例
func businessNoCheckRoleRouter(r *gin.Engine) {
// 可根据业务需求来设置接口版本
v1 := r.Group("/api/v1")
for _, f := range routerNoCheckRole {
f(v1)
}
}
// 需要认证的路由示例
func businessCheckRoleRouter(r *gin.Engine, authMiddleware *jwtauth.GinJWTMiddleware) {
// 可根据业务需求来设置接口版本
v1 := r.Group("/api/v1")
for _, f := range routerCheckRole {
f(v1, authMiddleware)
}
// 通用接口
registerCommonManageRouter(v1, authMiddleware)
// 产品管理
registerProductManageRouter(v1, authMiddleware)
// 合作商管理
registerCooperativeManageRouter(v1, authMiddleware)
// 合同管理
registerContractManageRouter(v1, authMiddleware)
}