package initialize
|
|
import (
|
"net/http"
|
v1 "srm/api/v1"
|
"srm/middleware"
|
"srm/router/outsourcing"
|
"srm/router/purchase"
|
|
"github.com/gin-gonic/gin"
|
ginSwagger "github.com/swaggo/gin-swagger"
|
"github.com/swaggo/gin-swagger/swaggerFiles"
|
"srm/docs"
|
"srm/global"
|
"srm/router"
|
)
|
|
// 初始化总路由
|
|
func Routers() *gin.Engine {
|
Router := gin.Default()
|
systemRouter := router.RouterGroupApp.System
|
//exampleRouter := router.RouterGroupApp.Example
|
|
//Router.StaticFS(global.GVA_CONFIG.Local.StorePath, http.Dir(global.GVA_CONFIG.Local.StorePath)) // 为用户头像和文件提供静态地址
|
docs.SwaggerInfo.BasePath = global.GVA_CONFIG.System.RouterPrefix
|
Router.GET(global.GVA_CONFIG.System.RouterPrefix+"/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
|
global.GVA_LOG.Info("register swagger handler")
|
// 方便统一添加路由组前缀 多服务器上线使用
|
|
PrivateGroup := Router.Group(global.GVA_CONFIG.System.RouterPrefix)
|
{
|
// 健康监测
|
PrivateGroup.GET("/health", func(c *gin.Context) {
|
c.JSON(http.StatusOK, "ok")
|
})
|
//systemRouter.InitInitRouter(PublicGroup) // 自动初始化相关
|
}
|
|
var conApi = v1.ApiGroupApp.TestApiGroup.ContractApi
|
PrivateGroup.GET("previewContract", conApi.PreviewContract) // 预览Contract
|
PrivateGroup.GET("downloadContract", conApi.DownloadContract) // 下载Contract
|
|
PrivateGroup.Use(middleware.JWTAuth()).Use(middleware.VerifyResetPwd())
|
{
|
systemRouter.InitSystemRouter(PrivateGroup) // system相关路由
|
//exampleRouter.InitFileUploadAndDownloadRouter(PrivateGroup) // 文件上传下载功能路由
|
purchase.InitPurchaseRouter(PrivateGroup) //采购单路由
|
}
|
{
|
testRouter := router.RouterGroupApp.Test
|
testRouter.InitIndustryRouter(PrivateGroup)
|
testRouter.InitSupplierTypeRouter(PrivateGroup)
|
testRouter.InitSupplierRouter(PrivateGroup)
|
testRouter.InitContractRouter(PrivateGroup)
|
testRouter.InitProductRouter(PrivateGroup)
|
testRouter.InitMemberRouter(PrivateGroup)
|
testRouter.InitCodeRouter(PrivateGroup)
|
outsourcing.InitRouter(PrivateGroup)
|
router.InitRouter(PrivateGroup)
|
}
|
|
global.GVA_LOG.Info("router register success")
|
return Router
|
}
|