feat: update
This commit is contained in:
@@ -6,11 +6,10 @@ import (
|
||||
"time"
|
||||
|
||||
"quyun/app/jobs"
|
||||
"quyun/app/models"
|
||||
"quyun/app/model"
|
||||
"quyun/app/requests"
|
||||
"quyun/database/conds"
|
||||
"quyun/database/fields"
|
||||
"quyun/database/schemas/public/model"
|
||||
"quyun/providers/ali"
|
||||
"quyun/providers/job"
|
||||
"quyun/providers/wepay"
|
||||
@@ -46,7 +45,7 @@ func (ctl *posts) List(ctx fiber.Ctx, pagination *requests.Pagination, query *Li
|
||||
conds.Post_Like(query.Keyword),
|
||||
}
|
||||
|
||||
pager, err := models.Posts.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
|
||||
@@ -54,13 +53,13 @@ func (ctl *posts) List(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 {
|
||||
userBoughtIds, err := models.Users.BatchCheckHasBought(ctx.Context(), user.ID, postIds)
|
||||
userBoughtIds, err := model.UsersModel.BatchCheckHasBought(ctx.Context(), user.ID, postIds)
|
||||
if err != nil {
|
||||
log.WithError(err).Errorf("BatchCheckHasBought err: %v", err)
|
||||
}
|
||||
|
||||
items := lo.FilterMap(pager.Items.([]model.Posts), func(item model.Posts, _ int) (PostItem, bool) {
|
||||
medias, err := models.Posts.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
|
||||
@@ -119,18 +118,18 @@ 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 := models.Posts.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
|
||||
}
|
||||
|
||||
bought, err := models.Users.HasBought(ctx.Context(), user.ID, post.ID)
|
||||
bought, err := model.UsersModel.HasBought(ctx.Context(), user.ID, post.ID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
medias, err := models.Posts.GetMediaByIds(ctx.Context(), post.HeadImages.Data)
|
||||
medias, err := model.PostsModel.GetMediaByIds(ctx.Context(), post.HeadImages.Data)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -174,22 +173,22 @@ func (ctl *posts) Play(ctx fiber.Ctx, id int64, user *model.Users) (*PlayUrl, er
|
||||
// }, nil
|
||||
|
||||
preview := false
|
||||
bought, err := models.Users.HasBought(ctx.Context(), user.ID, id)
|
||||
bought, err := model.UsersModel.HasBought(ctx.Context(), user.ID, id)
|
||||
if !bought || err != nil {
|
||||
preview = true
|
||||
}
|
||||
|
||||
log.Infof("Fetching play URL for post ID: %d", id)
|
||||
post, err := models.Posts.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
|
||||
}
|
||||
go models.Posts.IncrViewCount(ctx.Context(), post.ID)
|
||||
go model.PostsModel.IncrViewCount(ctx.Context(), post.ID)
|
||||
|
||||
for _, asset := range post.Assets.Data {
|
||||
if asset.Type == "video/mp4" && asset.Metas != nil && asset.Metas.Short == preview {
|
||||
media, err := models.Medias.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
|
||||
@@ -223,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 := models.Users.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
|
||||
@@ -232,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 := models.Posts.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
|
||||
@@ -271,7 +270,7 @@ func (ctl *posts) Mine(ctx fiber.Ctx, pagination *requests.Pagination, query *Li
|
||||
// @Bind id path
|
||||
// @Bind user local
|
||||
func (ctl *posts) Buy(ctx fiber.Ctx, id int64, user *model.Users) (*wechat.JSAPIPayParams, error) {
|
||||
bought, err := models.Users.HasBought(ctx.Context(), user.ID, id)
|
||||
bought, err := model.UsersModel.HasBought(ctx.Context(), user.ID, id)
|
||||
if err != nil {
|
||||
return nil, errors.New("查询购买失败")
|
||||
}
|
||||
@@ -280,19 +279,19 @@ func (ctl *posts) Buy(ctx fiber.Ctx, id int64, user *model.Users) (*wechat.JSAPI
|
||||
return nil, errors.New("已经购买过了")
|
||||
}
|
||||
|
||||
post, err := models.Posts.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 := models.Orders.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 := models.Orders.SetMeta(ctx.Context(), order.ID, func(om fields.OrderMeta) fields.OrderMeta {
|
||||
if err := model.OrdersModel.SetMeta(ctx.Context(), order.ID, func(om fields.OrderMeta) fields.OrderMeta {
|
||||
om.CostBalance = payPrice
|
||||
return om
|
||||
}); err != nil {
|
||||
@@ -310,7 +309,7 @@ func (ctl *posts) Buy(ctx fiber.Ctx, id int64, user *model.Users) (*wechat.JSAPI
|
||||
}
|
||||
|
||||
payPrice = payPrice - user.Balance
|
||||
if err := models.Orders.SetMeta(ctx.Context(), order.ID, func(om fields.OrderMeta) fields.OrderMeta {
|
||||
if err := model.OrdersModel.SetMeta(ctx.Context(), order.ID, func(om fields.OrderMeta) fields.OrderMeta {
|
||||
om.CostBalance = user.Balance
|
||||
return om
|
||||
}); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user