Pull latest changes from upstream/main (GitHub) including: - Purchase RPC service (proto, server, logic, models) - Gateway route updates for purchase endpoints - SQL migration and config updates Excludes deploy/bin/ pre-compiled arm64 binaries (builds use multi-stage Dockerfiles targeting amd64).
638 lines
16 KiB
Go
638 lines
16 KiB
Go
// Code generated by goctl. DO NOT EDIT.
|
|
// goctl 1.9.2
|
|
|
|
package handler
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
auth "muyu-apiserver/gateway/internal/handler/auth"
|
|
crmrelation "muyu-apiserver/gateway/internal/handler/crm/relation"
|
|
inventoryadjust "muyu-apiserver/gateway/internal/handler/inventory/adjust"
|
|
inventorycheck "muyu-apiserver/gateway/internal/handler/inventory/check"
|
|
inventorylog "muyu-apiserver/gateway/internal/handler/inventory/log"
|
|
inventorypanbolt "muyu-apiserver/gateway/internal/handler/inventory/panbolt"
|
|
inventoryproduct "muyu-apiserver/gateway/internal/handler/inventory/product"
|
|
inventorystock "muyu-apiserver/gateway/internal/handler/inventory/stock"
|
|
purchaseorder "muyu-apiserver/gateway/internal/handler/purchase/order"
|
|
purchasepayment "muyu-apiserver/gateway/internal/handler/purchase/payment"
|
|
purchasereceipt "muyu-apiserver/gateway/internal/handler/purchase/receipt"
|
|
purchasestats "muyu-apiserver/gateway/internal/handler/purchase/stats"
|
|
purchasesupplier "muyu-apiserver/gateway/internal/handler/purchase/supplier"
|
|
systemconfig "muyu-apiserver/gateway/internal/handler/system/config"
|
|
systemlog "muyu-apiserver/gateway/internal/handler/system/log"
|
|
systemmenu "muyu-apiserver/gateway/internal/handler/system/menu"
|
|
systemrole "muyu-apiserver/gateway/internal/handler/system/role"
|
|
systemuser "muyu-apiserver/gateway/internal/handler/system/user"
|
|
"muyu-apiserver/gateway/internal/svc"
|
|
|
|
"github.com/zeromicro/go-zero/rest"
|
|
)
|
|
|
|
func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
|
|
server.AddRoutes(
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/login",
|
|
Handler: auth.LoginHandler(serverCtx),
|
|
},
|
|
},
|
|
rest.WithPrefix("/api/v1/auth"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/tenants/search",
|
|
Handler: crmrelation.SearchTenantsHandler(serverCtx),
|
|
},
|
|
},
|
|
rest.WithPrefix("/api/v1/public"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/info",
|
|
Handler: auth.GetUserInfoHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/logout",
|
|
Handler: auth.LogoutHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/password",
|
|
Handler: auth.ChangePasswordHandler(serverCtx),
|
|
},
|
|
},
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/auth"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/graph/full",
|
|
Handler: crmrelation.GetFullGraphHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/graph/upstream",
|
|
Handler: crmrelation.ListUpstreamHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/graph/downstream",
|
|
Handler: crmrelation.ListDownstreamHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/relationships",
|
|
Handler: crmrelation.CreateRelationHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/relationships/:id",
|
|
Handler: crmrelation.UpdateRelationHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/relationships/history",
|
|
Handler: crmrelation.ListRelationHistoryHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/crm"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/adjusts",
|
|
Handler: inventoryadjust.ListStockAdjustHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/adjusts",
|
|
Handler: inventoryadjust.CreateStockAdjustHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/adjusts/:id",
|
|
Handler: inventoryadjust.GetStockAdjustHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/adjusts/:id/approve",
|
|
Handler: inventoryadjust.ApproveStockAdjustHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/inventory"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/checks",
|
|
Handler: inventorycheck.ListStockCheckHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/checks",
|
|
Handler: inventorycheck.CreateStockCheckHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/checks/:id",
|
|
Handler: inventorycheck.GetStockCheckHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/checks/:id",
|
|
Handler: inventorycheck.UpdateStockCheckHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/checks/:id/confirm",
|
|
Handler: inventorycheck.ConfirmStockCheckHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/inventory"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/products",
|
|
Handler: inventoryproduct.ListProductHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/products",
|
|
Handler: inventoryproduct.CreateProductHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/products/summary",
|
|
Handler: inventoryproduct.GetProductSummaryHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/products/colors",
|
|
Handler: inventoryproduct.GetColorDetailHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/products/export",
|
|
Handler: inventoryproduct.ExportProductHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/products/:id",
|
|
Handler: inventoryproduct.GetProductHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/products/:id",
|
|
Handler: inventoryproduct.UpdateProductHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodDelete,
|
|
Path: "/products/:id",
|
|
Handler: inventoryproduct.DeleteProductHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/products/:id/tree",
|
|
Handler: inventoryproduct.GetProductTreeHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/products/:id/pans",
|
|
Handler: inventoryproduct.ListPansHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/products/:id/pans",
|
|
Handler: inventoryproduct.SavePansHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/inventory"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/products/import",
|
|
Handler: inventoryproduct.ImportProductHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/inventory"),
|
|
rest.WithMaxBytes(50<<20),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/pans",
|
|
Handler: inventorypanbolt.ListPanViewHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/bolts",
|
|
Handler: inventorypanbolt.ListBoltViewHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/pans/:id/bolts",
|
|
Handler: inventorypanbolt.ListBoltsHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/pans/:id/bolts",
|
|
Handler: inventorypanbolt.SaveBoltsHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/inventory"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/stocks",
|
|
Handler: inventorystock.ListStockHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/stocks/by-color",
|
|
Handler: inventorystock.GetStockByColorHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/stocks/by-location",
|
|
Handler: inventorystock.GetStockByLocationHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/stocks/summary",
|
|
Handler: inventorystock.GetStockSummaryHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/inventory"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/configs",
|
|
Handler: systemconfig.ListConfigHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/configs/:key",
|
|
Handler: systemconfig.UpdateConfigHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/system"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/logs",
|
|
Handler: systemlog.ListLogHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/system"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/menus",
|
|
Handler: systemmenu.ListMenuHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/menus",
|
|
Handler: systemmenu.CreateMenuHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/menus/:id",
|
|
Handler: systemmenu.GetMenuHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/menus/:id",
|
|
Handler: systemmenu.UpdateMenuHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodDelete,
|
|
Path: "/menus/:id",
|
|
Handler: systemmenu.DeleteMenuHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/system"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/roles",
|
|
Handler: systemrole.ListRoleHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/roles",
|
|
Handler: systemrole.CreateRoleHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/roles/:id",
|
|
Handler: systemrole.GetRoleHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/roles/:id",
|
|
Handler: systemrole.UpdateRoleHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodDelete,
|
|
Path: "/roles/:id",
|
|
Handler: systemrole.DeleteRoleHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/roles/:id/permissions",
|
|
Handler: systemrole.SetRolePermissionsHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/system"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/users",
|
|
Handler: systemuser.ListUserHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/users",
|
|
Handler: systemuser.CreateUserHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/users/:id",
|
|
Handler: systemuser.GetUserHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/users/:id",
|
|
Handler: systemuser.UpdateUserHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodDelete,
|
|
Path: "/users/:id",
|
|
Handler: systemuser.DeleteUserHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/users/:id/status",
|
|
Handler: systemuser.UpdateUserStatusHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/system"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/suppliers",
|
|
Handler: purchasesupplier.ListSupplierHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/suppliers",
|
|
Handler: purchasesupplier.CreateSupplierHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/suppliers/:id",
|
|
Handler: purchasesupplier.GetSupplierHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/suppliers/:id",
|
|
Handler: purchasesupplier.UpdateSupplierHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodDelete,
|
|
Path: "/suppliers/:id",
|
|
Handler: purchasesupplier.DeleteSupplierHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/purchase"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/orders",
|
|
Handler: purchaseorder.ListPurchaseOrderHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/orders",
|
|
Handler: purchaseorder.CreatePurchaseOrderHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/orders/:id",
|
|
Handler: purchaseorder.GetPurchaseOrderHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPut,
|
|
Path: "/orders/:id",
|
|
Handler: purchaseorder.UpdatePurchaseOrderHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/orders/:id/confirm",
|
|
Handler: purchaseorder.ConfirmPurchaseOrderHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/orders/:id/cancel",
|
|
Handler: purchaseorder.CancelPurchaseOrderHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/purchase"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/receipts",
|
|
Handler: purchasereceipt.ListPurchaseReceiptHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/receipts",
|
|
Handler: purchasereceipt.CreatePurchaseReceiptHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/receipts/:id",
|
|
Handler: purchasereceipt.GetPurchaseReceiptHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/receipts/:id/confirm",
|
|
Handler: purchasereceipt.ConfirmPurchaseReceiptHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/purchase"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/payments",
|
|
Handler: purchasepayment.ListPurchasePaymentHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodPost,
|
|
Path: "/payments",
|
|
Handler: purchasepayment.CreatePurchasePaymentHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/purchase"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/stats/summary",
|
|
Handler: purchasestats.GetPurchaseStatsSummaryHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/stats/by-supplier",
|
|
Handler: purchasestats.GetPurchaseStatsBySupplierHandler(serverCtx),
|
|
},
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/stats/by-product",
|
|
Handler: purchasestats.GetPurchaseStatsByProductHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/purchase"),
|
|
)
|
|
|
|
server.AddRoutes(
|
|
rest.WithMiddlewares(
|
|
[]rest.Middleware{serverCtx.AuthorityMiddleware},
|
|
[]rest.Route{
|
|
{
|
|
Method: http.MethodGet,
|
|
Path: "/logs",
|
|
Handler: inventorylog.ListInventoryLogHandler(serverCtx),
|
|
},
|
|
}...,
|
|
),
|
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
|
rest.WithPrefix("/api/v1/inventory"),
|
|
)
|
|
}
|