This commit is contained in:
苏尹岚
2020-12-16 11:08:56 +08:00
parent 5927b8b05d
commit bccb99e580
5 changed files with 34 additions and 975 deletions

View File

@@ -6,6 +6,8 @@ import (
"sync"
"time"
"git.rosy.net.cn/jx-callback/business/jxutils/smsmsg"
"git.rosy.net.cn/jx-callback/business/jxstore/event"
"git.rosy.net.cn/jx-callback/business/jxstore/financial"
@@ -676,6 +678,28 @@ func UpdateUser(ctx *jxcontext.Context, payload map[string]interface{}) (err err
// }
user2, err2 := dao.GetUserByID(db, "user_id", payload["popUser"].(string))
err = err2
do := func(user *model.User, flag bool) (err error) {
if user.PopCount%4 == 0 && user.PopFlag == model.NO {
if _, err = InvestMember(ctx, 1, user.UserID, true); err == nil {
//发短信,公众号消息通知
smsmsg.SendSMSMsg([]string{*user.Mobile}, globals.SMSSignName, globals.SMSPopSuccessTemplate, nil)
// weixinmsg.SendMsgToUser(userID, templateID, data)
}
user.PopFlag = model.YES
dao.UpdateEntity(db, user, "PopFlag")
if flag {
if users, _, err := dao.GetUsers(db, 0, "", user.UserID, nil, nil, nil, 0, 999); err == nil {
for _, v := range users {
v.PopedFlag = model.YES
dao.UpdateEntity(db, v, "PopedFlag")
}
}
_, err = event.CreateMessageGroup(ctx, user.UserID, "", "", 5, 100)
}
}
return err
}
if user2 != nil {
user2.PopCount++
messageGroupsResult, err3 := dao.GetMessageGroups(db, user2.UserID, 0, model.GroupTypeMulit, false, "")
@@ -685,26 +709,10 @@ func UpdateUser(ctx *jxcontext.Context, payload map[string]interface{}) (err err
if len(messageGroupsResult) > 0 {
err = event.AddMessageGroup(ctx, messageGroupsResult[0].GroupID, user.UserID)
//邀请过4人直接开通一个月会员
if user2.PopCount%4 == 0 && user2.PopFlag == model.NO {
_, err = InvestMember(ctx, 1, user2.UserID, true)
user2.PopFlag = model.YES
dao.UpdateEntity(db, user2, "PopFlag")
}
do(user2, false)
} else {
//邀请过4人直接开通一个月会员并创建群组
if user2.PopCount%4 == 0 && user2.PopFlag == model.NO {
_, err = InvestMember(ctx, 1, user2.UserID, true)
user2.PopFlag = model.YES
dao.UpdateEntity(db, user2, "PopFlag")
if users, _, err := dao.GetUsers(db, 0, "", user2.UserID, nil, nil, nil, 0, 999); err == nil {
for _, v := range users {
v.PopedFlag = model.YES
dao.UpdateEntity(db, v, "PopedFlag")
}
}
_, err = event.CreateMessageGroup(ctx, user2.UserID, "", "", 5, 100)
}
do(user2, true)
}
dao.UpdateEntity(db, user2, "PopCount")
}