Ejemplo n.º 1
0
 public bool Exists(string domainName)
 {
     using (var scope = ScopeProvider.CreateScope(autoComplete: true))
     {
         return(_domainRepository.Exists(domainName));
     }
 }
Ejemplo n.º 2
0
        public Task Handle(DepositMoney message, IMessageHandlerContext context)
        {
            if (!_domainRepository.Exists <Domain.Aggregate.CashCard>(message.CardNumber))
            {
                throw new AggregateNotFoundException($"Cash card {message.CardNumber} was not found");
            }
            var cashCard = _domainRepository.GetById <Domain.Aggregate.CashCard>(message.CardNumber);

            cashCard.Deposit(message.AuditInfo, message.Quantity, DateTime.UtcNow);
            _domainRepository.Save(cashCard);
            log.Info($"card {cashCard.Id} balance is now {cashCard.Balance}");
            return(Task.CompletedTask);
        }
Ejemplo n.º 3
0
        public Task Handle(WithdrawMoney message, IMessageHandlerContext context)
        {
            var replyMessage = new WithDrawReponse(message.AuditInfo, message.CardNumber, message.Quantity, true);;

            try
            {
                if (!_domainRepository.Exists <Domain.Aggregate.CashCard>(message.CardNumber))
                {
                    throw new AggregateNotFoundException($"Cash card {message.CardNumber} was not found");
                }
                var cashCard = _domainRepository.GetById <Domain.Aggregate.CashCard>(message.CardNumber);
                cashCard.Withdraw(message.AuditInfo, message.Quantity, DateTime.UtcNow);
                _domainRepository.Save(cashCard);
                log.Info($"card {cashCard.Id} balance is now {cashCard.Balance}");
                return(context.Reply(replyMessage));
            }
            catch (WithDrawException ex)
            {
                replyMessage.Message       = ex.Message;
                replyMessage.WithDrawValid = false;
                return(context.Reply(replyMessage));
            }
        }