feat: update post detail page

This commit is contained in:
yanghao05
2025-04-25 11:39:28 +08:00
parent 505c41e9ef
commit b8c2c245f2
15 changed files with 191 additions and 76 deletions

View File

@@ -21,7 +21,7 @@ type TokenResponse struct {
}
// Login
// @Router /v1/admin/auth [post]
// @Router /admin/auth [post]
// @Bind body body
func (ctl *auth) Login(ctx fiber.Ctx, body *AuthBody) (*TokenResponse, error) {
if body.Username == "admin" && body.Password == "xixi@0202" {

View File

@@ -14,7 +14,7 @@ type medias struct {
}
// List medias
// @Router /v1/admin/medias [get]
// @Router /admin/medias [get]
// @Bind pagination query
// @Bind query query
func (ctl *medias) List(ctx fiber.Ctx, pagination *requests.Pagination, query *ListQuery) (*requests.Pager, error) {
@@ -23,7 +23,7 @@ func (ctl *medias) List(ctx fiber.Ctx, pagination *requests.Pagination, query *L
}
// Show media
// @Router /v1/admin/medias/:id [get]
// @Router /admin/medias/:id [get]
// @Bind id path
func (ctl *medias) Show(ctx fiber.Ctx, id int64) error {
media, err := models.Medias.GetByID(ctx.Context(), id)
@@ -40,7 +40,7 @@ func (ctl *medias) Show(ctx fiber.Ctx, id int64) error {
}
// Delete
// @Router /v1/admin/medias/:id [delete]
// @Router /admin/medias/:id [delete]
// @Bind id path
func (ctl *medias) Delete(ctx fiber.Ctx, id int64) error {
media, err := models.Medias.GetByID(ctx.Context(), id)

View File

@@ -16,7 +16,7 @@ type OrderListQuery struct {
type orders struct{}
// List users
// @Router /v1/admin/orders [get]
// @Router /admin/orders [get]
// @Bind pagination query
// @Bind query query
func (ctl *orders) List(ctx fiber.Ctx, pagination *requests.Pagination, query *OrderListQuery) (*requests.Pager, error) {

View File

@@ -18,7 +18,7 @@ type ListQuery struct {
type posts struct{}
// List posts
// @Router /v1/admin/posts [get]
// @Router /admin/posts [get]
// @Bind pagination query
// @Bind query query
func (ctl *posts) List(ctx fiber.Ctx, pagination *requests.Pagination, query *ListQuery) (*requests.Pager, error) {
@@ -63,7 +63,7 @@ type PostForm struct {
}
// Create
// @Router /v1/admin/posts [post]
// @Router /admin/posts [post]
// @Bind form body
func (ctl *posts) Create(ctx fiber.Ctx, form *PostForm) error {
post := model.Posts{
@@ -100,7 +100,7 @@ func (ctl *posts) Create(ctx fiber.Ctx, form *PostForm) error {
}
// Update posts
// @Router /v1/admin/posts/:id [put]
// @Router /admin/posts/:id [put]
// @Bind id path
// @Bind form body
func (ctl *posts) Update(ctx fiber.Ctx, id int64, form *PostForm) error {
@@ -148,7 +148,7 @@ func (ctl *posts) Update(ctx fiber.Ctx, id int64, form *PostForm) error {
}
// Delete posts
// @Router /v1/admin/posts/:id [delete]
// @Router /admin/posts/:id [delete]
// @Bind id path
func (ctl *posts) Delete(ctx fiber.Ctx, id int64) error {
post, err := models.Posts.GetByID(ctx.Context(), id)
@@ -172,7 +172,7 @@ type PostItem struct {
}
// Show posts by id
// @Router /v1/admin/posts/:id [get]
// @Router /admin/posts/:id [get]
// @Bind id path
func (ctl *posts) Show(ctx fiber.Ctx, id int64) (*PostItem, error) {
post, err := models.Posts.GetByID(ctx.Context(), id)
@@ -193,7 +193,7 @@ func (ctl *posts) Show(ctx fiber.Ctx, id int64) (*PostItem, error) {
}
// SendTo
// @Router /v1/admin/posts/:id/send-to/:userId [post]
// @Router /admin/posts/:id/send-to/:userId [post]
// @Bind id path
// @Bind userId path
func (ctl *posts) SendTo(ctx fiber.Ctx, id, userId int64) error {

View File

@@ -33,95 +33,95 @@ func (r *Routes) Name() string {
func (r *Routes) Register(router fiber.Router) {
// 注册路由组: auth
router.Post("/v1/admin/auth", DataFunc1(
router.Post("/admin/auth", DataFunc1(
r.auth.Login,
Body[AuthBody]("body"),
))
// 注册路由组: medias
router.Get("/v1/admin/medias", DataFunc2(
router.Get("/admin/medias", DataFunc2(
r.medias.List,
Query[requests.Pagination]("pagination"),
Query[ListQuery]("query"),
))
router.Get("/v1/admin/medias/:id", Func1(
router.Get("/admin/medias/:id", Func1(
r.medias.Show,
PathParam[int64]("id"),
))
router.Delete("/v1/admin/medias/:id", Func1(
router.Delete("/admin/medias/:id", Func1(
r.medias.Delete,
PathParam[int64]("id"),
))
// 注册路由组: orders
router.Get("/v1/admin/orders", DataFunc2(
router.Get("/admin/orders", DataFunc2(
r.orders.List,
Query[requests.Pagination]("pagination"),
Query[OrderListQuery]("query"),
))
// 注册路由组: posts
router.Get("/v1/admin/posts", DataFunc2(
router.Get("/admin/posts", DataFunc2(
r.posts.List,
Query[requests.Pagination]("pagination"),
Query[ListQuery]("query"),
))
router.Post("/v1/admin/posts", Func1(
router.Post("/admin/posts", Func1(
r.posts.Create,
Body[PostForm]("form"),
))
router.Put("/v1/admin/posts/:id", Func2(
router.Put("/admin/posts/:id", Func2(
r.posts.Update,
PathParam[int64]("id"),
Body[PostForm]("form"),
))
router.Delete("/v1/admin/posts/:id", Func1(
router.Delete("/admin/posts/:id", Func1(
r.posts.Delete,
PathParam[int64]("id"),
))
router.Get("/v1/admin/posts/:id", DataFunc1(
router.Get("/admin/posts/:id", DataFunc1(
r.posts.Show,
PathParam[int64]("id"),
))
router.Post("/v1/admin/posts/:id/send-to/:userId", Func2(
router.Post("/admin/posts/:id/send-to/:userId", Func2(
r.posts.SendTo,
PathParam[int64]("id"),
PathParam[int64]("userId"),
))
// 注册路由组: uploads
router.Get("/v1/admin/uploads/pre-uploaded-check/:md5.:ext", DataFunc3(
router.Get("/admin/uploads/pre-uploaded-check/:md5.:ext", DataFunc3(
r.uploads.PreUploadCheck,
PathParam[string]("md5"),
PathParam[string]("ext"),
QueryParam[string]("mime"),
))
router.Post("/v1/admin/uploads/post-uploaded-action", Func1(
router.Post("/admin/uploads/post-uploaded-action", Func1(
r.uploads.PostUploadedAction,
Body[PostUploadedForm]("body"),
))
// 注册路由组: users
router.Get("/v1/admin/users", DataFunc2(
router.Get("/admin/users", DataFunc2(
r.users.List,
Query[requests.Pagination]("pagination"),
Query[UserListQuery]("query"),
))
router.Get("/v1/admin/users/:id", DataFunc1(
router.Get("/admin/users/:id", DataFunc1(
r.users.Show,
PathParam[int64]("id"),
))
router.Get("/v1/admin/users/:id/articles", DataFunc2(
router.Get("/admin/users/:id/articles", DataFunc2(
r.users.Articles,
PathParam[int64]("id"),
Query[requests.Pagination]("pagination"),

View File

@@ -33,7 +33,7 @@ type PreCheckResp struct {
}
// PreUploadCheck
// @Router /v1/admin/uploads/pre-uploaded-check/:md5.:ext [get]
// @Router /admin/uploads/pre-uploaded-check/:md5.:ext [get]
// @Bind md5 path
// @Bind ext path
// @Bind mime query
@@ -59,7 +59,7 @@ type PostUploadedForm struct {
}
// PostUploadedAction
// @Router /v1/admin/uploads/post-uploaded-action [post]
// @Router /admin/uploads/post-uploaded-action [post]
// @Bind body body
func (up *uploads) PostUploadedAction(ctx fiber.Ctx, body *PostUploadedForm) error {
m, err := models.Medias.GetByHash(ctx.Context(), body.Md5)

View File

@@ -16,7 +16,7 @@ type UserListQuery struct {
type users struct{}
// List users
// @Router /v1/admin/users [get]
// @Router /admin/users [get]
// @Bind pagination query
// @Bind query query
func (ctl *users) List(ctx fiber.Ctx, pagination *requests.Pagination, query *UserListQuery) (*requests.Pager, error) {
@@ -25,14 +25,14 @@ func (ctl *users) List(ctx fiber.Ctx, pagination *requests.Pagination, query *Us
}
// Show user
// @Router /v1/admin/users/:id [get]
// @Router /admin/users/:id [get]
// @Bind id path
func (ctl *users) Show(ctx fiber.Ctx, id int64) (*model.Users, error) {
return models.Users.GetByID(ctx.Context(), id)
}
// Articles show user bought articles
// @Router /v1/admin/users/:id/articles [get]
// @Router /admin/users/:id/articles [get]
// @Bind id path
// @Bind pagination query
func (ctl *users) Articles(ctx fiber.Ctx, id int64, pagination *requests.Pagination) (*requests.Pager, error) {