[HttpPost] //Recebe o SUBMIT (envio dos dados) do formulário public IActionResult Cadastro(ProdutoCadastroModel model) { //verificar se os campos da model passaram nas validações if (ModelState.IsValid) { try { Produto produto = new Produto(); produto.Nome = model.Nome; produto.Preco = model.Preco; produto.Quantidade = model.Quantidade; repository.Inserir(produto); TempData["Mensagem"] = $"Produto {produto.Nome}, cadastrado com sucesso."; ModelState.Clear(); //limpa os campos do formulário } catch (Exception e) { TempData["Mensagem"] = e.Message; } } return(View()); }
[HttpPost] //recebe os dados do formulário pelo controller public IActionResult Cadastro(ProdutoCadastroModel model) { if (ModelState.IsValid) { try { Produto produto = new Produto(); produto.Nome = model.Nome; produto.Preco = model.Preco; produto.Quantidade = model.Quantidade; //insere os dados do produto na base de dados repository.Inserir(produto); //mensagem enviada com sucesso TempData["Mensagem"] = $"Produto {produto.Nome}, cadastrado com sucesso."; ModelState.Clear(); //limpa os campos do formulário } catch (Exception e) { TempData["Mensagem"] = e.Message; } } return(View()); }
public ActionResult Cadastro(ProdutoCadastroModel model) { if (ModelState.IsValid) { try { Produto produto = new Produto(); produto.Nome = model.Nome; produto.Preco = model.Preco; produto.Quantidade = model.Quantidade; produto.IdEstoque = model.IdEstoque; ProdutoBusiness business = new ProdutoBusiness(); business.CadastrarProduto(produto); TempData["Mensagem"] = $"Produto ' {produto.Nome} ' , cadastrado com sucesso."; ModelState.Clear(); } catch (Exception e) { TempData["Mensagem"] = e.Message; } } return(View(new ProdutoCadastroModel())); }
/// <summary> /// Método para cadastrar um produto na API /// </summary> /// <returns>Dados obtidos da API após a realização do cadastro</returns> private async Task <Produto> CriarProduto() { var model = new ProdutoCadastroModel { Nome = "Produto teste", Preco = 1000, Quantidade = 10 }; var request = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json"); var respose = await _httpclient.PostAsync("api/produtos", request); //utilizando a biblioteca do FluentAssertions para verificar o retorno da API.. respose.StatusCode.Should().Be(HttpStatusCode.OK); //obtendo o resultado retornado pela API.. var responseContent = string.Empty; using (var content = respose.Content) { responseContent += content.ReadAsStringAsync().Result; } var result = JsonConvert.DeserializeObject <ProdutoReturnsOk>(responseContent); //comparando a mensagem obtida após a realização do cadastro result.message.Should().Be("Produto cadastrado com sucesso"); //retorno.. return(result.produto); }
[Fact, Priority(4)] // Método de teste do XUnit public async Task Produto_GetById_ReturnsOkResponse() { var modelCadastro = new ProdutoCadastroModel { Nome = "Monitor", Preco = 500, Quantidade = 6 }; //criando uma requisição var requestPost = new StringContent(JsonConvert.SerializeObject(modelCadastro), Encoding.UTF8, "application/json"); //enviando uma requisição PUT para a API var responsePost = await appContext.client.PostAsync(resource, requestPost); var contentPost = await responsePost.Content.ReadAsStringAsync(); var produto = JsonConvert.DeserializeObject <Produto>(contentPost); //testando uma requisoção Get para a API var response = await appContext.client.GetAsync(resource + "/" + produto.Id.ToString()); response.StatusCode.Should().Be(HttpStatusCode.OK); var contentGet = await response.Content.ReadAsStringAsync(); var registro = JsonConvert.DeserializeObject <ProdutoConsultaModel>(contentGet); Assert.Equal(produto.Id.ToString(), registro.Id); Assert.Equal(produto.Nome, registro.Nome); Assert.Equal(produto.Preco, registro.Preco); Assert.Equal(produto.Quantidade, registro.Quantidade); }
public IActionResult Cadastro(ProdutoCadastroModel model, [FromServices] ProdutoRepository produtoRepository) { if (ModelState.IsValid) { try { var produto = new Produto(); produto.Nome = model.Nome; produto.Preco = model.Preco; produto.Quantidade = model.Quantidade; produto.IdEstoque = model.IdEstoque; produtoRepository.Inserir(produto); TempData["MensagemSucesso"] = "Produto Cadastrado com sucesso! "; ModelState.Clear(); } catch (Exception e) { TempData["MensagemErro"] = "error" + e.Message; } } return(View()); }
[Fact, Priority(3)] // Método de teste do XUnit public async Task Produto_GetAll_ReturnsOkResponse() { var modelCadastro = new ProdutoCadastroModel { Nome = "Monitor", Preco = 500, Quantidade = 6 }; //criando uma requisição var requestPost = new StringContent(JsonConvert.SerializeObject(modelCadastro), Encoding.UTF8, "application/json"); //enviando uma requisição PUT para a API await appContext.client.PostAsync(resource, requestPost); //testando uma requisoção Get para a API var response = await appContext.client.GetAsync(resource); response.StatusCode.Should().Be(HttpStatusCode.OK); var content = await response.Content.ReadAsStringAsync(); var produto = JsonConvert.DeserializeObject <List <ProdutoConsultaModel> >(content); Assert.NotNull(produto); Assert.True(produto.Count > 0); }
public IActionResult Post(ProdutoCadastroModel model) { if (ModelState.IsValid) { try { var produto = mapper.Map <Produto>(model); produtoRepository.Inserir(produto); var result = new { message = "Produto cadastrado com sucesso.", produto }; return(Ok(result)); } catch (Exception e) { return(StatusCode(500, "Erro: " + e.Message)); } } else { return(BadRequest("Ocorreram erros de validação.")); } }
public IActionResult Post(ProdutoCadastroModel model, [FromServices] IProdutoRepository repository) { //se os dados da model passaram nas validações.. if (ModelState.IsValid) { try { var produto = new Produto(); produto.Nome = model.Nome; produto.Preco = model.Preco; produto.Quantidade = model.Quantidade; repository.Inserir(produto); return(Ok("Produto cadastrado com sucesso!")); } catch (Exception e) { return(StatusCode(500, e.Message)); } } else { return(BadRequest("Erro de validação.")); } }
[Fact, Priority(1)] // Método de teste do XUnit public async Task Produto_Post_ReturnsOkResponse() { var model = new ProdutoCadastroModel { Nome = "Notebook", Preco = 2500, Quantidade = 10 }; var request = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json"); //testando uma requisoção POST para a API var response = await appContext.client.PostAsync(resource, request); response.StatusCode.Should().Be(HttpStatusCode.OK); //obtendo o retorno da API var content = await response.Content.ReadAsStringAsync(); var produto = JsonConvert.DeserializeObject <Produto>(content); Assert.NotEmpty(produto.Id.ToString()); Assert.Equal(model.Nome, produto.Nome); Assert.Equal(model.Preco, produto.Preco); Assert.Equal(model.Quantidade, produto.Quantidade); }
public ProdutoDTO Create(ProdutoCadastroModel model) { var produto = mapper.Map <Produto>(model); produtoDomainService.Create(produto); return(mapper.Map <ProdutoDTO>(produto)); }
public void Insert(ProdutoCadastroModel model) { var produto = new Produto(); produto.Nome = model.Nome; produto.Preco = decimal.Parse(model.Preco); produto.Quantidade = int.Parse(model.Quantidade); produto.IdFornecedor = int.Parse(model.IdFornecedor); produtoDomainService.Insert(produto); }
public IActionResult Post(ProdutoCadastroModel model) { try { produtoApplicationService.Insert(model); return(Ok("Produto cadastrado com sucesso.")); } catch (Exception e) { return(StatusCode(500, e.Message)); } }
public IActionResult Post(ProdutoCadastroModel model, [FromServices] IMapper mapper, [FromServices] ProdutoRepository repository) { if (model == null || !ModelState.IsValid) { return(BadRequest()); } var produto = mapper.Map <Produto>(model); repository.Add(produto); return(Ok(produto)); }
private ProdutoCadastroModel CarregarDadosCadastro() { //classe de modelo utilizada na página ProdutoCadastroModel model = new ProdutoCadastroModel(); try { EstoqueRepository repository = new EstoqueRepository(); model.Estoques = Mapper.Map <List <SelectListItem> >(repository.SelectAll()); } catch (Exception e) { TempData["Mensagem"] = e.Message; } return(model); }
public IActionResult Post(ProdutoCadastroModel model) { try { var result = ProdutoApplicationService.Create(model); return(Ok(new { Message = "Produto cadastrado com sucesso.", Produto = result })); } catch (Exception e) { return(StatusCode(500, e.Message)); } }
[Fact, Priority(2)] // Método de teste do XUnit public async Task Produto_Put_ReturnsOkResponse() { var modelCadastro = new ProdutoCadastroModel { Nome = "Monitor", Preco = 500, Quantidade = 6 }; //criando uma requisição var requestPost = new StringContent(JsonConvert.SerializeObject(modelCadastro), Encoding.UTF8, "application/json"); //enviando uma requisição PUT para a API var responsePost = await appContext.client.PostAsync(resource, requestPost); var contentPost = await responsePost.Content.ReadAsStringAsync(); var produto = JsonConvert.DeserializeObject <Produto>(contentPost); var modelEdicao = new ProdutoEdicaoModel { Id = produto.Id.ToString(), Nome = "Celular", Preco = 600, Quantidade = 6 }; var requestPut = new StringContent(JsonConvert.SerializeObject(modelEdicao), Encoding.UTF8, "application/json"); //enviando requisição PUT para a API var responsePut = await appContext.client.PutAsync(resource, requestPut); var contentPut = await responsePut.Content.ReadAsStringAsync(); var registro = JsonConvert.DeserializeObject <Produto>(contentPut); responsePut.StatusCode.Should().Be(HttpStatusCode.OK); Assert.Equal(modelEdicao.Id, registro.Id.ToString()); Assert.Equal(modelEdicao.Nome, registro.Nome); Assert.Equal(modelEdicao.Preco, registro.Preco); Assert.Equal(modelEdicao.Quantidade, registro.Quantidade); }
public IActionResult Post(ProdutoCadastroModel model, [FromServices] IProdutoRepository produtoRepository) { try { var produto = new Produto(); produto.Nome = model.Nome; produto.Preco = decimal.Parse(model.Preco); produto.Quantidade = int.Parse(model.Quantidade); produto.IdFornecedor = int.Parse(model.IdFornecedor); produtoRepository.insert(produto); return(Ok("Produto cadastrado com sucesso!")); } catch (Exception e) { return(StatusCode(500, e.Message)); } }
//método request ajax do jquery public JsonResult CadastrarProduto(ProdutoCadastroModel model) { try { Produto p = new Produto(); p.Nome = model.Nome; p.Preco = model.Preco; p.Quantidade = model.Quantidade; ProdutoRepository rep = new ProdutoRepository(); rep.Insert(p); return(Json($"Produto {p.Nome}, cadastrado com sucesso.")); } catch (Exception e) { return(Json(e.Message)); } }
public IActionResult Post(ProdutoCadastroModel model, [FromServices] IProdutoRepository repository, [FromServices] IMapper mapper) { if (!ModelState.IsValid) { return(BadRequest("Ocorreram erro de validações")); } try { var produto = mapper.Map <Produto>(model); repository.Inserir(produto); return(Ok("Produto Cadastrado com sucesso")); } catch (Exception e) { return(StatusCode(500, e.Message)); } }
public IActionResult Post(ProdutoCadastroModel model) { try { var produto = new Produto { Id = Guid.NewGuid(), Nome = model.Nome, Preco = model.Preco, Quantidade = model.Quantidade }; _produtoRepository.Create(produto); return(Ok(new { message = "Produto cadastrado com sucesso", produto })); } catch (Exception e) { return(StatusCode(500, e.Message)); } }
[HttpPost] //recebe requisições do tipo POST public ActionResult Cadastro(ProdutoCadastroModel model) { //verificar se os campos da model passaram nas regras de validação if (ModelState.IsValid) { try { Produto produto = Mapper.Map <Produto>(model); ProdutoRepository repository = new ProdutoRepository(); repository.Insert(produto); TempData["Mensagem"] = $"Produto {produto.Nome}, cadastrado com sucesso."; ModelState.Clear(); } catch (Exception e) { TempData["Mensagem"] = e.Message; } } return(View(CarregarDadosCadastro())); }
public ActionResult Cadastro(ProdutoCadastroModel model) { if (ModelState.IsValid) { try { Produto produto = new Produto(); produto.Nome = model.Nome; produto.Preco = model.Preco; produto.Quantidade = model.Quantidade; produto.IdEstoque = model.IdEstoque; ProdutoRepository repository = new ProdutoRepository(); repository.Insert(produto); TempData["Mensagem"] = $"Produto {produto.Nome}, cadastrado com sucesso."; ModelState.Clear(); } catch (Exception e) { TempData["Mensagem"] = e.Message; } } return(View()); }
public IActionResult Post([FromBody] ProdutoCadastroModel model, [FromServices] IMapper mapper, [FromServices] IProdutoDomainService service) { try { if (ModelState.IsValid) { var produto = mapper.Map <Produto>(model); service.Cadastrar(produto); return(StatusCode(StatusCodes.Status201Created)); } else { return(StatusCode(StatusCodes.Status400BadRequest)); } } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, e.Message)); } }
//método para notificar as demais páginas de que um cadastro foi realizado public void NotificacaoDeCadastro(ProdutoCadastroModel model) { //método executado pela página de consulta Clients.All.ObterDados(model); }
public IActionResult CadastroProduto([FromServices] ProdutoRepository produtoRepository, ProdutoCadastroModel model, [FromServices] VendedorRepository vendedorRepository) { if (ModelState.IsValid) { try { var vendedor = vendedorRepository.GetByEmail(User.Identity.Name); var produto = new Produto(); produto.Nome = model.Nome; produto.Descricao = model.Descricao; produto.Categoria = model.Categoria; produto.Preco = double.Parse(model.Preco); produto.IdVendedor = vendedor.IdVendedor; produtoRepository.Insert(produto); TempData["MensagemSucesso"] = "Produto Cadastrado Com Sucesso."; ModelState.Clear(); } catch (Exception e) { TempData["MensagemErro"] = "Erro " + e.Message; } } return(View()); }