wms-be/modules/inventory_receipt/routes.go

28 lines
1.4 KiB
Go

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