newUserAward.go 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package activity
  2. import (
  3. "app.yhyue.com/moapp/jybase/go-logger/logger"
  4. "github.com/gogf/gf/v2/os/gtime"
  5. "log"
  6. "strconv"
  7. "time"
  8. "app.yhyue.com/moapp/MessageCenter/rpc/type/message"
  9. . "app.yhyue.com/moapp/message/config"
  10. "app.yhyue.com/moapp/message/handler/award"
  11. "app.yhyue.com/moapp/message/model"
  12. "app.yhyue.com/moapp/message/rpc"
  13. . "bp.jydev.jianyu360.cn/BaseService/pushpkg/p"
  14. "github.com/gogf/gf/v2/os/gcfg"
  15. "github.com/gogf/gf/v2/os/gctx"
  16. )
  17. /*
  18. 新用户注册奖励
  19. 活动详情
  20. 非邀请注册新用户可获得500剑鱼币奖励
  21. */
  22. const (
  23. NewUserAwardActivityName = "newUserAward"
  24. )
  25. func NewUserActivity(msg *model.Message) {
  26. log.Println(gcfg.Instance().MustGet(gctx.New(), "newRegister.message.title").String())
  27. log.Println(gcfg.Instance().MustGet(gctx.New(), "newRegister.message.content").String())
  28. log.Println(gcfg.Instance().MustGet(gctx.New(), "newRegister.message.msgType").String())
  29. go func() {
  30. wxUrl := "/front/sess/" + Se.EncodeString(msg.E_userId+",_id,identityKeep,") + "__" + Se.EncodeString(PushConfig.Messages.NewUser.MobileUrl)
  31. appUrl := "/jyapp/free/sess/" + Se.EncodeString(msg.E_userId+",_id,"+strconv.Itoa(int(time.Now().Unix()))+",") + "__" + Se.EncodeString(PushConfig.Messages.NewUser.MobileUrl)
  32. err := rpc.SendMsg("新用户注册", &message.MultipleSaveMsgReq{
  33. UserIds: msg.E_userId,
  34. Title: PushConfig.Messages.NewUser.Title,
  35. Content: PushConfig.Messages.NewUser.Content,
  36. MsgType: PushConfig.Messages.NewUser.MsgType,
  37. Link: PushConfig.Messages.NewUser.PcUrl + "," + PushConfig.Messages.NewUser.MobileUrl + "," + PushConfig.Messages.NewUser.MobileUrl + "," + PushConfig.Messages.NewUser.MobileUrl,
  38. Appid: PushConfig.Messages.NewUser.Appid,
  39. AppPushUrl: appUrl,
  40. WxPushUrl: PushConfig.Webdomain + wxUrl,
  41. IosPushUrl: appUrl,
  42. })
  43. if err != nil {
  44. logger.Info("SendMsg Fail ", err)
  45. }
  46. mtype := gcfg.Instance().MustGet(gctx.New(), "newRegister.message.msgType").Int64()
  47. if mtype == 0 {
  48. logger.Info("SendMsg Fail 获取配置文件失败")
  49. } else {
  50. err = rpc.SendMsg("新用户注册", &message.MultipleSaveMsgReq{
  51. UserIds: msg.E_userId,
  52. Title: gcfg.Instance().MustGet(gctx.New(), "newRegister.message.title", "").String(),
  53. Content: gcfg.Instance().MustGet(gctx.New(), "newRegister.message.content", "").String(),
  54. MsgType: mtype,
  55. Appid: gcfg.Instance().MustGet(gctx.New(), "newRegister.message.appid", "").String(),
  56. Link: gcfg.Instance().MustGet(gctx.New(), "newRegister.message.pcUrl", "").String() + "," +
  57. gcfg.Instance().MustGet(gctx.New(), "newRegister.message.mobileUrl", "").String() + "," +
  58. gcfg.Instance().MustGet(gctx.New(), "newRegister.message.mobileUrl", "").String() + "," +
  59. gcfg.Instance().MustGet(gctx.New(), "newRegister.message.mobileUrl", "").String(),
  60. AppPushUrl: gcfg.Instance().MustGet(gctx.New(), "newRegister.message.mobileUrl", "").String(),
  61. WxPushUrl: gcfg.Instance().MustGet(gctx.New(), "newRegister.message.wxUrl", "").String(),
  62. IosPushUrl: gcfg.Instance().MustGet(gctx.New(), "newRegister.message.mobileUrl", "").String(),
  63. })
  64. }
  65. if err != nil {
  66. logger.Info("SendMsg Fail ", err)
  67. }
  68. }()
  69. _ = award.GivenPoints(msg.E_userId, award.Points{
  70. Num: gcfg.Instance().MustGet(gctx.New(), "newUserAward.points", nil).Int64(),
  71. Type: 1002,
  72. ActivityCode: NewUserAwardActivityName,
  73. Date: msg.E_time,
  74. Desc: "新用户注册奖励",
  75. })
  76. // 新注册用户赠送超级订阅
  77. startTime := gtime.NewFromStrLayout(gcfg.Instance().MustGet(gctx.New(), "newRegister.startTime").String(), "2006-01-02T15:04:05Z").Time
  78. entTime := gtime.NewFromStrLayout(gcfg.Instance().MustGet(gctx.New(), "newRegister.entTime").String(), "2006-01-02T15:04:05Z").Time
  79. now := time.Now()
  80. if now.After(startTime) && now.Before(entTime) {
  81. _ = award.GivenSubVip(msg.E_userId, award.SubVip{
  82. Num: gcfg.Instance().MustGet(gctx.New(), "newRegister.supVip", nil).Int64(),
  83. ActivityCode: "newRegister",
  84. Date: msg.E_time,
  85. Desc: "2024年新用户注册赠送7天超级订阅",
  86. })
  87. }
  88. }