|
|
|
@ -666,15 +666,26 @@ func ActivityLuckyCodeInfo(c *gin.Context) { |
|
|
|
defer func() { |
|
|
|
defer func() { |
|
|
|
a.Response() |
|
|
|
a.Response() |
|
|
|
}() |
|
|
|
}() |
|
|
|
|
|
|
|
req := new(values.ActivityLuckyCodeInfoReq) |
|
|
|
|
|
|
|
if !a.S(req) { |
|
|
|
|
|
|
|
return |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if !a.CheckActivityExpire(common.ActivityIDLuckyCode) { |
|
|
|
if !a.CheckActivityExpire(common.ActivityIDLuckyCode) { |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
t := req.Type |
|
|
|
|
|
|
|
if t == 0 { |
|
|
|
|
|
|
|
t = common.LuckyCodeTypeNormal |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
t = common.LuckyCodeTypeVip |
|
|
|
|
|
|
|
} |
|
|
|
resp := &values.ActivityLuckyCodeInfoResp{ |
|
|
|
resp := &values.ActivityLuckyCodeInfoResp{ |
|
|
|
TelegramChannel: config.GetBase().Server.TelegramChannel, |
|
|
|
TelegramChannel: config.GetBase().Server.TelegramChannel, |
|
|
|
} |
|
|
|
} |
|
|
|
a.Data = resp |
|
|
|
a.Data = resp |
|
|
|
con := call.GetConfigAcitivityLuckyCode() |
|
|
|
con := call.GetConfigAcitivityLuckyCode(t) |
|
|
|
total := call.GetConfigAcitivityLuckyCodeTotalWeight() |
|
|
|
total := call.GetConfigAcitivityLuckyCodeTotalWeight(t) |
|
|
|
for _, v := range con { |
|
|
|
for _, v := range con { |
|
|
|
resp.List = append(resp.List, values.OneActivityLuckyCodeConfig{ |
|
|
|
resp.List = append(resp.List, values.OneActivityLuckyCodeConfig{ |
|
|
|
ID: v.ID, |
|
|
|
ID: v.ID, |
|
|
|
@ -699,50 +710,52 @@ func ActivityLuckyCodeDraw(c *gin.Context) { |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
now := time.Now() |
|
|
|
now := time.Now() |
|
|
|
luckyCode := &common.ActivityLuckyCode{Date: now.Format("20060102")} |
|
|
|
luckyCode := &common.ActivityLuckyCode{Code: req.LuckyCode, Date: now.Format("20060102")} |
|
|
|
if !a.MGet(luckyCode) { |
|
|
|
if !a.MGet(luckyCode) { |
|
|
|
return |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if req.LuckyCode != luckyCode.Code { |
|
|
|
|
|
|
|
a.Code = values.CodeParam |
|
|
|
a.Code = values.CodeParam |
|
|
|
a.Msg = "O código que você digitou está incorreto" |
|
|
|
a.Msg = "आपके द्वारा दर्ज किया गया कोड ग़लत है" |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
t := req.Type |
|
|
|
|
|
|
|
if t == 0 { |
|
|
|
|
|
|
|
t = common.LuckyCodeTypeNormal |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
resp := &values.ActivityLuckyCodeDrawResp{} |
|
|
|
resp := &values.ActivityLuckyCodeDrawResp{} |
|
|
|
a.Data = resp |
|
|
|
a.Data = resp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
codeType := luckyCode.Type |
|
|
|
data := &common.ActivityLuckyCodeData{UID: a.UID} |
|
|
|
data := &common.ActivityLuckyCodeData{UID: a.UID} |
|
|
|
db.Mysql().Get(data) |
|
|
|
db.Mysql().Get(data) |
|
|
|
|
|
|
|
if (codeType == common.LuckyCodeTypeNormal && util.IsSameDayTimeStamp(now.Unix(), data.LastDraw)) || |
|
|
|
if util.IsSameDayTimeStamp(now.Unix(), data.LastDraw) { |
|
|
|
(codeType == common.LuckyCodeTypeVip && util.IsSameDayTimeStamp(now.Unix(), data.LastVipDraw)) { |
|
|
|
a.Code = values.CodeParam |
|
|
|
a.Code = values.CodeParam |
|
|
|
a.Msg = "Esse código já foi usado" |
|
|
|
a.Msg = "इस कोड का पहले ही उपयोग किया जा चुका है" |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 开始发奖
|
|
|
|
// 开始发奖
|
|
|
|
con := call.GetConfigAcitivityLuckyCode() |
|
|
|
con := call.GetConfigAcitivityLuckyCode(codeType) |
|
|
|
total := call.GetConfigAcitivityLuckyCodeTotalWeight() |
|
|
|
total := call.GetConfigAcitivityLuckyCodeTotalWeight(codeType) |
|
|
|
if total == 0 { |
|
|
|
if total == 0 { |
|
|
|
log.Error("con:%+v invalid,uid:%d", con, a.UID) |
|
|
|
log.Error("con:%+v invalid,uid:%d", con, a.UID) |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if data.ID == 0 { |
|
|
|
if data.ID == 0 { |
|
|
|
err := db.Mysql().Create(&common.ActivityLuckyCodeData{UID: a.UID, LastDraw: now.Unix()}) |
|
|
|
codeData := &common.ActivityLuckyCodeData{UID: a.UID, Type: codeType} |
|
|
|
|
|
|
|
if codeType == common.LuckyCodeTypeNormal { |
|
|
|
|
|
|
|
codeData.LastDraw = now.Unix() |
|
|
|
|
|
|
|
} else if codeType == common.LuckyCodeTypeVip { |
|
|
|
|
|
|
|
codeData.LastVipDraw = now.Unix() |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
err := db.Mysql().Create(codeData) |
|
|
|
if err != nil { |
|
|
|
if err != nil { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
return |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
rows, err := db.Mysql().UpdateRes(&common.ActivityLuckyCodeData{UID: a.UID, LastDraw: data.LastDraw}, |
|
|
|
updates := map[string]interface{}{} |
|
|
|
map[string]interface{}{"last_draw": now.Unix()}) |
|
|
|
if codeType == common.LuckyCodeTypeNormal { |
|
|
|
|
|
|
|
updates["last_draw"] = now.Unix() |
|
|
|
|
|
|
|
} else if codeType == common.LuckyCodeTypeVip { |
|
|
|
|
|
|
|
updates["last_vip_draw"] = now.Unix() |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
rows, err := db.Mysql().UpdateRes(&common.ActivityLuckyCodeData{UID: a.UID, LastDraw: data.LastDraw}, updates) |
|
|
|
if rows == 0 || err != nil { |
|
|
|
if rows == 0 || err != nil { |
|
|
|
a.Code = values.CodeRetry |
|
|
|
a.Code = values.CodeRetry |
|
|
|
return |
|
|
|
return |
|
|
|
@ -767,7 +780,7 @@ func ActivityLuckyCodeDraw(c *gin.Context) { |
|
|
|
Type: common.CurrencyINR, |
|
|
|
Type: common.CurrencyINR, |
|
|
|
Value: reward, |
|
|
|
Value: reward, |
|
|
|
Event: common.CurrencyEventTask, |
|
|
|
Event: common.CurrencyEventTask, |
|
|
|
Exs1: fmt.Sprintf("%d", t), |
|
|
|
Exs1: fmt.Sprintf("%d", codeType), |
|
|
|
Exi1: req.LuckyCode, |
|
|
|
Exi1: req.LuckyCode, |
|
|
|
NeedBet: call.GetConfigCurrencyResourceNeedBet(common.CurrencyResourceBonus, reward), |
|
|
|
NeedBet: call.GetConfigCurrencyResourceNeedBet(common.CurrencyResourceBonus, reward), |
|
|
|
}, |
|
|
|
}, |
|
|
|
|