@@ -0,0 +1,63 @@
|
||||
package video_gold_coin_ser
|
||||
|
||||
import (
|
||||
"91porn-server/models/commod"
|
||||
"91porn-server/models/v/advanceordermod"
|
||||
"91porn-server/models/v/productmod"
|
||||
"91porn-server/models/v/videogoldcoinmod"
|
||||
"go.mongodb.org/mongo-driver/bson"
|
||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||
)
|
||||
|
||||
func GainVideoGoldCoin(uid uint64, in *videogoldcoinmod.QueryVideoGoldCoinCond) (data videogoldcoinmod.QueryVideoGoldCoinRes, err error) {
|
||||
var resp videogoldcoinmod.QueryVideoGoldCoinRes
|
||||
list, total, next, err := videogoldcoinmod.GetVideoList(in.Page, in.Limit, in.Filter(), in.Options())
|
||||
if err != nil {
|
||||
return resp, err
|
||||
}
|
||||
resp.List = list
|
||||
resp.Total = total
|
||||
resp.HasNext = next
|
||||
var (
|
||||
bStatus bool
|
||||
advanceAmount, balanceAmount int64
|
||||
status int
|
||||
)
|
||||
products, err := productmod.FindByProductType(commod.AdvanceCard)
|
||||
if err != nil {
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
var pId primitive.ObjectID
|
||||
if products != nil && len(products) > 0 {
|
||||
for _, p := range products {
|
||||
pId = p.ID
|
||||
resp.ActivityDetail.ActivityTime = p.ActivityTime
|
||||
resp.ActivityDetail.StartTime = p.StartTime
|
||||
resp.ActivityDetail.EndTime = p.EndTime
|
||||
advanceAmount = p.AdvanceAmount / 10
|
||||
balanceAmount = p.BalanceAmount / 10
|
||||
}
|
||||
}
|
||||
if pId.IsZero() {
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
advanceOrder, err := advanceordermod.IsExist(bson.M{"uid": uid, "productID": pId})
|
||||
if err != nil {
|
||||
return resp, err
|
||||
}
|
||||
|
||||
if advanceOrder != nil && !advanceOrder.ID.IsZero() {
|
||||
if advanceOrder.Status == advanceordermod.AdvanceSUCCESS || advanceOrder.Status == advanceordermod.BalanceProcessing {
|
||||
bStatus = true
|
||||
}
|
||||
status = advanceOrder.Status
|
||||
}
|
||||
resp.ActivityDetail.BalancePayment = bStatus
|
||||
resp.ActivityDetail.AdvanceAmount = advanceAmount
|
||||
resp.ActivityDetail.BalanceAmount = balanceAmount
|
||||
resp.ActivityDetail.Status = status
|
||||
resp.ActivityDetail.TotalCount = 1000
|
||||
return resp, nil
|
||||
}
|
||||
Reference in New Issue
Block a user