Esempio n. 1
0
        public ActionResult Editar(ProductoVM model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    using (ProductosFerreterosDBEntities myDB = new ProductosFerreterosDBEntities())
                    {
                        var prod = myDB.Productos.FirstOrDefault(x => x.Id == model.Id);
                        prod.Nombre           = model.Nombre;
                        prod.Descripcion      = model.Descripcion;
                        prod.PrecioCompra     = model.PrecioCompra;
                        prod.PrecioVenta      = model.PrecioVenta;
                        prod.InventarioMinimo = model.InventarioMinimo;
                        //prod.Activo = true;

                        myDB.Entry(prod).State = System.Data.Entity.EntityState.Modified;
                        myDB.SaveChanges();
                    }
                    return(Redirect("/Producto"));
                }
                return(View(model));
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 2
0
        public ActionResult Modificar(int id)
        {
            ProductoVM model = ObtenerProductoVM();

            model.Producto = ServiciosProducto.ObtenerProductoPorId(id);
            return(View(model));
        }
Esempio n. 3
0
        public ActionResult Nuevo(ProductoVM model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    using (ProductosFerreterosDBEntities myDB = new ProductosFerreterosDBEntities())
                    {
                        var prod = new Productos();
                        prod.Nombre           = model.Nombre;
                        prod.Descripcion      = model.Descripcion;
                        prod.PrecioCompra     = model.PrecioCompra;
                        prod.PrecioVenta      = model.PrecioVenta;
                        prod.InventarioMinimo = model.InventarioMinimo;
                        prod.Activo           = true;

                        myDB.Productos.Add(prod);
                        myDB.SaveChanges();
                    }
                    return(Redirect("/Producto"));
                }
                return(View(model));
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Esempio n. 4
0
        public IActionResult UpdateProveedor(string id, [FromBody] ProductoVM model)
        {
            using var transaction = _context.Database.BeginTransaction();

            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest("Modelo inválido"));
                }

                var dbProveedor = _context.Proveedor.FirstOrDefault(x => x.Id == Guid.Parse(id));

                if (dbProveedor != null)
                {
                    dbProveedor = _mapper.Map(model, dbProveedor);

                    _context.Proveedor.Update(dbProveedor);
                    _context.SaveChanges();

                    transaction.Commit();

                    return(Ok(dbProveedor));
                }

                return(BadRequest("Proveedor no encontrado"));
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                return(Conflict(ex.Message));
            }
        }
Esempio n. 5
0
        private void IniciaAgregarProducto(ProductoVM productoVM)
        {
            var formProducto = new FormProducto(MesaSeleccionada.IdVenta, productoVM.IdProducto);

            formProducto.FormClosing += FormProducto_FormClosing;
            formProducto.ShowDialog(this);
        }
Esempio n. 6
0
        // GET: Productos
        private ProductoVM ObtenerProductoVM()
        {
            List <TipoProducto> Tipos      = ServiciosProducto.ObtenerTiposDeProductos();
            ProductoVM          productoVM = new ProductoVM();

            productoVM.Tipos = Tipos;
            return(productoVM);
        }
Esempio n. 7
0
        public IActionResult CrearVM()
        {
            var prodVM = new ProductoVM();

            prodVM.Tamanios   = Db.Tamanios.ToList();
            prodVM.Categorias = Db.Categorias.ToList();
            return(View(prodVM));
        }
Esempio n. 8
0
        /// <summary>
        /// Constructor para añadir un producto
        /// </summary>
        /// <param name="pVM">Vista modelo del producto</param>
        public AddEditProducto(ProductoVM pVM)
        {
            UIGlobal.AddEditProducto = this;
            InitializeComponent();
            productoVM  = pVM;
            producto    = new Producto();
            DataContext = producto;

            add = true;
        }
Esempio n. 9
0
 public bool Update(ProductoVM vm)
 {
     return(this.Update(new Producto
     {
         ProductoID = vm.ProductoID,
         MarcaID = vm.MarcaID,
         RubroID = vm.RubroID,
         TipoProductoID = vm.TipoProductoID,
         Nombre = vm.Nombre
     }));
 }
Esempio n. 10
0
        public ActionResult Eliminar(int id)
        {
            ProductoVM model = new ProductoVM();

            using (ProductosFerreterosDBEntities myDB = new ProductosFerreterosDBEntities())
            {
                var pro = myDB.Productos.Find(id);

                myDB.Productos.Remove(pro);
                myDB.SaveChanges();
            }

            return(Redirect("/Producto"));
        }
