All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 6m39s
- 新增店铺角色管理 API 和数据模型 - 实现角色继承和权限检查逻辑 - 添加流程测试框架和集成测试 - 更新权限服务和账号管理逻辑 - 添加数据库迁移脚本 - 归档 OpenSpec 变更文档 Ultraworked with Sisyphus
105 lines
3.4 KiB
Go
105 lines
3.4 KiB
Go
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/dto"
|
|
"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(dto.ShopListRequest),
|
|
Output: new(dto.ShopPageResult),
|
|
Auth: true,
|
|
})
|
|
|
|
Register(shops, doc, groupPath, "POST", "", handler.Create, RouteSpec{
|
|
Summary: "创建店铺",
|
|
Tags: []string{"店铺管理"},
|
|
Input: new(dto.CreateShopRequest),
|
|
Output: new(dto.ShopResponse),
|
|
Auth: true,
|
|
})
|
|
|
|
Register(shops, doc, groupPath, "PUT", "/:id", handler.Update, RouteSpec{
|
|
Summary: "更新店铺",
|
|
Tags: []string{"店铺管理"},
|
|
Input: new(dto.UpdateShopParams),
|
|
Output: new(dto.ShopResponse),
|
|
Auth: true,
|
|
})
|
|
|
|
Register(shops, doc, groupPath, "DELETE", "/:id", handler.Delete, RouteSpec{
|
|
Summary: "删除店铺",
|
|
Tags: []string{"店铺管理"},
|
|
Input: new(dto.IDReq),
|
|
Output: nil,
|
|
Auth: true,
|
|
})
|
|
}
|
|
|
|
func registerShopRoleRoutes(router fiber.Router, handler *admin.ShopRoleHandler, doc *openapi.Generator, basePath string) {
|
|
shops := router.Group("/shops")
|
|
groupPath := basePath + "/shops"
|
|
|
|
Register(shops, doc, groupPath, "POST", "/:shop_id/roles", handler.AssignShopRoles, RouteSpec{
|
|
Summary: "分配店铺默认角色",
|
|
Tags: []string{"店铺管理"},
|
|
Input: new(dto.AssignShopRolesRequest),
|
|
Output: new(dto.ShopRolesResponse),
|
|
Auth: true,
|
|
})
|
|
|
|
Register(shops, doc, groupPath, "GET", "/:shop_id/roles", handler.GetShopRoles, RouteSpec{
|
|
Summary: "查询店铺默认角色",
|
|
Tags: []string{"店铺管理"},
|
|
Input: new(dto.GetShopRolesRequest),
|
|
Output: new(dto.ShopRolesResponse),
|
|
Auth: true,
|
|
})
|
|
|
|
Register(shops, doc, groupPath, "DELETE", "/:shop_id/roles/:role_id", handler.DeleteShopRole, RouteSpec{
|
|
Summary: "删除店铺默认角色",
|
|
Tags: []string{"店铺管理"},
|
|
Input: new(dto.DeleteShopRoleRequest),
|
|
Output: nil,
|
|
Auth: true,
|
|
})
|
|
}
|
|
|
|
func registerShopCommissionRoutes(router fiber.Router, handler *admin.ShopCommissionHandler, doc *openapi.Generator, basePath string) {
|
|
shops := router.Group("/shops")
|
|
groupPath := basePath + "/shops"
|
|
|
|
Register(shops, doc, groupPath, "GET", "/commission-summary", handler.ListCommissionSummary, RouteSpec{
|
|
Summary: "代理商佣金列表",
|
|
Tags: []string{"代理商佣金管理"},
|
|
Input: new(dto.ShopCommissionSummaryListReq),
|
|
Output: new(dto.ShopCommissionSummaryPageResult),
|
|
Auth: true,
|
|
})
|
|
|
|
Register(shops, doc, groupPath, "GET", "/:shop_id/withdrawal-requests", handler.ListWithdrawalRequests, RouteSpec{
|
|
Summary: "代理商提现记录",
|
|
Tags: []string{"代理商佣金管理"},
|
|
Input: new(dto.ShopWithdrawalRequestListReq),
|
|
Output: new(dto.ShopWithdrawalRequestPageResult),
|
|
Auth: true,
|
|
})
|
|
|
|
Register(shops, doc, groupPath, "GET", "/:shop_id/commission-records", handler.ListCommissionRecords, RouteSpec{
|
|
Summary: "代理商佣金明细",
|
|
Tags: []string{"代理商佣金管理"},
|
|
Input: new(dto.ShopCommissionRecordListReq),
|
|
Output: new(dto.ShopCommissionRecordPageResult),
|
|
Auth: true,
|
|
})
|
|
}
|