feat: update

This commit is contained in:
Rogee
2025-05-23 21:39:01 +08:00
parent f370887a71
commit f13ef4388e
20 changed files with 114 additions and 159 deletions

View File

@@ -45,7 +45,7 @@ func (ctl *posts) List(ctx fiber.Ctx, pagination *requests.Pagination, query *Li
conds.Post_Like(query.Keyword),
}
pager, err := model.PostsModel.List(ctx.Context(), pagination, conds...)
pager, err := model.PostsModel().List(ctx.Context(), pagination, conds...)
if err != nil {
log.WithError(err).Errorf("post list err: %v", err)
return nil, err
@@ -59,7 +59,7 @@ func (ctl *posts) List(ctx fiber.Ctx, pagination *requests.Pagination, query *Li
}
items := lo.FilterMap(pager.Items.([]model.Posts), func(item model.Posts, _ int) (PostItem, bool) {
medias, err := model.PostsModel.GetMediaByIds(ctx.Context(), item.HeadImages.Data)
medias, err := model.PostsModel().GetMediaByIds(ctx.Context(), item.HeadImages.Data)
if err != nil {
log.Errorf("GetMediaByIds err: %v", err)
return PostItem{}, false
@@ -118,7 +118,7 @@ type PostItem struct {
func (ctl *posts) Show(ctx fiber.Ctx, id int64, user *model.Users) (*PostItem, error) {
log.Infof("Fetching post with ID: %d", id)
post, err := model.PostsModel.GetByID(ctx.Context(), id, conds.Post_NotDeleted(), conds.Post_Status(fields.PostStatusPublished))
post, err := model.PostsModel().GetByID(ctx.Context(), id, conds.Post_NotDeleted(), conds.Post_Status(fields.PostStatusPublished))
if err != nil {
log.WithError(err).Errorf("GetByID err: %v", err)
return nil, err
@@ -129,7 +129,7 @@ func (ctl *posts) Show(ctx fiber.Ctx, id int64, user *model.Users) (*PostItem, e
return nil, err
}
medias, err := model.PostsModel.GetMediaByIds(ctx.Context(), post.HeadImages.Data)
medias, err := model.PostsModel().GetMediaByIds(ctx.Context(), post.HeadImages.Data)
if err != nil {
return nil, err
}
@@ -179,7 +179,7 @@ func (ctl *posts) Play(ctx fiber.Ctx, id int64, user *model.Users) (*PlayUrl, er
}
log.Infof("Fetching play URL for post ID: %d", id)
post, err := model.PostsModel.GetByID(ctx.Context(), id)
post, err := model.PostsModel().GetByID(ctx.Context(), id)
if err != nil {
log.WithError(err).Errorf("GetByID err: %v", err)
return nil, err
@@ -188,7 +188,7 @@ func (ctl *posts) Play(ctx fiber.Ctx, id int64, user *model.Users) (*PlayUrl, er
for _, asset := range post.Assets.Data {
if asset.Type == "video/mp4" && asset.Metas != nil && asset.Metas.Short == preview {
media, err := model.MediasModel.GetByID(ctx.Context(), asset.Media)
media, err := model.MediasModel().GetByID(ctx.Context(), asset.Media)
if err != nil {
log.WithError(err).Errorf("medias GetByID err: %v", err)
return nil, err
@@ -222,7 +222,7 @@ func (ctl *posts) Mine(ctx fiber.Ctx, pagination *requests.Pagination, query *Li
conds.Post_Status(fields.PostStatusPublished),
conds.Post_Like(query.Keyword),
}
pager, err := model.UsersModel.PostList(ctx.Context(), user.ID, pagination, conds...)
pager, err := model.UsersModel().PostList(ctx.Context(), user.ID, pagination, conds...)
if err != nil {
log.WithError(err).Errorf("post list err: %v", err)
return nil, err
@@ -231,7 +231,7 @@ func (ctl *posts) Mine(ctx fiber.Ctx, pagination *requests.Pagination, query *Li
postIds := lo.Map(pager.Items.([]model.Posts), func(item model.Posts, _ int) int64 { return item.ID })
if len(postIds) > 0 {
items := lo.FilterMap(pager.Items.([]model.Posts), func(item model.Posts, _ int) (PostItem, bool) {
medias, err := model.PostsModel.GetMediaByIds(ctx.Context(), item.HeadImages.Data)
medias, err := model.PostsModel().GetMediaByIds(ctx.Context(), item.HeadImages.Data)
if err != nil {
log.Errorf("GetMediaByIds err: %v", err)
return PostItem{}, false
@@ -279,19 +279,19 @@ func (ctl *posts) Buy(ctx fiber.Ctx, id int64, user *model.Users) (*wechat.JSAPI
return nil, errors.New("已经购买过了")
}
post, err := model.PostsModel.GetByID(ctx.Context(), id)
post, err := model.PostsModel().GetByID(ctx.Context(), id)
if err != nil {
return nil, errors.Wrapf(err, " failed to get post: %d", id)
}
payPrice := post.Price * int64(post.Discount) / 100
order, err := model.OrdersModel.Create(ctx.Context(), user.ID, post.ID)
order, err := model.OrdersModel().Create(ctx.Context(), user.ID, post.ID)
if err != nil {
return nil, errors.Wrap(err, "订单创建失败")
}
if user.Balance >= payPrice {
if err := model.OrdersModel.SetMeta(ctx.Context(), order.ID, func(om fields.OrderMeta) fields.OrderMeta {
if err := order.SetMeta(ctx.Context(), func(om fields.OrderMeta) fields.OrderMeta {
om.CostBalance = payPrice
return om
}); err != nil {
@@ -309,7 +309,7 @@ func (ctl *posts) Buy(ctx fiber.Ctx, id int64, user *model.Users) (*wechat.JSAPI
}
payPrice = payPrice - user.Balance
if err := model.OrdersModel.SetMeta(ctx.Context(), order.ID, func(om fields.OrderMeta) fields.OrderMeta {
if err := order.SetMeta(ctx.Context(), func(om fields.OrderMeta) fields.OrderMeta {
om.CostBalance = user.Balance
return om
}); err != nil {