|
@@ -17,15 +17,18 @@ func (BP *JyActivity) WinnerInfo() map[string]interface{} {
|
|
|
|
|
|
// 问卷提交
|
|
|
func (BP *JyActivity) Questionnaire(userId, phone, answers string) error {
|
|
|
- if _, inActivity, _ := BP.InActivity(); !inActivity {
|
|
|
+ if inActivity, _, _ := BP.InActivity(); !inActivity {
|
|
|
return fmt.Errorf("不在活动时间内")
|
|
|
}
|
|
|
//保存问卷
|
|
|
- if award.SaveQuestionnaire(userId, phone, answers) {
|
|
|
+ if ok := award.SaveQuestionnaire(userId, phone, answers); ok {
|
|
|
+ //问卷保存后--赠送7天超级订阅
|
|
|
+ if err := BP.GetDailyBoonSVip(userId); err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
if redis.Put(BidderPlanRedis, fmt.Sprintf(QuestionnaireSubmit, userId), 1, BP.cacheLong()) != true {
|
|
|
return fmt.Errorf("redis de22q 存储异常")
|
|
|
}
|
|
|
- //问卷保存后--赠送7天超级订阅
|
|
|
} else {
|
|
|
return fmt.Errorf("mongodb de22q 存储异常")
|
|
|
}
|
|
@@ -48,7 +51,7 @@ func (BP *JyActivity) ShareFinish(userId string) error {
|
|
|
// todayBalance 今日余额
|
|
|
// 允许参加预热活动 用户注册时间限制
|
|
|
// err 异常
|
|
|
-func (BP *JyActivity) GetDailyBoonDetail(userId string) (has bool, todayBalance int, registerBool, questionsBool bool, err error) {
|
|
|
+func (BP *JyActivity) GetDailyBoonDetail(userId string) (has bool, todayBalance int, registerBool bool, err error) {
|
|
|
if preHeatTime, _, _ := BP.InActivity(); !preHeatTime {
|
|
|
err = fmt.Errorf("不在预热活动时间内")
|
|
|
return
|
|
@@ -62,8 +65,8 @@ func (BP *JyActivity) GetDailyBoonDetail(userId string) (has bool, todayBalance
|
|
|
if todayBalance < 0 {
|
|
|
todayBalance = 0
|
|
|
}
|
|
|
- //默认问卷已提交 注册时间也在活动允许范围内
|
|
|
- questionsBool, registerBool = true, true
|
|
|
+ // 注册时间也在活动允许范围内
|
|
|
+ registerBool = true
|
|
|
//是否有权限领取
|
|
|
powerSwitch := gcfg.Instance().MustGet(gctx.New(), "jyactivity.power.switch", false).Bool()
|
|
|
//权限判断及问卷调查开关
|
|
@@ -71,16 +74,13 @@ func (BP *JyActivity) GetDailyBoonDetail(userId string) (has bool, todayBalance
|
|
|
registerTime := gcfg.Instance().MustGet(gctx.New(), "jyactivity.power.time", 1609430400).Int64()
|
|
|
//注册时间是否在允许范围内
|
|
|
registerBool = registerTime < award.GetUserRegisterTime(userId)
|
|
|
- //问卷是否提交
|
|
|
- rsKey := fmt.Sprintf(QuestionnaireSubmit, userId)
|
|
|
- questionsBool = redis.GetInt(BidderPlanRedis, rsKey) > 0
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// GetDailyBoonSVip 每日限量超级订阅领取
|
|
|
func (BP *JyActivity) GetDailyBoonSVip(userId string) (err error) {
|
|
|
- var has, questionsBool bool = false, false
|
|
|
+ var has bool = false
|
|
|
var todayBalance int = -1
|
|
|
|
|
|
var startTime time.Time
|
|
@@ -95,15 +95,10 @@ func (BP *JyActivity) GetDailyBoonSVip(userId string) (err error) {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- has, todayBalance, _, questionsBool, err = BP.GetDailyBoonDetail(userId)
|
|
|
+ has, todayBalance, _, err = BP.GetDailyBoonDetail(userId)
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
|
- //问卷是否提交
|
|
|
- if !questionsBool {
|
|
|
- err = fmt.Errorf("问卷未提交")
|
|
|
- return
|
|
|
- }
|
|
|
if has {
|
|
|
err = fmt.Errorf("已领取")
|
|
|
return
|
|
@@ -124,7 +119,7 @@ func (BP *JyActivity) GetDailyBoonSVip(userId string) (err error) {
|
|
|
Num: gcfg.Instance().MustGet(gctx.New(), "jyactivity.dailyBoon.reward.svip", nil).Int64(),
|
|
|
ActivityCode: BP.ActivityCode,
|
|
|
Date: time.Now().Unix(),
|
|
|
- Desc: "预热福利",
|
|
|
+ Desc: "22年双十一预热福利",
|
|
|
}); err != nil {
|
|
|
redis.Del(BidderPlanRedis, hasKey)
|
|
|
return fmt.Errorf("稍后重试")
|