package router
|
|
import (
|
"aps_crm/conf"
|
_ "aps_crm/docs"
|
"github.com/gin-contrib/cors"
|
"github.com/gin-gonic/gin"
|
swaggerFiles "github.com/swaggo/files"
|
ginSwagger "github.com/swaggo/gin-swagger"
|
"net/http"
|
)
|
|
type Group struct {
|
BaseRouter
|
UserRouter
|
JwtRouter
|
CountryRouter
|
ProvinceRouter
|
CityRouter
|
RegionRouter
|
ContactRouter
|
ClientRouter
|
ClientStatusRouter
|
ClientTypeRouter
|
ClientOriginRouter
|
ClientLevelRouter
|
IndustryRouter
|
EnterpriseNatureRouter
|
RegisteredCapitalRouter
|
EnterpriseScaleRouter
|
SalesLeadsRouter
|
SalesSourcesRouter
|
FollowRecordRouter
|
SaleChanceRouter
|
SaleStageRouter
|
SaleTypeRouter
|
RegularCustomersRouter
|
PossibilityRouter
|
}
|
|
func InitRouter() *gin.Engine {
|
gin.SetMode(gin.ReleaseMode)
|
|
Router := gin.Default()
|
Router.Use(gin.Recovery())
|
if conf.Conf.System.Env == "develop" {
|
Router.Use(gin.Logger())
|
}
|
Router.Use(cors.Default())
|
Router.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
|
|
routerGroup := new(Group)
|
PublicGroup := Router.Group("api")
|
{
|
// 健康监测
|
PublicGroup.GET("/health", func(c *gin.Context) {
|
c.JSON(http.StatusOK, "ok")
|
})
|
}
|
{
|
routerGroup.InitBaseRouter(PublicGroup) // 注册基础功能路由 不做鉴权
|
routerGroup.InitImageRouter(PublicGroup) // 图像功能路由
|
}
|
|
PrivateGroup := Router.Group("api")
|
//PrivateGroup.Use(middleware.JWTAuth())
|
{
|
routerGroup.InitJwtRouter(PrivateGroup) // jwt相关路由
|
routerGroup.InitUserRouter(PrivateGroup) // 注册用户路由
|
routerGroup.InitCountryRouter(PrivateGroup) // 注册country路由
|
routerGroup.InitProvinceRouter(PrivateGroup) // 注册province路由
|
routerGroup.InitCityRouter(PrivateGroup) // 注册city路由
|
routerGroup.InitRegionRouter(PrivateGroup) // 注册region路由
|
routerGroup.InitContactRouter(PrivateGroup) // 注册contact路由
|
routerGroup.InitClientRouter(PrivateGroup) // 注册client路由
|
routerGroup.InitClientStatusRouter(PrivateGroup) // 注册clientStatus路由
|
routerGroup.InitClientTypeRouter(PrivateGroup) // 注册clientType路由
|
routerGroup.InitClientOriginRouter(PrivateGroup) // 注册clientOrigin路由
|
routerGroup.InitClientLevelRouter(PrivateGroup) // 注册clientLevel路由
|
routerGroup.InitIndustryRouter(PrivateGroup) // 注册industry路由
|
routerGroup.InitEnterpriseNatureRouter(PrivateGroup) // 注册enterpriseNature路由
|
routerGroup.InitRegisteredCapitalRouter(PrivateGroup) // 注册registeredCapital路由
|
routerGroup.InitEnterpriseScaleRouter(PrivateGroup) // 注册enterpriseScale路由
|
routerGroup.InitSalesLeadsRouter(PrivateGroup) // 注册salesLeads路由
|
routerGroup.InitSalesSourcesRouter(PrivateGroup) // 注册salesSources路由
|
routerGroup.InitFollowRecordRouter(PrivateGroup) // 注册followRecord路由
|
routerGroup.InitSaleChanceRouter(PrivateGroup) // 注册saleChance路由
|
routerGroup.InitSaleStageRouter(PrivateGroup) // 注册saleStage路由
|
routerGroup.InitSaleTypeRouter(PrivateGroup) // 注册saleType路由
|
routerGroup.InitRegularCustomersRouter(PrivateGroup) // 注册regularCustomers路由
|
routerGroup.InitPossibilityRouter(PrivateGroup) // 注册possibility路由
|
}
|
return Router
|
}
|