54 lines
2.6 KiB
Go
54 lines
2.6 KiB
Go
package videogoldcoinmod
|
|
|
|
import (
|
|
"91porn-server/models/v/vidmod"
|
|
"go.mongodb.org/mongo-driver/bson"
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
"go.mongodb.org/mongo-driver/mongo/options"
|
|
"time"
|
|
)
|
|
|
|
type QueryVideoGoldCoinCond struct {
|
|
Page int64 `form:"pageNumber" binding:"required"` // 当前页码
|
|
Limit int64 `form:"pageSize" binding:"required"` // 每页条数
|
|
}
|
|
|
|
type QueryVideoGoldCoinRes struct {
|
|
List []*APPVideoGoldCoin `json:"list" bson:"list"` // 视频列表
|
|
ActivityDetail ActivityDetail `json:"activityDetail" bson:"activityDetail"` // 活动详情
|
|
HasNext bool `json:"hasNext" bson:"hasNext"` // 是否还有下一页
|
|
Total int64 `json:"total" bson:"total"` // 视频总数
|
|
}
|
|
|
|
type ActivityDetail struct {
|
|
StartTime time.Time `json:"startTime" bson:"startTime,omitempty"` // 支付尾款开始时间
|
|
EndTime time.Time `json:"endTime" bson:"endTime,omitempty"` // 支付尾款/活动 结束时间
|
|
BalancePayment bool `json:"balancePayment" bson:"balancePayment"` // 是否有尾款支付
|
|
ActivityTime time.Time `json:"activityTime" bson:"activityTime,omitempty"` // 活动时间
|
|
AdvanceAmount int64 `bson:"advanceAmount" json:"advanceAmount"` // 预付金额
|
|
BalanceAmount int64 `bson:"balanceAmount" json:"balanceAmount"` // 尾款金额
|
|
Status int `json:"status" bson:"status"` // 预售订单状态
|
|
TotalCount int64 `json:"totalCount" bson:"totalCount,omitempty"` // 会员卡总数
|
|
}
|
|
|
|
type APPVideoGoldCoin struct {
|
|
ID primitive.ObjectID `json:"id" bson:"_id,omitempty"` // id
|
|
VidId primitive.ObjectID `json:"vidId" bson:"vidId"` // 帖子id
|
|
VidTitle string `json:"vidTitle" bson:"vidTitle"` // 视频标题
|
|
SourceURL string `json:"sourceURL" bson:"sourceURL"` // 视频资源地址Path
|
|
Cover string `json:"cover" bson:"cover"` // 封面图
|
|
SeriesCover []string `json:"seriesCover" bson:"seriesCover"` // 帖子套图
|
|
Coins int64 `json:"coins" bson:"coins"` // 定价
|
|
Detail *vidmod.VideoInfo `json:"detail" bson:"detail"` // 详细数据
|
|
}
|
|
|
|
func (receiver *QueryVideoGoldCoinCond) Filter() bson.M {
|
|
var query = bson.M{}
|
|
query["status"] = 1
|
|
return query
|
|
}
|
|
|
|
func (receiver QueryVideoGoldCoinCond) Options() *options.FindOptions {
|
|
return options.Find().SetSkip((receiver.Page - 1) * receiver.Limit).SetLimit(receiver.Limit + 1).SetSort(bson.M{"sortCode": -1})
|
|
}
|