|
|
|
@ -12,6 +12,7 @@ import ( |
|
|
|
"server/pb" |
|
|
|
"server/pb" |
|
|
|
"server/util" |
|
|
|
"server/util" |
|
|
|
"sort" |
|
|
|
"sort" |
|
|
|
|
|
|
|
"strings" |
|
|
|
"time" |
|
|
|
"time" |
|
|
|
|
|
|
|
|
|
|
|
"github.com/gin-gonic/gin" |
|
|
|
"github.com/gin-gonic/gin" |
|
|
|
@ -574,42 +575,6 @@ func ActivityFreeSpinDraw(c *gin.Context) { |
|
|
|
resp := &values.ActivityFreeSpinDrawResp{} |
|
|
|
resp := &values.ActivityFreeSpinDrawResp{} |
|
|
|
a.Data = resp |
|
|
|
a.Data = resp |
|
|
|
|
|
|
|
|
|
|
|
// 首次旋转,给予固定奖励
|
|
|
|
|
|
|
|
// if freeSpin.LastSpin == 0 {
|
|
|
|
|
|
|
|
// items := call.GetConfigActivityFreeSpinByType(common.ActivityFreeSpinItemRandomCash)
|
|
|
|
|
|
|
|
// if len(items) == 0 {
|
|
|
|
|
|
|
|
// a.Code = values.CodeRetry
|
|
|
|
|
|
|
|
// return
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// err := db.Mysql().Create(&common.ActivityFreeSpinData{UID: a.UID, LastSpin: time.Now().Unix()})
|
|
|
|
|
|
|
|
// if err != nil {
|
|
|
|
|
|
|
|
// a.Code = values.CodeRetry
|
|
|
|
|
|
|
|
// return
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// resp.Reward = config.GetConfig().Web.FreeSpinFirst
|
|
|
|
|
|
|
|
// if resp.Reward == 0 {
|
|
|
|
|
|
|
|
// resp.Reward = 5 * common.DecimalDigits
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// _, err = call.UpdateCurrencyPro(&common.UpdateCurrency{
|
|
|
|
|
|
|
|
// CurrencyBalance: &common.CurrencyBalance{
|
|
|
|
|
|
|
|
// Type: common.CurrencyINR,
|
|
|
|
|
|
|
|
// UID: a.UID,
|
|
|
|
|
|
|
|
// Event: common.CurrencyEventActivityFreeSpin,
|
|
|
|
|
|
|
|
// Value: resp.Reward,
|
|
|
|
|
|
|
|
// ChannelID: a.Channel,
|
|
|
|
|
|
|
|
// NeedBet: call.GetConfigCurrencyResourceNeedBet(common.CurrencyResourceBonus, resp.Reward),
|
|
|
|
|
|
|
|
// },
|
|
|
|
|
|
|
|
// })
|
|
|
|
|
|
|
|
// if err != nil {
|
|
|
|
|
|
|
|
// a.Code = values.CodeRetry
|
|
|
|
|
|
|
|
// return
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// ran := rand.Intn(len(items))
|
|
|
|
|
|
|
|
// resp.ID = items[ran].ID
|
|
|
|
|
|
|
|
// call.UploadActivityData(a.UID, common.ActivityIDFreeSpin, common.ActivityDataJoin, resp.Reward)
|
|
|
|
|
|
|
|
// return
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
con := call.GetConfigActivityFreeSpin() |
|
|
|
con := call.GetConfigActivityFreeSpin() |
|
|
|
if con == nil { |
|
|
|
if con == nil { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
@ -671,7 +636,7 @@ func ActivityFirstRechargeBackInfo(c *gin.Context) { |
|
|
|
conf := call.GetConfigActivityFirstRechargeBack() |
|
|
|
conf := call.GetConfigActivityFirstRechargeBack() |
|
|
|
a.Data = resp |
|
|
|
a.Data = resp |
|
|
|
data := call.GetUserFirstRechargeBackData(a.UID) |
|
|
|
data := call.GetUserFirstRechargeBackData(a.UID) |
|
|
|
log.Debug("ActivityFirstRechargeBackInfo:%+v", data) |
|
|
|
resp.NeedRechargeAmount = conf.MinRecharge |
|
|
|
resp.ProductList = call.GetConfigPayProductByActivityID(common.ActivityIDFirstRechargeBack) |
|
|
|
resp.ProductList = call.GetConfigPayProductByActivityID(common.ActivityIDFirstRechargeBack) |
|
|
|
resp.Recharge = data.Amount |
|
|
|
resp.Recharge = data.Amount |
|
|
|
resp.BackPer = conf.MaxBack |
|
|
|
resp.BackPer = conf.MaxBack |
|
|
|
@ -688,9 +653,15 @@ func ActivityFirstRechargeBackInfo(c *gin.Context) { |
|
|
|
val = 0 |
|
|
|
val = 0 |
|
|
|
} |
|
|
|
} |
|
|
|
val = val * conf.MaxBack / 100 |
|
|
|
val = val * conf.MaxBack / 100 |
|
|
|
|
|
|
|
now := time.Now().Unix() |
|
|
|
|
|
|
|
p, _ := call.GetUserXInfo(a.UID, "birth") |
|
|
|
|
|
|
|
if p.Birth+conf.CD >= now { |
|
|
|
|
|
|
|
db.Mysql().Update(&common.ActivityFirstRechargeBackData{UID: a.UID}, map[string]interface{}{ |
|
|
|
|
|
|
|
"reward": val, |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
resp.Back = val |
|
|
|
resp.Back = val |
|
|
|
resp.PayAmount = rand.Int63n(1000000) + 10000 |
|
|
|
resp.DrawTime = p.Birth + conf.CD |
|
|
|
resp.DrawTime = data.RechargeTime + common.ActivityFirstRechargeBackTime |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func ActivityFirstRechargeBackDraw(c *gin.Context) { |
|
|
|
func ActivityFirstRechargeBackDraw(c *gin.Context) { |
|
|
|
@ -703,21 +674,17 @@ func ActivityFirstRechargeBackDraw(c *gin.Context) { |
|
|
|
} |
|
|
|
} |
|
|
|
conf := call.GetConfigActivityFirstRechargeBack() |
|
|
|
conf := call.GetConfigActivityFirstRechargeBack() |
|
|
|
data := call.GetUserFirstRechargeBackData(a.UID) |
|
|
|
data := call.GetUserFirstRechargeBackData(a.UID) |
|
|
|
val := data.Amount - call.GetUserCurrencyTotal(a.UID, common.CurrencyINR) |
|
|
|
|
|
|
|
if val <= 0 { |
|
|
|
|
|
|
|
return |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if time.Now().Unix()-data.RechargeTime < common.ActivityFirstRechargeBackTime { |
|
|
|
if time.Now().Unix()-data.RechargeTime < common.ActivityFirstRechargeBackTime { |
|
|
|
log.Error("not ActivityFirstRechargeBackDraw time:%+v", data) |
|
|
|
log.Error("not ActivityFirstRechargeBackDraw time:%+v", data) |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
rows, err := db.Mysql().UpdateRes(&common.ActivityFirstRechargeBackData{UID: a.UID}, map[string]interface{}{"lost": 0, "reward_time": time.Now().Unix()}) |
|
|
|
rows, err := db.Mysql().UpdateRes(&common.ActivityFirstRechargeBackData{UID: a.UID}, map[string]interface{}{"reward_time": time.Now().Unix()}) |
|
|
|
if err != nil || rows == 0 { |
|
|
|
if err != nil || rows == 0 { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
val = val * conf.MaxBack / 100 |
|
|
|
val := data.Reward * conf.MaxBack / 100 |
|
|
|
_, err = call.UpdateCurrencyPro(&common.UpdateCurrency{ |
|
|
|
_, err = call.UpdateCurrencyPro(&common.UpdateCurrency{ |
|
|
|
CurrencyBalance: &common.CurrencyBalance{ |
|
|
|
CurrencyBalance: &common.CurrencyBalance{ |
|
|
|
UID: a.UID, |
|
|
|
UID: a.UID, |
|
|
|
@ -1299,42 +1266,31 @@ func ActivityWeekCardInfo(c *gin.Context) { |
|
|
|
if !a.CheckActivityExpire(common.ActivityIDWeekCard) { |
|
|
|
if !a.CheckActivityExpire(common.ActivityIDWeekCard) { |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
cons := call.GetConfigActivityWeekCard() |
|
|
|
|
|
|
|
list := call.GetUserWeekCards(a.UID) |
|
|
|
|
|
|
|
resp := &values.ActivityWeekCardInfoResp{} |
|
|
|
resp := &values.ActivityWeekCardInfoResp{} |
|
|
|
a.Data = resp |
|
|
|
a.Data = resp |
|
|
|
for _, v := range cons { |
|
|
|
cons := call.GetConfigActivityWeekCard() |
|
|
|
product := call.GetConfigPayProductByID(v.ProductID) |
|
|
|
cardInfo := call.GetUserWeekCard(a.UID) |
|
|
|
if product == nil { |
|
|
|
if cardInfo.ID <= 0 { |
|
|
|
continue |
|
|
|
rewardList, err := util.GenerateSequence(cons.RewardAmount, cons.MiniLimit) |
|
|
|
} |
|
|
|
if err != nil { |
|
|
|
one := values.OneWeekCard{ |
|
|
|
log.Error("err:%v", err) |
|
|
|
Level: v.Level, |
|
|
|
|
|
|
|
Rebate: fmt.Sprintf("%d", v.Rebate) + "%", |
|
|
|
|
|
|
|
OriginPrice: v.OriginPrice, |
|
|
|
|
|
|
|
Price: product.Amount, |
|
|
|
|
|
|
|
Reward: product.Value, |
|
|
|
|
|
|
|
DayReward: v.DayReward, |
|
|
|
|
|
|
|
DayCount: v.Day, |
|
|
|
|
|
|
|
Discount: fmt.Sprintf("%d", 100-v.Discount), |
|
|
|
|
|
|
|
Next: -1, |
|
|
|
|
|
|
|
ProductID: v.ProductID, |
|
|
|
|
|
|
|
TotalReward: v.DayReward*int64(v.Day) + product.Value, |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
for _, k := range list { |
|
|
|
if len(rewardList) == 6 { |
|
|
|
if k.Level == v.Level && k.Day > 0 { |
|
|
|
rewardList = append(rewardList, 0) |
|
|
|
one.DayReward = k.DayReward |
|
|
|
|
|
|
|
one.Day = k.Day |
|
|
|
|
|
|
|
if !util.IsSameDayTimeStamp(k.LastDraw, time.Now().Unix()) { |
|
|
|
|
|
|
|
one.Next = 0 |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
one.Next = util.GetZeroTime(time.Now().AddDate(0, 0, 1)).Unix() - k.LastDraw |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
break |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
resp.List = append(resp.List, one) |
|
|
|
resp.RewardList = rewardList |
|
|
|
|
|
|
|
cardInfo.Rewards = strings.Join(util.Int64SliceToStringSlice(rewardList), ",") |
|
|
|
|
|
|
|
db.Mysql().Create(cardInfo) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if resp.RewardList == nil { |
|
|
|
|
|
|
|
resp.RewardList, _ = util.StringToInt64Slice(cardInfo.Rewards, ",") |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if !util.IsSameDayTimeStamp(time.Now().Unix(), cardInfo.LastDraw) { |
|
|
|
|
|
|
|
resp.Status = true |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
resp.RewardDay = cardInfo.Day |
|
|
|
|
|
|
|
resp.ChannelList = call.GetConfigPayChannelsByID(common.CurrencyINR) |
|
|
|
|
|
|
|
resp.ProductList = call.GetConfigPayProductByActivityID(common.ActivityIDWeekCard) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func ActivityWeekCardDraw(c *gin.Context) { |
|
|
|
func ActivityWeekCardDraw(c *gin.Context) { |
|
|
|
@ -1349,56 +1305,47 @@ func ActivityWeekCardDraw(c *gin.Context) { |
|
|
|
if !a.S(req) { |
|
|
|
if !a.S(req) { |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
card := call.GetUserWeekCard(a.UID, req.Level) |
|
|
|
card := call.GetUserWeekCard(a.UID) |
|
|
|
if card.ID == 0 { |
|
|
|
if card.ID == 0 { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
if card.Day <= 0 { |
|
|
|
|
|
|
|
a.Code = values.CodeRetry |
|
|
|
|
|
|
|
return |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
now := time.Now().Unix() |
|
|
|
now := time.Now().Unix() |
|
|
|
if util.IsSameDayTimeStamp(now, card.LastDraw) { |
|
|
|
if util.IsSameDayTimeStamp(now, card.LastDraw) { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
|
|
|
|
a.Msg = "today has reward" |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
rows, err := db.Mysql().UpdateRes(&common.ActivityWeekCardData{UID: a.UID, Level: req.Level, Day: card.Day}, |
|
|
|
rewards, _ := util.StringToInt64Slice(card.Rewards, ",") |
|
|
|
map[string]interface{}{"day": gorm.Expr("day - 1"), "last_draw": now}) |
|
|
|
rows, err := db.Mysql().UpdateRes(&common.ActivityWeekCardData{UID: a.UID}, |
|
|
|
|
|
|
|
map[string]interface{}{"day": gorm.Expr("day + 1"), "last_draw": now}) |
|
|
|
if rows == 0 || err != nil { |
|
|
|
if rows == 0 || err != nil { |
|
|
|
log.Error("err:%v", err) |
|
|
|
log.Error("err:%v", err) |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
var reward int64 |
|
|
|
|
|
|
|
if card.Day < len(rewards) { |
|
|
|
|
|
|
|
reward = rewards[card.Day] * common.DecimalDigits |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
// 第几天折扣券
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
resp := &values.ActivityWeekCardDrawResp{ |
|
|
|
resp := &values.ActivityWeekCardDrawResp{ |
|
|
|
Reward: card.DayReward, |
|
|
|
Reward: reward, |
|
|
|
} |
|
|
|
} |
|
|
|
a.Data = resp |
|
|
|
a.Data = resp |
|
|
|
call.UpdateCurrencyPro(&common.UpdateCurrency{ |
|
|
|
call.UpdateCurrencyPro(&common.UpdateCurrency{ |
|
|
|
CurrencyBalance: &common.CurrencyBalance{ |
|
|
|
CurrencyBalance: &common.CurrencyBalance{ |
|
|
|
UID: a.UID, |
|
|
|
UID: a.UID, |
|
|
|
Type: common.CurrencyINR, |
|
|
|
Type: common.CurrencyINR, |
|
|
|
Value: card.DayReward, |
|
|
|
Value: reward, |
|
|
|
Event: common.CurrencyEventActivityWeekCard, |
|
|
|
Event: common.CurrencyEventActivityWeekCard, |
|
|
|
ChannelID: a.Channel, |
|
|
|
ChannelID: a.Channel, |
|
|
|
NeedBet: call.GetConfigCurrencyResourceNeedBet(common.CurrencyResourceBonus, card.DayReward), |
|
|
|
NeedBet: call.GetConfigCurrencyResourceNeedBet(common.CurrencyResourceBonus, reward), |
|
|
|
}, |
|
|
|
}, |
|
|
|
}) |
|
|
|
}) |
|
|
|
con := call.GetConfigActivityWeekCardByLevel(card.Level) |
|
|
|
|
|
|
|
if con != nil { |
|
|
|
|
|
|
|
// 最后一天必得一次
|
|
|
|
|
|
|
|
if card.Day == 1 { |
|
|
|
|
|
|
|
call.AddUserDiscountTicket(a.UID, con.Discount) |
|
|
|
|
|
|
|
resp.DiscountTicket = fmt.Sprintf("%d", 100-con.Discount) |
|
|
|
|
|
|
|
} else if card.GetDiscount == 0 { // 未领取过则随机一次
|
|
|
|
|
|
|
|
ran := rand.Intn(card.Day) |
|
|
|
|
|
|
|
if ran == 0 { |
|
|
|
|
|
|
|
db.Mysql().Update(&common.ActivityWeekCardData{UID: a.UID, Level: req.Level}, map[string]interface{}{"get_discount": 1}) |
|
|
|
|
|
|
|
call.AddUserDiscountTicket(a.UID, con.Discount) |
|
|
|
|
|
|
|
resp.DiscountTicket = fmt.Sprintf("%d", 100-con.Discount) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func ActivitySlotsInfo(c *gin.Context) { |
|
|
|
func ActivitySlotsInfo(c *gin.Context) { |
|
|
|
@ -1863,41 +1810,24 @@ func ActivityBetDrawInfo(c *gin.Context) { |
|
|
|
Lucky: drawInfo.Lucky, |
|
|
|
Lucky: drawInfo.Lucky, |
|
|
|
} |
|
|
|
} |
|
|
|
a.Data = resp |
|
|
|
a.Data = resp |
|
|
|
var types []int |
|
|
|
|
|
|
|
var confs []*common.ConfigActivityBetDraw |
|
|
|
|
|
|
|
for _, item := range resp.List { |
|
|
|
for _, item := range resp.List { |
|
|
|
if !util.SliceContain(types, item.Type) { |
|
|
|
|
|
|
|
types = append(types, item.Type) |
|
|
|
|
|
|
|
confs = append(confs, item) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if resp.Lucky >= item.Cost && vipInfo.Level >= item.VipUnlock { |
|
|
|
if resp.Lucky >= item.Cost && vipInfo.Level >= item.VipUnlock { |
|
|
|
call.PushRed(a.UID, pb.RedPointModule_RedPointFreeSpin, uint32(1)) |
|
|
|
call.PushRed(a.UID, pb.RedPointModule_RedPointFreeSpin, uint32(1)) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
now := time.Now() |
|
|
|
now := time.Now() |
|
|
|
update := false |
|
|
|
update := false |
|
|
|
for _, item := range confs { |
|
|
|
if !util.IsSameDayTimeStamp(drawInfo.SpinInfo.LastSpinTime, now.Unix()) { |
|
|
|
typ := item.Type |
|
|
|
drawInfo.SpinInfo.SpinNum = 0 |
|
|
|
spinInfo := drawInfo.SpinInfo[typ] |
|
|
|
update = true |
|
|
|
if spinInfo == nil { |
|
|
|
|
|
|
|
drawInfo.SpinInfo[typ] = &common.LuckyData{} |
|
|
|
|
|
|
|
spinInfo = drawInfo.SpinInfo[typ] |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if !util.IsSameDayTimeStamp(spinInfo.LastSpinTime, now.Unix()) { |
|
|
|
|
|
|
|
spinInfo.SpinNum = 0 |
|
|
|
|
|
|
|
update = true |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
resp.SpinInfo = append(resp.SpinInfo, &common.LuckyData{ |
|
|
|
|
|
|
|
SpinNum: spinInfo.SpinNum, |
|
|
|
|
|
|
|
NextSpinTIme: spinInfo.NextSpinTIme, |
|
|
|
|
|
|
|
Type: typ, |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
if update && a.UID > 0 { |
|
|
|
if update && a.UID > 0 { |
|
|
|
db.Mysql().Update(&common.ActivityBetDrawData{UID: a.UID}, map[string]interface{}{ |
|
|
|
db.Mysql().Update(&common.ActivityBetDrawData{UID: a.UID}, map[string]interface{}{ |
|
|
|
"spin_info": drawInfo.SpinInfo, |
|
|
|
"spin_info": drawInfo.SpinInfo, |
|
|
|
}) |
|
|
|
}) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
drawInfo.SpinInfo.SpinCount = confList[0].LimitNum |
|
|
|
|
|
|
|
resp.SpinInfo = append(resp.SpinInfo, drawInfo.SpinInfo) |
|
|
|
call.UploadActivityData(a.UID, common.ActivityIDBetDraw, common.ActivityDataClick, 0) |
|
|
|
call.UploadActivityData(a.UID, common.ActivityIDBetDraw, common.ActivityDataClick, 0) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -1923,11 +1853,7 @@ func ActivityBetDrawDraw(c *gin.Context) { |
|
|
|
drawInfo := common.ActivityBetDrawData{UID: a.UID} |
|
|
|
drawInfo := common.ActivityBetDrawData{UID: a.UID} |
|
|
|
db.Mysql().Get(&drawInfo) |
|
|
|
db.Mysql().Get(&drawInfo) |
|
|
|
now := time.Now() |
|
|
|
now := time.Now() |
|
|
|
spinInfo, ok := drawInfo.SpinInfo[req.WheelType] |
|
|
|
spinInfo := drawInfo.SpinInfo |
|
|
|
if !ok { |
|
|
|
|
|
|
|
drawInfo.SpinInfo[req.WheelType] = &common.LuckyData{} |
|
|
|
|
|
|
|
spinInfo = drawInfo.SpinInfo[req.WheelType] |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// step:判断cd
|
|
|
|
// step:判断cd
|
|
|
|
if spinInfo.LastSpinTime != 0 && now.Unix()-spinInfo.LastSpinTime < conf.Cd { |
|
|
|
if spinInfo.LastSpinTime != 0 && now.Unix()-spinInfo.LastSpinTime < conf.Cd { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
@ -1959,7 +1885,7 @@ func ActivityBetDrawDraw(c *gin.Context) { |
|
|
|
UID: a.UID, |
|
|
|
UID: a.UID, |
|
|
|
}, map[string]interface{}{ |
|
|
|
}, map[string]interface{}{ |
|
|
|
"lucky": gorm.Expr("lucky - ?", conf.Cost), |
|
|
|
"lucky": gorm.Expr("lucky - ?", conf.Cost), |
|
|
|
"spin_info": drawInfo.SpinInfo, |
|
|
|
"spin_info": spinInfo, |
|
|
|
}) |
|
|
|
}) |
|
|
|
if err != nil { |
|
|
|
if err != nil { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
|