Exemplo n.º 1
0
        public async Task AdicionarProduto(Produto produto)
        {
            await _produtoService.AdicionarProduto(produto);

            if (_produtoService.Invalid)
            {
                AddNotifications(_produtoService.Notifications);
            }
        }
        public ValidationAppResult Add(ProdutoViewModel modelViewModel)
        {
            var model = Mapper.Map <ProdutoViewModel, Produto>(modelViewModel);

            BeginTransaction();

            var result = _modelService.AdicionarProduto(model);

            if (!result.IsValid)
            {
                return(DomainToApplicationResult(result));
            }

            Commit();

            return(DomainToApplicationResult(result));
        }
        public async Task <ActionResult <Produto> > PostProduto(Produto produto)
        {
            try
            {
                // Adiciona produto em estoque service
                _produtoService.AdicionarProduto(produto);

                // Envia mensagem para fila do service bus
                await _serviceBusMessageSender.SendProdutoAdicionadoMessage(produto);

                // Salva alterações em estoque service
                await _produtoService.SalvarAsync();

                return(StatusCode(2001, produto));
            }
            catch (ArgumentOutOfRangeException ex)
            {
                return(BadRequest(ex.Message));
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 4
0
 public IActionResult ProdutoAdd([FromBody] Produto novoProduto)
 {
     return(Ok(_produto.AdicionarProduto(novoProduto)));
 }