public void Handle(BonusRedeemed @event) { if (@event.IssuedByCs) { var remark = string.Format( "Bonus ({0}) of {1} was issued to Player ({2})", @event.BonusName, @event.Amount.Format(), @event.PlayerName); AddActivityLog(AdminActivityLogCategory.Bonus, "Bonus issued by CS", @event, @event.EventCreatedBy, remark); } }
public BonusRedemption(Player player, Bonus bonus, RedemptionParams redemptionParams) { var bonusReward = bonus.CalculateReward(player, redemptionParams); Data = new Data.BonusRedemption { Amount = bonusReward, Player = player.Data, Bonus = bonus.Data, CreatedOn = SystemTime.Now.ToBrandOffset(bonus.Data.Template.Info.Brand.TimezoneId) }; if (redemptionParams != null) { Data.Parameters = redemptionParams; } bonus.Data.Statistic.TotalRedeemedAmount += bonusReward; bonus.Data.Statistic.TotalRedemptionCount++; Events = new List <IDomainEvent>(); var redeemedEvent = new BonusRedeemed { AggregateId = Data.Id, BonusId = bonus.Data.Id, PlayerId = player.Data.Id, BonusName = bonus.Data.Name, PlayerName = player.Data.Name, Amount = bonusReward, CurrencyCode = player.Data.CurrencyCode, IssuedByCs = Data.Parameters.IsIssuedByCs }; if (Data.Parameters.IsIssuedByCs == false) { redeemedEvent.EventCreatedBy = Data.Player.Name; } Events.Add(redeemedEvent); }
public void Consume(BonusRedeemed message) { _eventHandlers.Handle(message); }