public async Task <IActionResult> Create(ProdutoCreateViewModel produtoCreateViewModel) { if (!produtoCreateViewModel.Preco.ToString().EndsWith("3")) { ModelState.AddModelError("Preco", "O preço deve terminar em 3."); } if (ModelState.IsValid) { var fabricante = await fabricanteRepository.FindByIdAsync(produtoCreateViewModel.Fabricante); var produto = new Produto { Nome = produtoCreateViewModel.Nome, Preco = produtoCreateViewModel.Preco, Fabricante = fabricante, FotoUrl = produtoCreateViewModel.Url }; await produtoRepositorio.AddAsync(produto); return(RedirectToAction(nameof(Index))); } ViewBag.Fabricantes = (await fabricanteRepository.ListaFabricantesAsync()) .Select(c => new SelectListItem() { Text = c.Nome, Value = c.Id.ToString() }) .ToList(); return(View(produtoCreateViewModel)); }
public async Task <bool> Handle(CreateProdutoCommand request, CancellationToken cancellationToken) { var novoProduto = new Produto(request.Descricao, request.Valor, request.QuantidadeEstoque); await _produtoRepository.AddAsync(novoProduto); return(await _produtoRepository.UnitOfWork.SaveEntitiesAsync(cancellationToken)); }
public async Task Create(CreateProdutoRequest createProductRequest) { if (createProductRequest.Preco > 0 && createProductRequest.QtdEstoque > 0) { var exists = await _produtoRepository.ExistsAsync(x => x.CodProduto.ToUpper() == createProductRequest.CodProduto.ToUpper() || x.Nome.ToUpper() == createProductRequest.Nome.ToUpper()); if (!exists) { await _produtoRepository.AddAsync(_mapper.Map <Produto>(createProductRequest)); await _uow.CommitAsync(); } } }
public async Task <IActionResult> PostAsync([FromBody] Produto item) { if (item == null) { return(BadRequest(new { status = 400, message = "Objeto inválido." })); } if (ModelState.IsValid) { var response = await _produtoRepository.AddAsync(item); if (response.Equals("success")) { return(Ok(new { status = HttpContext.Response.StatusCode, message = "Cadastrado com sucesso.", data = item, token = TokenGenerator.ReBuildToken(Request.Headers["Authorization"]) })); } return(BadRequest(new { status = 400, message = response })); } else { return(BadRequest(new { status = 400, message = ModelState.Values.SelectMany(m => m.Errors) .Select(e => e.ErrorMessage) .ToList() })); } }
public async Task <bool> Adicionar(Produto produto) { if (!ExecutarValidacao(new ProdutoValidation(), produto)) { return(false); } if (!await _categoriaRepository.Existe(c => c.id == produto.id_categoria)) { Notificar("Categoria não encontrada"); return(false); } if (await _produtoRepository.Existe(c => c.slug == produto.slug)) { Notificar("Já existe um produto com o nome " + produto.nome); return(false); } produto.slug = produto.nome.Slugify(); await _produtoRepository.AddAsync(produto); return(true); }
public Task <Produto> Post(Produto produto) { produto.DataHoraCadastro = DateTime.Now; return(repository.AddAsync(produto)); }
public async Task <Produto> IniciarLeilaoProduto(Produto produto) => await _produtoRepository.AddAsync(produto);