Esempio n. 11
0
        public IActionResult ModificarVM(int id)
        {
            var producto = Db.Productos
                           .Include(a => a.Tamanio)
                           .Include(a => a.Categoria)
                           .Where(x => x.Id == id)
                           .FirstOrDefault();
            var prodVM = new ProductoVM();

            prodVM.Producto   = producto;
            prodVM.Tamanios   = Db.Tamanios.ToList();
            prodVM.Categorias = Db.Categorias.ToList();

            return(View(prodVM));
        }
Esempio n. 12
0
        public IActionResult CrearVM(ProductoVM formProd)
        {
            var prod = formProd.Producto;

            if (prod.Foto != null)
            {
                string carpeta       = Path.Combine(Hosting.WebRootPath, "imagenes");
                string archivonombre = prod.Foto.FileName;
                string ruta          = Path.Combine(carpeta, archivonombre);
                prod.Foto.CopyTo(new FileStream(ruta, FileMode.Create));
                prod.FotoRuta = archivonombre;
            }

            Db.Productos.Add(prod);
            Db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 13
0
        public ActionResult Editar(int id)
        {
            ProductoVM model = new ProductoVM();

            using (ProductosFerreterosDBEntities myDB = new ProductosFerreterosDBEntities())
            {
                model = (from a in myDB.Productos
                         where (a.Id == id)
                         select new ProductoVM
                {
                    Id = a.Id,
                    Nombre = a.Nombre,
                    Descripcion = a.Descripcion,
                    PrecioCompra = a.PrecioCompra ?? 0,
                    PrecioVenta = a.PrecioVenta ?? 0,
                    InventarioMinimo = a.InventarioMinimo ?? 0,
                    Activo = a.Activo ?? false
                }).FirstOrDefault();
            }
            return(View(model));
        }
        public ActionResult Delete(int id, ProductoVM model)
        {
            try
            {
                var producto = _productoRepo.FindById(id);
                if (producto == null)
                {
                    return(NotFound());
                }

                if (!_productoRepo.Delete(producto))
                {
                    return(View(model));
                }

                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                ModelState.AddModelError("", "Something went wrong...");
                return(View(model));
            }
        }
Esempio n. 15
0
        public IActionResult ModificarVM(ProductoVM formProd)
        {
            var prod = formProd.Producto;

            //var prodanterior=Db.Productos.Where(x=>x.Id== prod.Id).FirstOrDefault();

            if (prod.Foto != null)
            {
                string carpeta       = Path.Combine(Hosting.WebRootPath, "imagenes");
                string archivonombre = prod.Foto.FileName;
                string ruta          = Path.Combine(carpeta, archivonombre);
                prod.Foto.CopyTo(new FileStream(ruta, FileMode.Create));
                prod.FotoRuta = archivonombre;
            }
            else
            {
                //prod.FotoRuta=prodanterior.FotoRuta;
            }

            Db.Productos.Update(prod);
            Db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 16
0
        /// <summary>
        ///  Constructor para modificar un producto
        /// </summary>
        /// <param name="pVM">Vista modelo del producto</param>
        /// <param name="p">Producto a modificar</param>
        public AddEditProducto(ProductoVM pVM, Producto p)
        {
            UIGlobal.AddEditProducto = this;
            InitializeComponent();

            id.IsEnabled = false; // El codigo del producto no se puede cambiar
            productoVM   = pVM;

            producto    = (Producto)p.Clone();
            DataContext = producto;

            if (producto.Imagen != null) // si el producto tiene una imagen se escribe en el texto box que hay imagen
            {
                imagen.Text = (string)Application.Current.FindResource("TieneImagen");
            }
            else  // si el producto no tiene imagen se escribe en el texto box que no hay imagen
            {
                imagen.Text = (string)Application.Current.FindResource("NoTieneImagen");
            }

            almacenViejo = p.Almacen.ToString(); // guardamos el valor del almacen actual
            add          = false;
        }
        public ActionResult Edit(ProductoVM model)
        {
            try
            {
                // TODO: Add update logic here
                if (!ModelState.IsValid)
                {
                    return(View(model));
                }

                var producto = _mapper.Map <Producto>(model);
                if (!_productoRepo.Update(producto))
                {
                    ModelState.AddModelError("", "Something went wrong...");
                    return(View(model));
                }
                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                ModelState.AddModelError("", "Something went wrong...");
                return(View(model));
            }
        }
Esempio n. 18
0
        public IActionResult Upsert(int?id)
        {
            ProductoVM productoVM = new ProductoVM()
            {
                Producto       = new Producto(),
                CategoriaLista = _unidadTrabajo.Categoria.ObtenerTodos().Select(c => new SelectListItem
                {
                    Text  = c.Nombre,
                    Value = c.Id.ToString()
                }),
                MarcaLista = _unidadTrabajo.Marca.ObtenerTodos().Select(c => new SelectListItem
                {
                    Text  = c.Nombre,
                    Value = c.Id.ToString()
                }),
                PadreLista = _unidadTrabajo.Producto.ObtenerTodos().Select(p => new SelectListItem
                {
                    Text  = p.Descripcion,
                    Value = p.Id.ToString()
                })
            };

            if (id == null)
            {
                //Esto es para Crear nuevo Registro
                return(View(productoVM));
            }
            //Esto es para Actualizar
            productoVM.Producto = _unidadTrabajo.Producto.Obtener(id.GetValueOrDefault());

            if (productoVM.Producto == null)
            {
                return(NotFound());
            }
            return(View(productoVM));
        }
Esempio n. 19
0
        public IActionResult Upsert(ProductoVM productoVM)
        {
            if (ModelState.IsValid)

            {
                //Cargar Imagen
                string webRootPath = _hostEnvironment.WebRootPath;
                var    files       = HttpContext.Request.Form.Files;
                if (files.Count > 0)
                {
                    string filename  = Guid.NewGuid().ToString();
                    var    uploads   = Path.Combine(webRootPath, @"Imagenes/productos");
                    var    extension = Path.GetExtension(files[0].FileName);
                    if (productoVM.Producto.ImagenUrl != null)
                    {
                        //Esto es para editar,necesitamos borrar la imagen anterior
                        var imagenPath = Path.Combine(webRootPath, productoVM.Producto.ImagenUrl.TrimStart('\\'));

                        if (System.IO.File.Exists(imagenPath))
                        {
                            ;
                        }
                        {
                            System.IO.File.Delete(imagenPath);
                        }
                    }
                    using (var filesStreams = new FileStream(Path.Combine(uploads, filename + extension), FileMode.Create))
                    {
                        files[0].CopyTo(filesStreams);
                    }
                    productoVM.Producto.ImagenUrl = @"\Imagenes\productos\" + filename + extension;
                }
                else
                {
                    //si en el update el usuario no cambia la imagen
                    if (productoVM.Producto.Id != 0)
                    {
                        Producto productoDB = _unidadTrabajo.Producto.Obtener(productoVM.Producto.Id);
                        productoVM.Producto.ImagenUrl = productoDB.ImagenUrl;
                    }
                }

                if (productoVM.Producto.Id == 0)
                {
                    _unidadTrabajo.Producto.Agregar(productoVM.Producto);
                }
                else
                {
                    _unidadTrabajo.Producto.Actualizar(productoVM.Producto);
                }
                _unidadTrabajo.Guardar();
                return(RedirectToAction(nameof(Index)));
            }
            else
            {
                productoVM.CategoriaLista = _unidadTrabajo.Categoria.ObtenerTodos().Select(c => new SelectListItem
                {
                    Text  = c.Nombre,
                    Value = c.Id.ToString()
                });
                productoVM.MarcaLista = _unidadTrabajo.Marca.ObtenerTodos().Select(c => new SelectListItem
                {
                    Text  = c.Nombre,
                    Value = c.Id.ToString()
                });

                productoVM.PadreLista = _unidadTrabajo.Producto.ObtenerTodos().Select(p => new SelectListItem
                {
                    Text  = p.Descripcion,
                    Value = p.Id.ToString()
                });

                if (productoVM.Producto.Id != 0)
                {
                    productoVM.Producto = _unidadTrabajo.Producto.Obtener(productoVM.Producto.Id);
                }
            }
            return(View(productoVM.Producto));
        }
Esempio n. 20
0
 /// <summary>
 /// Inicializa una nueva instancia de PageProducto.xaml
 /// </summary>
 public PageProducto()
 {
     UIGlobal.PageProducto = this;
     InitializeComponent();
     DataContext = new ProductoVM();
 }