Files
qvyun/backend/app/http/posts/routes.gen.go
2025-01-15 20:31:21 +08:00

75 lines
1.6 KiB
Go

// Code generated by the atomctl ; DO NOT EDIT.
package posts
import (
"backend/app/requests"
. "backend/pkg/f"
"backend/providers/jwt"
_ "git.ipao.vip/rogeecn/atom"
_ "git.ipao.vip/rogeecn/atom/contracts"
"github.com/gofiber/fiber/v3"
log "github.com/sirupsen/logrus"
)
// @provider contracts.HttpRoute atom.GroupRoutes
type Routes struct {
log *log.Entry `inject:"false"`
controller *Controller
}
func (r *Routes) Prepare() error {
r.log = log.WithField("module", "routes.posts")
return nil
}
func (r *Routes) Name() string {
return "posts"
}
func (r *Routes) Register(router fiber.Router) {
// 注册路由组: Controller
router.Get("/api/v1/posts", DataFunc3(
r.controller.List,
Local[*jwt.Claims]("claim"),
Query[requests.Pagination]("pagination"),
Query[UserPostFilter]("filter"),
))
router.Get("/api/v1/bought-posts", DataFunc3(
r.controller.ListBought,
Local[*jwt.Claims]("claim"),
Query[requests.Pagination]("pagination"),
Query[UserPostFilter]("filter"),
))
router.Get("/api/v1/show/:hash", DataFunc2(
r.controller.Show,
Local[*jwt.Claims]("claim"),
PathParam[string]("hash"),
))
router.Post("/api/v1/posts", Func3(
r.controller.Create,
Local[*jwt.Claims]("claim"),
CookieParam("tenant"),
Body[PostBody]("body"),
))
router.Delete("/api/v1/posts/:hash", Func3(
r.controller.Delete,
Local[*jwt.Claims]("claim"),
CookieParam("tenant"),
PathParam[string]("hash"),
))
router.Put("/api/v1/posts/:hash", Func3(
r.controller.Update,
Local[*jwt.Claims]("claim"),
PathParam[string]("hash"),
Body[PostBody]("body"),
))
}