| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- package routers
- import (
- "mtp2_if/controllers/cptrade"
- "mtp2_if/controllers/wrtrade"
- "mtp2_if/logger"
- "mtp2_if/token"
- "time"
- "github.com/gin-gonic/gin"
- // Swagger生成的文档
- _ "mtp2_if/docs"
- ginSwagger "github.com/swaggo/gin-swagger"
- "github.com/swaggo/gin-swagger/swaggerFiles"
- )
- // InitRouter 初始化路由器的方法
- func InitRouter() *gin.Engine {
- r := gin.New()
- // 设置日志中间件
- r.Use(ginLoggerMiddleware())
- // 设置奔溃中间件
- r.Use(ginRecoveryMiddleware())
- // Swagger
- r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
- // 路由分组
- apiR := r.Group("/api")
- apiR.Use(token.Auth())
- // ************************ 仓单贸易 ************************
- wrTradeR := apiR.Group("WRTrade")
- wrTradeR.Use()
- {
- wrTradeR.GET("/GetAllDeliveryGoods", wrtrade.GetAllDeliveryGoods)
- }
- // ************************ 产能预售 ************************
- cpTradeR := apiR.Group("CPTrade")
- cpTradeR.Use()
- {
- // 查询产能预售申请表
- cpTradeR.GET("/QueryPreasleApply", cptrade.QueryPreasleApply)
- }
- return r
- }
- func ginLoggerMiddleware() gin.HandlerFunc {
- return func(c *gin.Context) {
- start := time.Now()
- c.Next()
- end := time.Now()
- latency := end.Sub(start)
- path := c.Request.URL.RequestURI()
- clientip := c.ClientIP()
- method := c.Request.Method
- statuscode := c.Writer.Status()
- logger.GetLogger().Infof("|%3d|%13v|%15s|%s %s",
- statuscode,
- latency,
- clientip,
- method,
- path)
- }
- }
- func ginRecoveryMiddleware() gin.HandlerFunc {
- return gin.RecoveryWithWriter(logger.GetLogWriter())
- }
|