package routes import ( "github.com/gofiber/fiber/v2" "github.com/break/junhong_cmp_fiber/internal/handler/admin" "github.com/break/junhong_cmp_fiber/internal/model" "github.com/break/junhong_cmp_fiber/pkg/openapi" ) func registerShopRoutes(router fiber.Router, handler *admin.ShopHandler, doc *openapi.Generator, basePath string) { shops := router.Group("/shops") groupPath := basePath + "/shops" Register(shops, doc, groupPath, "GET", "", handler.List, RouteSpec{ Summary: "店铺列表", Tags: []string{"店铺管理"}, Input: new(model.ShopListRequest), Output: new(model.ShopPageResult), Auth: true, }) Register(shops, doc, groupPath, "POST", "", handler.Create, RouteSpec{ Summary: "创建店铺", Tags: []string{"店铺管理"}, Input: new(model.CreateShopRequest), Output: new(model.ShopResponse), Auth: true, }) Register(shops, doc, groupPath, "PUT", "/:id", handler.Update, RouteSpec{ Summary: "更新店铺", Tags: []string{"店铺管理"}, Input: new(model.UpdateShopParams), Output: new(model.ShopResponse), Auth: true, }) Register(shops, doc, groupPath, "DELETE", "/:id", handler.Delete, RouteSpec{ Summary: "删除店铺", Tags: []string{"店铺管理"}, Input: new(model.IDReq), Output: nil, Auth: true, }) } func registerShopAccountRoutes(router fiber.Router, handler *admin.ShopAccountHandler, doc *openapi.Generator, basePath string) { shopAccounts := router.Group("/shop-accounts") groupPath := basePath + "/shop-accounts" Register(shopAccounts, doc, groupPath, "GET", "", handler.List, RouteSpec{ Summary: "代理账号列表", Tags: []string{"代理账号管理"}, Input: new(model.ShopAccountListRequest), Output: new(model.ShopAccountPageResult), Auth: true, }) Register(shopAccounts, doc, groupPath, "POST", "", handler.Create, RouteSpec{ Summary: "创建代理账号", Tags: []string{"代理账号管理"}, Input: new(model.CreateShopAccountRequest), Output: new(model.ShopAccountResponse), Auth: true, }) Register(shopAccounts, doc, groupPath, "PUT", "/:id", handler.Update, RouteSpec{ Summary: "更新代理账号", Tags: []string{"代理账号管理"}, Input: new(model.UpdateShopAccountParams), Output: new(model.ShopAccountResponse), Auth: true, }) Register(shopAccounts, doc, groupPath, "PUT", "/:id/password", handler.UpdatePassword, RouteSpec{ Summary: "重置代理账号密码", Tags: []string{"代理账号管理"}, Input: new(model.UpdateShopAccountPasswordParams), Output: nil, Auth: true, }) Register(shopAccounts, doc, groupPath, "PUT", "/:id/status", handler.UpdateStatus, RouteSpec{ Summary: "启用/禁用代理账号", Tags: []string{"代理账号管理"}, Input: new(model.UpdateShopAccountStatusParams), Output: nil, Auth: true, }) }