29 lines
1.5 KiB
Go
29 lines
1.5 KiB
Go
package quarantine
|
|
|
|
import (
|
|
"github.com/Caknoooo/go-gin-clean-starter/middlewares"
|
|
"github.com/Caknoooo/go-gin-clean-starter/modules/auth/service"
|
|
"github.com/Caknoooo/go-gin-clean-starter/modules/quarantine/controller"
|
|
"github.com/Caknoooo/go-gin-clean-starter/pkg/constants"
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/samber/do"
|
|
)
|
|
|
|
func RegisterRoutes(server *gin.Engine, injector *do.Injector) {
|
|
quarantineController := do.MustInvoke[controller.QuarantineController](injector)
|
|
jwtService := do.MustInvokeNamed[service.JWTService](injector, constants.JWTService)
|
|
|
|
quarantineRoutes := server.Group("/api/v1/quarantines")
|
|
{
|
|
quarantineRoutes.POST("", middlewares.Authenticate(jwtService), quarantineController.Create)
|
|
quarantineRoutes.GET(":id", middlewares.Authenticate(jwtService), quarantineController.GetById)
|
|
quarantineRoutes.PUT(":id", middlewares.Authenticate(jwtService), quarantineController.Update)
|
|
quarantineRoutes.DELETE(":id", middlewares.Authenticate(jwtService), quarantineController.Delete)
|
|
quarantineRoutes.GET("", middlewares.Authenticate(jwtService), quarantineController.GetAll)
|
|
quarantineRoutes.POST(":id/lines", middlewares.Authenticate(jwtService), quarantineController.CreateLine)
|
|
quarantineRoutes.PUT("lines/:id", middlewares.Authenticate(jwtService), quarantineController.UpdateLine)
|
|
quarantineRoutes.DELETE("lines/:id", middlewares.Authenticate(jwtService), quarantineController.DeleteLine)
|
|
quarantineRoutes.POST(":id/complete", middlewares.Authenticate(jwtService), quarantineController.OnComplete)
|
|
}
|
|
}
|