diff --git a/domain/service/event_s/event_init.go b/domain/service/event_s/event_init.go index 3187f124164447030b7fd1ee23cde5ade93f7f2d..2ad245d2689864a464b34e425f7d0f3b860751ce 100644 --- a/domain/service/event_s/event_init.go +++ b/domain/service/event_s/event_init.go @@ -473,6 +473,45 @@ func FlushHiloInfo(extId string, isVip bool, isPrettyCode bool, medals []uint32, } func SendGift() { + // 送礼事件-群组扶持数据累加 + gift_ev.AddSendGiftEventAsync(func(model *domain.Model, event interface{}) error { + if time.Now().Unix() < 1692964800 { // cwj---- + return nil + } + sendGiftEvent, ok := event.(*gift_ev.SendGiftEvent) + if !ok { + model.Log.Errorf("AddSendGiftEventAsync event type err 群组扶持") + return nil + } + if sendGiftEvent.SceneType != gift_e.GroupSceneType || sendGiftEvent.SceneUid == "" { + return nil + } + _, _, period := group_m.GetSupportLevelTime(time.Now()) + // 钻石数 + diamond := sendGiftEvent.GiftN * sendGiftEvent.ResGift.DiamondNum + keyDiamond := rediskey.GetGroupSupportConsumeSummary(period) + _, err := model.RedisCluster.ZIncrBy(context.Background(), keyDiamond, float64(diamond), sendGiftEvent.SceneUid).Result() + if err != nil { + model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, val:%d, member:%s, err:%v", + keyDiamond, diamond, sendGiftEvent.SceneUid, err) + } + err = redisCli.SetExpire(model.RedisCluster, keyDiamond, time.Hour*24*14) // 保留两周 + if err != nil { + model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, val:%d, member:%s, err:%v", + keyDiamond, diamond, sendGiftEvent.SceneUid, err) + } + // 支持者数量 + keySupportNum := rediskey.GetGroupSupportCountSupporter(period, sendGiftEvent.SceneUid) + err = model.RedisCluster.SAdd(context.Background(), keySupportNum, sendGiftEvent.SendUserId).Err() + if err != nil { + model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, UserId:%d, err:%v", keySupportNum, sendGiftEvent.SendUserId, err) + } + err = redisCli.SetExpire(model.RedisCluster, keySupportNum, time.Hour*24*14) // 保留两周 + if err != nil { + model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, UserId:%d, err:%v", keySupportNum, sendGiftEvent.SendUserId, err) + } + return nil + }) // 送礼事件-势力经验 //gift_ev.AddSendGiftEventAsync(func(model *domain.Model, event interface{}) error { // sendGiftEvent, ok := event.(*gift_ev.SendGiftEvent) @@ -539,46 +578,6 @@ func SendGift() { // } // return nil //}) - - // 送礼事件-群组扶持数据累加 - gift_ev.AddSendGiftEventAsync(func(model *domain.Model, event interface{}) error { - if time.Now().Unix() < 1692964800 { // cwj---- - return nil - } - sendGiftEvent, ok := event.(*gift_ev.SendGiftEvent) - if !ok { - model.Log.Errorf("AddSendGiftEventAsync event type err 群组扶持") - return nil - } - if sendGiftEvent.SceneType != gift_e.GroupSceneType || sendGiftEvent.SceneUid == "" { - return nil - } - _, _, period := group_m.GetSupportLevelTime(time.Now()) - // 钻石数 - diamond := sendGiftEvent.GiftN * sendGiftEvent.ResGift.DiamondNum - keyDiamond := rediskey.GetGroupSupportConsumeSummary(period) - _, err := model.RedisCluster.ZIncrBy(context.Background(), keyDiamond, float64(diamond), sendGiftEvent.SceneUid).Result() - if err != nil { - model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, val:%d, member:%s, err:%v", - keyDiamond, diamond, sendGiftEvent.SceneUid, err) - } - err = redisCli.SetExpire(model.RedisCluster, keyDiamond, time.Hour*24*14) // 保留两周 - if err != nil { - model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, val:%d, member:%s, err:%v", - keyDiamond, diamond, sendGiftEvent.SceneUid, err) - } - // 支持者数量 - keySupportNum := rediskey.GetGroupSupportCountSupporter(period, sendGiftEvent.SceneUid) - err = model.RedisCluster.SAdd(context.Background(), keySupportNum, sendGiftEvent.SendUserId).Err() - if err != nil { - model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, UserId:%d, err:%v", keySupportNum, sendGiftEvent.SendUserId, err) - } - err = redisCli.SetExpire(model.RedisCluster, keySupportNum, time.Hour*24*14) // 保留两周 - if err != nil { - model.Log.Errorf("AddSendGiftEventAsync groupSupport key:%s, UserId:%d, err:%v", keySupportNum, sendGiftEvent.SendUserId, err) - } - return nil - }) } func OnMic() {