package router import ( "applet/app/cfg" "applet/app/comm/svc" "applet/app/mw" operatorHdl "applet/app/operator/hdl" storeHdl "applet/app/store/hdl" _ "applet/docs" "fmt" "github.com/gin-gonic/gin" ) // test3 // Init 初始化路由 // /////////////////路由规则////////////////////////// // 只允许内网访问的路由,请使用 /api/v1/inComm 前缀 // // 内外网均可访问,使用 /api/v1/comm 前缀 // // /////////////////////////////////////////////// func Init() *gin.Engine { // debug, release, test 项目阶段 mode := "release" if cfg.Debug { mode = "debug" } gin.SetMode(mode) //创建一个新的启动器 r := gin.New() r.Use(mw.ChangeHeader) // 是否打印访问日志, 在非正式环境都打印 if mode != "release" { r.Use(gin.Logger()) } r.Use(gin.Recovery()) // r.Use(mw.Limiter) //r.LoadHTMLGlob("static/html/*") r.GET("/favicon.ico", func(c *gin.Context) { c.Status(204) }) r.NoRoute(func(c *gin.Context) { c.JSON(404, gin.H{"code": 404, "msg": "page not found", "data": []struct{}{}}) }) r.NoMethod(func(c *gin.Context) { c.JSON(405, gin.H{"code": 405, "msg": "method not allowed", "data": []struct{}{}}) }) r.Use(mw.Cors) r.GET("/test", mw.DB, func(c *gin.Context) { r := svc.SysCfgGet(c, "app_name_cn") fmt.Println(r) }) routeStore(r.Group("/api/v1/campTask/store")) routeCustom(r.Group("/api/v1/campTask/custom")) routeOperator(r.Group("/api/v1/campTask/operator")) return r } func routeStore(r *gin.RouterGroup) { r.Any("/alipay/pay/callback", storeHdl.AlipayCallBack) r.POST("/img/callback", storeHdl.FileImgCallback) r.Use(mw.DB) // 以下接口需要用到数据库 r.Use(mw.Checker) // 以下接口需要检查Header: platform r.PUT("/img/upload", storeHdl.ImgReqUpload) r.POST("/login", storeHdl.Login) //账号密码登陆 r.POST("/sms", storeHdl.Sms) //发验证码 r.POST("/register", storeHdl.Register) //注册 r.POST("/fastLogin", storeHdl.FastLogin) //快捷登陆 r.POST("/changePwd", storeHdl.ChangePwd) //修改密码 r.Use(mw.StoreAuthJWT) // 以下接口需要JWT验证 r.GET("/userInfo", storeHdl.UserInfo) //首页数据 r.GET("/index", storeHdl.Index) //首页数据 r.GET("/storeIndex", storeHdl.StoreIndex) //商家中心 r.GET("/taskBase", storeHdl.TaskBase) //任务基础 r.POST("/taskList", storeHdl.TaskList) //任务列表 r.POST("/taskDetail", storeHdl.TaskDetail) //任务详情 r.POST("/taskUp", storeHdl.TaskUp) //任务上架 r.POST("/taskDown", storeHdl.TaskDown) //任务下架 r.POST("/taskChangeNum", storeHdl.TaskChangeNum) //任务调整数量 r.POST("/taskSave", storeHdl.TaskSave) //任务发布修改 r.POST("/taskUpList", storeHdl.TaskUpList) //上架的任务列表 r.POST("/taskAllList", storeHdl.TaskAllList) //全网任务列表 r.POST("/taskAllDetail", storeHdl.TaskAllDetail) //任务详情 //订单 r.POST("/taskWaitAuditOrder", storeHdl.TaskWaitAuditOrder) //任务详情 r.POST("/taskWaitAuditOrderAudit", storeHdl.TaskWaitAuditOrderAudit) //任务详情 r.POST("/taskWaitSettleOrder", storeHdl.TaskWaitSettleOrder) //任务详情 r.POST("/taskWaitSettleOrderAudit", storeHdl.TaskWaitSettleOrderAudit) //任务详情 //支付 r.POST("/moneyOrderCreate", storeHdl.MoneyOrderCreate) r.POST("/moneyOrderState", storeHdl.MoneyOrderState) r.POST("/moneyOrderList", storeHdl.MoneyOrderList) r.POST("/announcementList", storeHdl.AnnouncementList) //公告 r.POST("/announcementSave", storeHdl.AnnouncementSave) //公告详情 r.POST("/announcementDel", storeHdl.AnnouncementDel) //公告详情 //负责人 r.POST("/directorList", storeHdl.DirectorList) r.POST("/directorSave", storeHdl.DirectorSave) r.POST("/directorTaskSave", storeHdl.DirectorTaskSave) r.POST("/directorDel", storeHdl.DirectorDel) //项目 r.POST("/projectList", storeHdl.ProjectList) r.POST("/projectSave", storeHdl.ProjectSave) r.POST("/projectDel", storeHdl.ProjectDel) r.POST("/allProjectList", storeHdl.AllProjectList) r.GET("/allProjectCate", storeHdl.AllProjectCate) } func routeCustom(r *gin.RouterGroup) { r.Use(mw.DB) // 以下接口需要用到数据库 r.Use(mw.Checker) // 以下接口需要检查Header: platform r.Use(mw.AuthJWT) // 以下接口需要JWT验证 } func routeOperator(r *gin.RouterGroup) { r.Use(mw.DB) // 以下接口需要用到数据库 r.Use(mw.Checker) // 以下接口需要检查Header: platform r.GET("/base", operatorHdl.Base) //账号密码登陆 r.POST("/login", operatorHdl.Login) //账号密码登陆 r.POST("/sms", operatorHdl.Sms) //发验证码 r.POST("/fastLogin", operatorHdl.FastLogin) //快捷登陆 r.Use(mw.AuthJWT) // 以下接口需要JWT验证 r.GET("/userInfo", operatorHdl.UserInfo) //首页数据 r.GET("/index", operatorHdl.Index) r.POST("/taskCenter", operatorHdl.TaskList) r.POST("/taskCenter/detail", operatorHdl.TaskDetail) r.POST("/taskCenter/upList", operatorHdl.TaskUpList) r.POST("/taskCenter/up", operatorHdl.TaskUp) r.POST("/taskCenter/down", operatorHdl.TaskDown) r.POST("/projectCenter", operatorHdl.ProjectList) r.POST("/projectSelect", operatorHdl.ProjectSelect) r.GET("/centerBase", operatorHdl.CenterBase) r.POST("/centerList", operatorHdl.CenterList) r.POST("/centerOperatorList", operatorHdl.CenterOperatorList) r.POST("/centerOperatorDetailList", operatorHdl.CenterOperatorDetailList) r.POST("/centerOperatorDetailTaskList", operatorHdl.CenterOperatorDetailTaskList) r.POST("/centerOperatorProjectList", operatorHdl.CenterOperatorProjectList) r.POST("/centerOperatorProjectRemark", operatorHdl.CenterOperatorProjectRemark) r.POST("/centerOperatorProjectDel", operatorHdl.CenterOperatorProjectDel) }