Exemple #1
0
        public async Task <ProdutoDTO> ReporEstoque(Guid id, int quantidade)
        {
            if (!_estoqueService.DebitarEstoque(id, quantidade).Result)
            {
                throw new DomainException("Falha ao repor estoque.");
            }

            return(_mapper.Map <ProdutoDTO>(await _produtoRepository.GetById(id)));
        }
Exemple #2
0
 public async Task <ProdutoViewModel> DebitarEstoque(Guid id, int quantidade)
 {
     if (!_estoqueService.DebitarEstoque(id, quantidade).Result)
     {
         throw new DomainException("Falha ao debitar estoque");
     }
     return(_mapper.Map <ProdutoViewModel>(await _produtoRepository.ObterPorId(id)));
 }
Exemple #3
0
        public async Task <ProdutoViewModel> DebitarEstoque(Guid id, int quantidade)
        {
            if (!await _estoqueService.DebitarEstoque(id, quantidade))
            {
                throw new DomainException("Falha ao debitar estoque");
            }

            return(await ObterPorId(id));
        }
        public async Task <ProdutoViewModel> DebitarEstoque(Guid id, int quantidade)
        {
            // Esse "Result" é para esperar o await; ao invés de ter o await, está pegando o Result; da no mesmo;
            if (!_estoqueService.DebitarEstoque(id, quantidade).Result)
            {
                throw new DomainException("Falha ao debitar estoque");
            }

            return(_mapper.Map <ProdutoViewModel>(await _produtoRepository.ObterPorId(id)));
        }
        public async Task <ProdutoViewModel> DebitarEstoque(Guid id, int quantidade)
        {
            var debitouDoEstoque = await _estoqueService.DebitarEstoque(id, quantidade);

            if (!debitouDoEstoque)
            {
                throw new DomainException("Falha ao debitar estoque");
            }

            var produtoComEstoqueAtualizado = await _produtoRepository.ObterPorId(id);

            return(_mapper.Map <ProdutoViewModel>(produtoComEstoqueAtualizado));
        }