Commit 46d29706 authored by hujiebin's avatar hujiebin

发一个事件

parent 5feda91b
...@@ -114,25 +114,25 @@ const ( ...@@ -114,25 +114,25 @@ const (
//也门活动通知 //也门活动通知
ActivityTriggerYemen = 27 ActivityTriggerYemen = 27
//月充值活动通知 //月充值活动通知
ActivityTriggerMonthPay = 28 ActivityTriggerMonthPay = 28
FruitTycoonAward = 29 // 水果大亨获奖 FruitTycoonAward = 29 // 水果大亨获奖
LuckyboxRecycle = 30 //幸运盒子回收 LuckyboxRecycle = 30 //幸运盒子回收
HlTemp1 = 31 //产品黄蕾,2022/06/29 临时要求发给某人的小助手消息 HlTemp1 = 31 //产品黄蕾,2022/06/29 临时要求发给某人的小助手消息
HLTemp2 = 32 //问卷调查 HLTemp2 = 32 //问卷调查
NewUserInviteAuditPassed = 33 // 新用户奖励活动审核通过 NewUserInviteAuditPassed = 33 // 新用户奖励活动审核通过
NewUserInviteAuditFailed = 34 // 新用户奖励活动审核不通过 NewUserInviteAuditFailed = 34 // 新用户奖励活动审核不通过
NewUserInviterAward = 35 // 新用户奖励活动邀请成功数达标 NewUserInviterAward = 35 // 新用户奖励活动邀请成功数达标
PowerSupportSalary = 36 // 势力扶持工资领取 提醒 PowerSupportSalary = 36 // 势力扶持工资领取 提醒
CountryStarOrdinaryAward = 37 // 国家之星瓜分奖提醒 CountryStarOrdinaryAward = 37 // 国家之星瓜分奖提醒
GroupActivityRewardMsg = 38 // 群组活动钻石奖励提醒 GroupActivityRewardMsg = 38 // 群组活动钻石奖励提醒
TemplateActAwardMsg = 39 // 通用模板活动奖励提醒 TemplateActAwardMsg = 39 // 通用模板活动奖励提醒
TemplateSmsCode = 40 // 通用模板活动奖励提醒 TemplateSmsCode = 40 // 通用模板活动奖励提醒
NewUserRegisterPush1 = 44 // 首次充值免费获得永久充值勋章!累积充值$50可申请特殊ID:ABBABB! NewUserRegisterPush1 = 44 // 首次充值免费获得永久充值勋章!累积充值$50可申请特殊ID:ABBABB!
NewUserRegisterPush2 = 45 // 邀请朋友来Hilo,最高获得100,000钻石奖励! NewUserRegisterPush2 = 45 // 邀请朋友来Hilo,最高获得100,000钻石奖励!
NewUserRegisterPush3 = 46 // 举办首个活动,领取10,000钻石和35%奖杯奖励! NewUserRegisterPush3 = 46 // 举办首个活动,领取10,000钻石和35%奖杯奖励!
ActFruitPutRankAward = 47 // 水果机投入排行榜提醒领奖 ActFruitPutRankAward = 47 // 水果机投入排行榜提醒领奖
ActGroupPowerUpgrade = 48 // 家族升级 GroupPowerUpgrade = 48 // 家族升级
ActGroupPowerExpireNotice = 49 // 家族等级即将过期(每月20日) GroupPowerExpireNotice = 49 // 家族等级即将过期(每月20日)
) )
type MsgSysUserType = mysql.Type type MsgSysUserType = mysql.Type
......
package group_power_ev
import (
"git.hilo.cn/hilo-common/domain"
"git.hilo.cn/hilo-common/resource/mysql"
)
//注册监听
var groupPowerUpgradeListen = new(domain.EventBase)
type GroupPowerUpgradeEvent struct {
GroupPowerId mysql.ID
}
//添加领域事件,在每个领域模型中init中添加,因为这是静态业务,非动态的。
func AddGroupPowerUpgradeSync(callback func(model *domain.Model, event interface{}) error) {
domain.AddEventSync(groupPowerUpgradeListen, callback)
}
//加入到异步操作中
func AddGroupPowerUpgradeAsync(callback func(model *domain.Model, event interface{}) error) {
domain.AddEventAsync(groupPowerUpgradeListen, callback)
}
//领域事件发布
func PublishGroupPowerUpgrade(model *domain.Model, event interface{}) error {
return domain.PublishEvent(groupPowerUpgradeListen, model, event)
}
...@@ -8,8 +8,7 @@ import ( ...@@ -8,8 +8,7 @@ import (
"gorm.io/gorm" "gorm.io/gorm"
"gorm.io/gorm/clause" "gorm.io/gorm/clause"
"hilo-group/_const/enum/groupPower_e" "hilo-group/_const/enum/groupPower_e"
"hilo-group/_const/enum/msg_e" "hilo-group/domain/event/group_power_ev"
"hilo-group/domain/model/msg_m"
"time" "time"
) )
...@@ -125,16 +124,10 @@ func IncrGroupPowerExp(txModel *domain.Model, groupPowerId mysql.ID, exp mysql.N ...@@ -125,16 +124,10 @@ func IncrGroupPowerExp(txModel *domain.Model, groupPowerId mysql.ID, exp mysql.N
if err = txModel.DB().Model(GroupPowerGrade{}).Where("group_power_id = ?", latestGrade.GroupPowerId).UpdateColumns(updateAttrs).Error; err != nil { if err = txModel.DB().Model(GroupPowerGrade{}).Where("group_power_id = ?", latestGrade.GroupPowerId).UpdateColumns(updateAttrs).Error; err != nil {
return err return err
} }
// 升级发消息 // todo 看看需要移出去外面,或者发一个事件? // 升级发事件
record1 := msg_m.NewUserRecord(txModel, 4522, msg_e.ActGroupPowerUpgrade, "", 0, "", "", "", "", "") _ = group_power_ev.PublishGroupPowerUpgrade(txModel, &group_power_ev.GroupPowerUpgradeEvent{
_ = record1.Persistent() GroupPowerId: groupPowerId,
return nil })
// 不加离线推送
//user, err := user_m.GetUser(model, event.UserId)
//if err != nil {
// return err
//}
//return SendEmasMsgAssistant(model, user.ExternalId, user.DeviceType)
} }
break break
} }
......
...@@ -106,7 +106,7 @@ func GroupSupportEvents() { ...@@ -106,7 +106,7 @@ func GroupSupportEvents() {
} }
func GroupPowerEvents() { func GroupPowerEvents() {
//加入势力 // 加入势力
group_power_ev.AddGroupPowerJoinAsync(func(model *domain.Model, e interface{}) error { group_power_ev.AddGroupPowerJoinAsync(func(model *domain.Model, e interface{}) error {
event, ok := e.(*group_power_ev.GroupPowerJoinEvent) event, ok := e.(*group_power_ev.GroupPowerJoinEvent)
if !ok { if !ok {
...@@ -134,7 +134,7 @@ func GroupPowerEvents() { ...@@ -134,7 +134,7 @@ func GroupPowerEvents() {
msg_m.SendEmasMsgAssistant(model, mgrUser.ExternalId, mgrUser.DeviceType) msg_m.SendEmasMsgAssistant(model, mgrUser.ExternalId, mgrUser.DeviceType)
return nil return nil
}) })
//离开势力 // 离开势力
group_power_ev.AddGroupPowerLeaveAsync(func(model *domain.Model, e interface{}) error { group_power_ev.AddGroupPowerLeaveAsync(func(model *domain.Model, e interface{}) error {
event, ok := e.(*group_power_ev.GroupPowerLeaveEvent) event, ok := e.(*group_power_ev.GroupPowerLeaveEvent)
if !ok { if !ok {
...@@ -162,6 +162,30 @@ func GroupPowerEvents() { ...@@ -162,6 +162,30 @@ func GroupPowerEvents() {
msg_m.SendEmasMsgAssistant(model, mgrUser.ExternalId, mgrUser.DeviceType) msg_m.SendEmasMsgAssistant(model, mgrUser.ExternalId, mgrUser.DeviceType)
return nil return nil
}) })
// 势力升级
group_power_ev.AddGroupPowerUpgradeAsync(func(model *domain.Model, e interface{}) error {
event, ok := e.(*group_power_ev.GroupPowerUpgradeEvent)
if !ok {
model.Log.Errorf("AddGroupPowerUpgradeAsync event type err")
return nil
}
model.Log.Infof("msg AddGroupPowerUpgradeAsync GroupPowerId:%v", event.GroupPowerId)
//获取势力主
mgrUserId, err := groupPower_m.GetGroupPowerMgr(model, event.GroupPowerId)
if err != nil {
return err
}
mgrUser, err := user_m.GetUser(model, mgrUserId)
if err != nil {
return err
}
if err := msg_m.NewUserRecord(model, mgrUserId, msg_e.GroupPowerUpgrade, "", 0, "", "", "", "", "").Persistent(); err != nil {
model.Log.Errorf("msg AddGroupPowerLeaveAsync NewUserRecord err:%v", err)
return nil
}
msg_m.SendEmasMsgAssistant(model, mgrUser.ExternalId, mgrUser.DeviceType)
return nil
})
} }
func GroupEvents() { func GroupEvents() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment