wms-be/modules/category/routes.go

25 lines
1.1 KiB
Go

package category
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/category/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) {
categoryController := do.MustInvoke[controller.CategoryController](injector)
jwtService := do.MustInvokeNamed[service.JWTService](injector, constants.JWTService)
categoryRoutes := server.Group("/api/v1/categories")
{
categoryRoutes.POST("", middlewares.Authenticate(jwtService), categoryController.Create)
categoryRoutes.GET("/:id", middlewares.Authenticate(jwtService), categoryController.GetById)
categoryRoutes.PUT("/:id", middlewares.Authenticate(jwtService), categoryController.Update)
categoryRoutes.DELETE("/:id", middlewares.Authenticate(jwtService), categoryController.Delete)
categoryRoutes.GET("", middlewares.Authenticate(jwtService), categoryController.GetAll)
}
}