예제 #1
0
        public ResultViewModel Put([FromBody] EditProductViewModel model)
        {
            model.Validate();
            if (model.Invalid)
            {
                return new ResultViewModel
                       {
                           Success = false,
                           Message = "Não foi possível alterar o produto!",
                           Data    = model.Notifications
                       }
            }
            ;
            Product product = _context.Products.Find(model.Id);

            product.Title          = model.Title;
            product.CategoryId     = model.CategoryId;
            product.Descriptions   = 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;
            _context.SaveChanges();
            return(new ResultViewModel
            {
                Success = true,
                Message = "Produto alterado com sucesso!",
                Data = product
            });
        }
    }
예제 #2
0
        public ResultViewModel Post([FromBody] EditProductViewModel model)
        {
            model.Validate();
            if (model.Invalid)
            {
                return new ResultViewModel
                       {
                           Success = false,
                           Message = "Não foi possível cadastrar o produto!",
                           Data    = model.Notifications
                       }
            }
            ;
            Product product = new Product();

            product.Title          = model.Title;
            product.CategoryId     = model.CategoryId;
            product.CreateDate     = DateTime.Now; //nunca recebe esta informação é automática
            product.Descriptions   = model.Description;
            product.Image          = model.Image;
            product.LastUpdateDate = DateTime.Now;     // nunca recebe esta informação é automática
            product.Price          = model.Price;
            product.Quantity       = model.Quantity;
            _context.Products.Add(product);

            _context.SaveChanges();
            return(new ResultViewModel
            {
                Success = true,
                Message = "Produto Cadastrado com sucesso!",
                Data = product
            });
        }
예제 #3
0
        public ResultViewModel Post([FromBody] EditProductViewModel 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.Description    = model.Description;
            product.Image          = model.Image;
            product.Price          = model.Price;
            product.Quantity       = model.Quantity;
            product.CreateDate     = DateTime.Now;
            product.LastUpdateDate = DateTime.Now;

            _repository.Save(product);

            return(new ResultViewModel
            {
                Success = true,
                Message = "Produto cadastrado com sucesso!",
                Data = product
            });
        }
예제 #4
0
        public ResultViewModel Put([FromBody] EditProductViewModel model)
        {
            model.Validate();
            if (model.Invalid)
            {
                return new ResultViewModel
                       {
                           Success = false,
                           Message = "Não foi possível atualizar o produto",
                           Data    = model.Notifications
                       }
            }
            ;

            var product = _repository.Get(model.Id);

            product.Title       = model.Title;
            product.CategoryId  = model.CategoryId;
            product.Description = model.Description;
            product.Image       = model.Image;
            product.LastUpdate  = DateTime.Now; // Nunca receber esta informação
            product.Price       = model.Price;
            product.Quantity    = model.Quantity;

            // Salvar
            _repository.Update(product);

            return(new ResultViewModel
            {
                Success = true,
                Message = "Produto alterado com sucesso.",
                Data = product
            });
        }
    }
예제 #5
0
        public ResultViewModel Put([FromBody] EditProductViewModel model)
        {
            try
            {
                model.Validate();
                if (model.Invalid)
                {
                    return(new ResultViewModel
                    {
                        Success = false,
                        Message = "Não foi possível atualizar o produto.",
                        Data = model.Notifications
                    });
                }

                var product = _repository.Find(model.Id);

                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.LastUpdateDate = DateTime.Now;

                _repository.Update(product);

                return(new ResultViewModel
                {
                    Success = true,
                    Message = "Produto atualizado com sucesso!",
                    Data = product
                });
            }
            catch (System.Exception)
            {
                // throw;
                return(new ResultViewModel
                {
                    Success = false,
                    Message = "Não foi possível encontrar o produto.",
                    Data = model.Notifications
                });
            }
        }