Пример #1
0
        public Task <bool> Handle(RegisterNewTypeLotteryCommand message, CancellationToken cancellationToken)
        {
            if (!message.IsValid())
            {
                NotifyValidationErrors(message);
                return(Task.FromResult(false));
            }

            var TypeLottery = new TypeLottery(Guid.NewGuid(), message.Name, message.Tens_Min, message.Bet_Min, message.Hit_Min, message.Hit_Max);

            if (_TypeLotteryRepository.GetById(TypeLottery.Id) != null)
            {
                Bus.RaiseEvent(new DomainNotification(message.MessageType, "O ID deste tipo de jogo já está sendo usado!"));
                return(Task.FromResult(false));
            }

            _TypeLotteryRepository.Add(TypeLottery);

            if (Commit())
            {
                Bus.RaiseEvent(new TypeLotteryRegisteredEvent(TypeLottery.Id, TypeLottery.Name, TypeLottery.Tens_Min, TypeLottery.Bet_Min, TypeLottery.Hit_Min, TypeLottery.Hit_Max));
            }

            return(Task.FromResult(true));
        }