123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- package internal
- import (
- "fmt"
- "os"
- "time"
- "xugu_license/internal/controllers"
- middlewares "xugu_license/internal/middleware"
- "github.com/gin-gonic/gin"
- )
- func SetupRouter() *gin.Engine {
- r := gin.Default()
-
- logFileName := fmt.Sprintf("./logs/GTlicenseGin-%s.log", time.Now().Format("2006-01-02"))
- f, err := os.OpenFile(logFileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
- if err != nil {
- panic(fmt.Sprintf("Failed to open log file: %s", err))
- }
- gin.DefaultWriter = f
-
- r.Use(gin.LoggerWithFormatter(func(param gin.LogFormatterParams) string {
- return fmt.Sprintf("%s - [%s] \"%s %s %s %d %s \"%s\" %s\"\n",
- param.ClientIP,
- param.TimeStamp.Format(time.RFC1123),
- param.Method,
- param.Path,
- param.Request.Proto,
- param.StatusCode,
- param.Latency,
- param.Request.UserAgent(),
- param.ErrorMessage,
- )
- }))
-
-
-
- configureStaticFileServing(r)
-
- configureRootHandler(r)
- public := r.Group("/api")
- {
-
-
-
-
-
- public.POST("/register", controllers.Register)
- public.POST("/login", controllers.Login)
- public.GET("/image", func(c *gin.Context) {
- c.File("static/image/xugulogo.png")
- })
- }
- protected := r.Group("/api/admin")
- {
- protected.Use(middlewares.JwtAuthMiddleware())
-
- protected.GET("/userInfo", controllers.GetUserInfo)
-
- protected.GET("/userInfoAll", middlewares.PermissionMiddleware(middlewares.ReadUser), controllers.GetAllUserInfo)
-
- protected.POST("/updateUser", middlewares.PermissionMiddleware(middlewares.UpdateUser), controllers.UpdateUserInfo)
-
- protected.POST("/deleteUser", middlewares.PermissionMiddleware(middlewares.DeleteUser), controllers.DeleteUser)
-
- protected.POST("/upfile", middlewares.PermissionMiddleware(middlewares.UploadLicense), controllers.UploadfileHandler)
-
-
- protected.POST("/distributeLicense", middlewares.PermissionMiddleware(middlewares.DispatLicense), controllers.DistributeOALicenseController)
- protected.GET("/distributeLicenseByUserInfo", middlewares.PermissionMiddleware(middlewares.DispatLicense), controllers.DistributeLicenseByUser)
-
- protected.GET("/GetSingleSlicenseInfo", middlewares.PermissionMiddleware(middlewares.ReadLicense), controllers.GetSingleLicenseInfoController)
-
- protected.GET("/GetAllLicenseInfo", middlewares.PermissionMiddleware(middlewares.ReadLicense), controllers.GetAllLicenseInfoController)
-
- protected.POST("/GenerateLicense", middlewares.PermissionMiddleware(middlewares.GenerateLicense), controllers.GenerateOALicenseStrController)
- protected.POST("/GetlicenseRecord", middlewares.PermissionMiddleware(middlewares.ReadLicense), controllers.GetlicenseRecordInfo)
-
- protected.POST("/UpdateLicense", middlewares.PermissionMiddleware(middlewares.UpdateLicense), controllers.UpdateLicense)
- protected.POST("/deleteLicRow", middlewares.PermissionMiddleware(middlewares.DeleteLicense), controllers.DelLicenseInfoRow)
-
- protected.POST("/GetSelfRoles", controllers.GetRoles)
- protected.POST("/GetRoles", middlewares.PermissionMiddleware(middlewares.GetRole), controllers.GetRoles)
- protected.GET("/GetRoleNames", controllers.GetRoleNames)
- protected.POST("/CreateRole", middlewares.PermissionMiddleware(middlewares.CreateRole), controllers.CreateRole)
- protected.POST("/UpdateRole", middlewares.PermissionMiddleware(middlewares.UpdateRole), controllers.UpdateRole)
- protected.POST("/DeleteRole", middlewares.PermissionMiddleware(middlewares.DeleteRole), controllers.DeleteRole)
- }
- return r
- }
- func configureStaticFileServing(r *gin.Engine) {
- r.Static("/static", "./static")
- }
- func configureRootHandler(r *gin.Engine) {
- r.GET("/", func(c *gin.Context) {
- c.File("./static/login/login.html")
- })
- }
- func HttpController() {
- r := SetupRouter()
- r.Run("127.0.0.1:8080")
- }
|