package router import ( v1 "apsClient/api/v1" "apsClient/conf" _ "apsClient/docs" "github.com/gin-contrib/cors" "github.com/gin-gonic/gin" swaggerFiles "github.com/swaggo/files" ginSwagger "github.com/swaggo/gin-swagger" "net/http" ) 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)) PublicGroup := Router.Group("api") { // 健康监测 PublicGroup.GET("/health", func(c *gin.Context) { c.JSON(http.StatusOK, "ok") }) } v1Group := Router.Group("v1") taskApi := new(v1.TaskApi) taskGroup := v1Group.Group("task") { taskGroup.GET("get", taskApi.TaskGet) // 获取工序 taskGroup.GET("start/:id", taskApi.TaskStart) // 开启工序并获取参数 taskGroup.PUT("finish/:id", taskApi.TaskFinish) // 完成工序 taskGroup.POST("sendProcessParams/:id", taskApi.SendProcessParams) // 下发工艺参数 } configApi := new(v1.ConfigApi) configGroup := v1Group.Group("config") { configGroup.GET("net", configApi.GetNetConfig) // 获取网络配置 configGroup.POST("net", configApi.SetNetConfig) // 设置网络 configGroup.GET("plc", configApi.PlcGet) // 获取plc配置 configGroup.POST("plc", configApi.PlcUpdate) // 设置plc } plcApi := new(v1.PlcApi) plcGroup := v1Group.Group("plc") { plcGroup.GET("productProgress", plcApi.GetProductProgress) // 获取网络配置 } InitPlcBrandRouter(v1Group) return Router }