1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package activity
- import (
- "app.yhyue.com/moapp/jybase/go-logger/logger"
- "app.yhyue.com/moapp/jybase/redis"
- "app.yhyue.com/moapp/message/handler/award"
- "app.yhyue.com/moapp/message/model"
- "fmt"
- "github.com/gogf/gf/v2/os/gcfg"
- "github.com/gogf/gf/v2/os/gctx"
- "time"
- )
- const (
- RedisMain = "main"
- ShareOpenDetailActivityName = "ShareOpenDetail"
- )
- /*
- 活动详情
- 用户分享标讯详情或文库详情,
- 可获得5剑鱼币,每天上限25个
- */
- // ShareOpenDetail 分享打开三级页
- func ShareOpenDetail(msg *model.Message) {
- if len(msg.E_body) == 0 {
- return
- }
- openMax := gcfg.Instance().MustGet(gctx.New(), "shareOpenDetail.rewardTimesMax.points", nil).Int64()
- pointsNum := gcfg.Instance().MustGet(gctx.New(), "shareOpenDetail.openDetail.points", nil).Int64()
- key := fmt.Sprintf("jypoints_share_article_open_%s", msg.E_userId)
- if redis.Incr(RedisMain, key) <= openMax {
- now := time.Now()
- _ = redis.SetExpire(RedisMain, key, int(time.Date(now.Year(), now.Month(), now.Day()+1, 0, 0, 0, 0, time.Local).Unix()-now.Unix()))
- //积分奖励
- _ = award.GivenPoints(msg.E_userId, award.Points{
- Num: pointsNum,
- Type: 1005,
- ActivityCode: ShareOpenDetailActivityName,
- Date: msg.E_time,
- Desc: "用户分享信息",
- })
- } else {
- logger.Info(fmt.Sprintf("%+v", msg), "超过一天最大次数", openMax, "限制,不再增加积分")
- }
- }
|