wms-be/modules/inventory_request/routes.go

28 lines
1.4 KiB
Go

package inventoryrequest
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/inventory_request/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) {
requestController := do.MustInvoke[controller.InventoryRequestController](injector)
jwtService := do.MustInvokeNamed[service.JWTService](injector, constants.JWTService)
requestRoutes := server.Group("/api/v1/inventory-requests")
{
requestRoutes.POST("", middlewares.Authenticate(jwtService), requestController.Create)
requestRoutes.GET(":id", middlewares.Authenticate(jwtService), requestController.GetById)
requestRoutes.PUT(":id", middlewares.Authenticate(jwtService), requestController.Update)
requestRoutes.DELETE(":id", middlewares.Authenticate(jwtService), requestController.Delete)
requestRoutes.GET("", middlewares.Authenticate(jwtService), requestController.GetAll)
requestRoutes.POST(":id/lines", middlewares.Authenticate(jwtService), requestController.CreateLine)
requestRoutes.PUT("lines/:id", middlewares.Authenticate(jwtService), requestController.UpdateLine)
requestRoutes.DELETE("lines/:id", middlewares.Authenticate(jwtService), requestController.DeleteLine)
}
}