public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return(new ResultViewModel { Success = false, Message = "Não foi possível alterar o produto", Data = model.Notifications }); } var product = _prodRepo.Get(model.Id); product.Title = model.Title; product.CategoryId = model.CategoryId; product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; product.Price = model.Price; product.Quantity = model.Quantity; this._prodRepo.Update(product); return(new ResultViewModel { Success = true, Message = "Produto alterado com sucesso", Data = product }); }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (!model.Valid) { return(new ResultViewModel { Success = false, Message = "Error on attempt create a new product", Data = model.Notifications }); } var product = new Product(); product.Title = model.Title; product.CategoryId = model.CategoryId; product.Description = model.Description; product.Image = model.Image; product.Price = model.Price; product.Quantity = model.Quantity; product.CreatedAt = DateTime.Now; product.UpdatedAt = DateTime.Now; _context.Products.Add(product); _context.SaveChanges(); return(new ResultViewModel { Success = true, Message = "Product created with success", Data = product }); }
public ResultViewModel Delete([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "Não foi possível remover o produto", Data = model.Notifications } } ; var product = _repository.Get(model.Id); product.Title = model.Title; product.CategoryId = model.CategoryId; //product.CreateDate = DateTime.Now product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; product.Price = model.Price; product.Quantity = model.Quantity; _repository.Excluir(product); return(new ResultViewModel { Success = true, Message = "Produto removido com sucesso!", Data = product }); } }
public async Task <ActionResult <Product> > Post([FromBody] EditorProductViewModel model) { var searchCategory = await _categoryRepository.Get(model.CategoryId); if (searchCategory == null) { return(NotFound(new { message = "Categoria não encontrada" })); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { var product = new Product(); product.Title = model.Title; product.Description = model.Description; product.Price = model.Price; product.Quantity = model.Quantity; product.Image = model.Image; product.CreateDate = DateTime.Now; // Nunca recebe esta informação product.LastUpdateDate = DateTime.Now; // Nunca recebe esta informação product.CategoryId = model.CategoryId; await _repository.Save(product); return(Ok(product)); } catch (Exception) { return(BadRequest(new { message = "Não foi possível cadastrar o produto" })); } }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return(new ResultViewModel { Success = false, Message = "Falha ao cadastrar um produto", Data = model.Notifications }); } Product product = new Product { Title = model.Title, Description = model.Description, Price = model.Price, Quantity = model.Quantity, Image = model.Image, CreateDate = DateTime.Now, LastUpdateDate = DateTime.Now, CategoryId = model.CategoryId }; _context.Products.Add(product); _context.SaveChanges(); return(new ResultViewModel { Success = true, Message = "Produto Cadastrado com sucesso!", Data = product }); }
public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "teste", Data = model.Notifications } } ; var product = repository.Get(model.Id); product.Title = model.Title; product.CategoryId = model.CategoryId; // product.CreateDate = DateTime.Now; // Nunca altera a data de criação product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; // Nunca recebe esta informação product.Price = model.Price; product.Quantity = model.Quantity; repository.Update(product); return(new ResultViewModel { Success = true, Message = "Produto alterado com sucesso!", Data = product }); } }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return(new ResultViewModel( false, "Não foi possível cadastrar o produto", model.Notifications)); } var product = new Product { Title = model.Title, CategoryId = model.CategoryId, CreateDate = DateTime.Now, Description = model.Description, Image = model.Image, LasUpdateDate = DateTime.Now, Price = model.Price, Quantity = model.Quantity }; _repository.Save(product); return(new ResultViewModel ( true, "Produto cadastrado com sucesso!", product )); }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Data = model.Notifications, Message = "Wasn't possible save product!", Success = false } } ; Product product = model.ConvertNewViewModelToModel(); _repository.Save(product); return(new ResultViewModel { Data = product, Message = "Successfull to register Product", Success = true }); }
public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Data = model.Notifications, Message = "Wasn't possible update product!", Success = false } } ; Product product = _repository.Get(model.Id); product = model.ConvertUsedViewModelToModel(product); _repository.Update(product); return(new ResultViewModel { Data = product, Message = "Successfull to update Product", Success = true }); } }
public async Task <ActionResult <ResultViewModel> > Post([FromServices] IProductRepository repository, [FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return(new ResultViewModel { Success = false, Message = "Não foi possível cadastrar o produto!", Data = model.Notifications }); } else { var product = new Product(); product.Title = model.Title; product.Description = model.Description; product.Image = model.Image; product.Price = model.Price; product.Quantity = model.Quantity; product.CategoryId = model.CategoryId; product.CreateDate = DateTime.Now; product.LastUpdateDate = DateTime.Now; await repository.Save(product); return(new ResultViewModel { Success = true, Message = "Produto foi salvo com sucesso!", Data = product }); } }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (model.invalid) { Success = false, Message = "Não foi possivel cadastrar o Produto", Data = model.Notifications } ; var product = new Product(); product.Title = model.Title; product.CategoyId = model.CategoyId; product.CreateDate = DateTime.Now; product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; product.Quantity = model.Quantity; _context.Products.Add(product); _context.SaveChanges(); return(new ResultViewModel { Success = true, Message = "Produto cadastrado com sucesso", Data = product }); }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "Não foi possível cadastrar o produto", Data = model.Notifications } } ; var produto = new Produto(); produto.Titulo = model.Titulo; produto.Descricao = model.Descricao; produto.Valor = model.Valor; produto.Imagem = model.Imagem; _repository.Save(produto); return(new ResultViewModel { Success = true, Message = "Produto cadastrado com sucesso!", Data = produto }); } }
public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return(new ResultViewModel { Success = false, Message = "Falha ao editar um produto", Data = model.Notifications }); } Product product = _context.Products.Find(model.Id); product.Title = model.Title; product.Description = model.Description; product.Price = model.Price; product.Quantity = model.Quantity; product.Image = model.Image; product.CreateDate = DateTime.Now; product.LastUpdateDate = DateTime.Now; product.CategoryId = model.CategoryId; _context.Entry <Product>(product).State = EntityState.Modified; _context.SaveChanges(); return(new ResultViewModel { Success = true, Message = "Produto alterado com sucesso!", Data = product }); }
public ResultViewModel Put([FromBody] EditorProductViewModel productViewModel) { if (productViewModel.Invalid) { return(new ResultViewModel() { Data = productViewModel.Notifications, Message = "Não foi possível cadastrar o produto", Success = false }); } var product = _repository.Find(productViewModel.Id).Result; product.CategoryId = productViewModel.CategoryId; product.Description = productViewModel.Description; product.Image = productViewModel.Image; product.LastUpdateDate = DateTime.Now; product.Price = productViewModel.Price; product.Quantity = productViewModel.Quantity; product.Title = productViewModel.Title; _repository.Update(product); return(new ResultViewModel() { Success = true, Data = product, Message = "Operação realizada com sucesso." }); }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Sucess = false, Message = "Não foi possicel cadastrar o produto", Data = model.Notifications } } ; var product = new Product() { Tittle = model.Title, CategoryId = model.CategoryId, CreateDate = DateTime.Now, Description = model.Description, Image = model.Image, LastUpdateDate = DateTime.Now, Price = model.Price, Quantity = model.Quantity }; _repository.Save(product); return(new ResultViewModel { Sucess = true, Message = "Produto cadastrado com sucesso", Data = product }); }
public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Sucess = false, Message = "Não foi possicel cadastrar o produto", Data = model.Notifications } } ; var product = _repository.GetById(model.Id); product.Tittle = model.Title; product.CategoryId = model.CategoryId; product.CreateDate = DateTime.Now; product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; product.Price = model.Price; product.Quantity = model.Quantity; _repository.Update(product); return(new ResultViewModel { Sucess = true, Message = "Produto cadastrado com sucesso", Data = product }); }
public ResultViewModel Post([FromBody] EditorProductViewModel productViewModel) { productViewModel.Validate(); if (productViewModel.Invalid) { return(new ResultViewModel() { Data = productViewModel.Notifications, Message = "Não foi possível cadastrar o produto", Success = false }); } var product = new Product() { CategoryId = productViewModel.CategoryId, //CreateDate = DateTime.Now, Description = productViewModel.Description, Image = productViewModel.Image, //LastUpdateDate = DateTime.Now, Price = productViewModel.Price, Quantity = productViewModel.Quantity, Title = productViewModel.Title, }; _repository.Save(product); return(new ResultViewModel() { Success = true, Data = product, Message = "Operação realizada com sucesso." }); }
public ResultViewModel Put([FromBody] EditorProductViewModel productVM) { productVM.Validate(); if (productVM.Invalid) { return(new ResultViewModel { Success = false, Message = "Não foi possível cadastrar este Produto.", Data = productVM.Notifications }); } var product = _context.Products.Find(productVM.Id); { product.Description = productVM.Description; product.CategoryId = productVM.CategoryId; product.UpdateDate = DateTime.Now; product.Image = productVM.Image; product.Price = productVM.Price; product.Quantity = productVM.Quantity; product.Title = productVM.Title; }; _context.Products.Update(product); _context.SaveChanges(); return(new ResultViewModel { Success = true, Message = "Produto cadastrado com sucesso!", Data = product }); }
public ResultViewModel Post([FromBody] EditorProductViewModel productVM) { productVM.Validate(); if (productVM.Invalid) { return(new ResultViewModel { Success = false, Message = "Não foi possível cadastrar este Produto.", Data = productVM.Notifications }); } Product product = new Product { Description = productVM.Description, CategoryId = productVM.CategoryId, InsertDate = DateTime.Now, UpdateDate = DateTime.Now, Image = productVM.Image, Price = productVM.Price, Quantity = productVM.Quantity, Title = productVM.Title }; _context.Products.Add(product); _context.SaveChanges(); return(new ResultViewModel { Success = true, Message = "Produto cadastrado com sucesso!", Data = product }); }
public ResultViewModel Post([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "Não foi possível cadastrar o produto", Data = model.Notifications } } ; var product = new Product(); product.Title = model.Title; product.CategoryId = model.CategoryId; product.CreateDate = DateTime.Now; // Nunca recebe esta informação product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; // Nunca recebe esta informação product.Price = model.Price; product.Quantity = model.Quantity; repository.Save(product); return(new ResultViewModel { Success = true, Message = "Produto cadastrado com sucesso!", Data = product }); }
public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return(new ResultViewModel( false, "Não foi possível atualizar o produto", model.Notifications)); } var product = _repository.GetProductById(model.Id); product.Title = model.Title; product.Description = model.Description; product.Price = model.Price; product.Quantity = model.Quantity; product.Image = model.Image; product.LasUpdateDate = DateTime.Now; product.CategoryId = model.CategoryId; _repository.Update(product); return(new ResultViewModel ( true, "Produto atualizado com sucesso!", product )); }
public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "Could not change product", Data = model.Notifications } } ; var product = _repository.Get(model.Id); product.Title = model.Title; product.CategoryId = model.CategoryId; // product.CreateDate = DateTime.Now; product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; product.Price = model.Price; product.Quantity = model.Quantity; _repository.Update(product); return(new ResultViewModel { Success = true, Message = "Product changed successfully!", Data = product }); } }
public ResultViewModel Delete([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "Não foi possível excluir o produto.", Data = model.Notifications } } ; var product = _repository.GetById(model.Id); _repository.Delete(product); return(new ResultViewModel { Success = true, Message = "Produto excluido com sucesso.", Data = product }); } }
public Product Post([FromBody] EditorProductViewModel editorProductViewModel) { var product = _mapper.Map <EditorProductViewModel, Product>(editorProductViewModel); _context.Products.Add(product); _context.SaveChanges(); return(product); }
public ResultViewModel Post( [FromBody] EditorProductViewModel model, [FromServices] IUnitOfWork uow ) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "Não foi possível cadastrar o produto", Data = model.Notifications } } ; var product = new Product(); product.Title = model.Title; product.CategoryId = model.CategoryId; product.CreateDate = DateTime.Now; // Nunca recebe esta informação product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; // Nunca recebe esta informação product.Price = model.Price; product.Quantity = model.Quantity; try { _repository.Save(product); uow.Commit(); // Irá Utilizar o UnitOfWork para salvar, o UnitOfWork controla a transaçao no banco de dados. return(new ResultViewModel { Success = true, Message = "Produto cadastrado com sucesso!", Data = product }); } catch (Exception ex) { uow.Rollback(); // Irá Utilizar o UnitOfWork para salvar, o UnitOfWork controla a transaçao no banco de dados. return(new ResultViewModel { Success = false, Message = "Erro ao cadastrar Produto: " + ex.Message, Data = product }); } }
public ResultViewModel Delete([FromBody] EditorProductViewModel model) { //Product product = ; _context.Products.Remove(_context.Products.Find(model.Id)); _context.SaveChanges(); return(new ResultViewModel { Success = true, Message = "Produto deletado com sucesso!", Data = null }); }
public ResultViewModel Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.Invalid) { return new ResultViewModel { Success = false, Message = "Não foi possivel atualizar o produto!", Data = model.Notifications } } ; var product = _repository.Get(model.Id); product.Title = model.Title; product.CategoryId = model.CategoryId; // product.CreateDate = DateTime.Now; product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; product.Price = model.Price; product.Quantity = model.Quantity; //update _repository.Update(product); return(new ResultViewModel { Success = true, Message = "Produto alterado com sucesso!", Data = product }); } // [Route("v1/products")] // [HttpDelete] // public ResultViewModel Delete([FromBody]EditorProductViewModel model) // { // _context.Products.Remove(_context.Products.Find(model.Id)); // _context.SaveChanges(); // return new ResultViewModel{ // Success = true, // Message= "Produto removido com sucesso!", // Data = null // }; // } }
public ResultViewModel Post([FromBody] EditorProductViewModel model, [FromServices] ICategoryRepository categoryRepository) { model.Validate(); if (model.Invalid) { return(new ResultViewModel() { Success = false, Message = "Não foi possível cadastrar o produto", Data = model }); } if (categoryRepository.NotExists(model.CategoryId)) { model.AddNotification("CategoryId", "Categoria não encontrada"); return(new ResultViewModel() { Success = false, Message = "Não foi possível cadastrar o produto", Data = model }); } var product = new Product() { Title = model.Title, Description = model.Description, Price = model.Price, Quantity = model.Quantity, Image = model.Image, CategoryId = model.CategoryId, CreateDate = DateTime.Now, LastUpdateDate = DateTime.Now }; _productRepository.Create(product); return(new ResultViewModel() { Success = true, Message = "Produto criado com sucesso.", Data = product }); }
public ActionResult Put([FromBody] EditorProductViewModel model) { var product = _repository.Get(model.ProductId); product.ProductName = model.ProductName; product.CategoryId = model.CategoryId; //product.CreateDate = DateTime.Now; //Never receive this info product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; //Never receive this info product.Price = model.Price; product.Quantity = model.Quantity; _repository.Update(product); return(Ok(product)); }
public async Task <ResultViewModel> Put([FromBody] EditorProductViewModel model) { model.Validate(); if (model.IsValid) { return(new ResultViewModel { Success = false, Message = "Não foi possível cadastrar o produto", Data = model.Notifications }); } var product = _context.Products.Find(model.Id); if (product == null) { return(new ResultViewModel() { Success = false, Data = model, Message = "Produto não encontrado" }); } product.Title = model.Title; product.CategoryId = model.CategoryId; product.CreateDate = DateTime.Now; product.Description = model.Description; product.Image = model.Image; product.LastUpdateDate = DateTime.Now; product.Price = model.Price; product.Quantity = model.Quantity; _context.Entry <Product>(product).State = EntityState.Modified; await _context.SaveChangesAsync(); return(await Task.FromResult(new ResultViewModel() { Success = true, Message = "Produto atualizado com sucesso", Data = product })); }