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))); }
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))); }
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)); }