public ActionResult Informar(int id)
        {
            try
            {
                var biz        = new ReposicionProcess();
                var Reposicion = biz.GetByID(id);
                Reposicion.Estado = "Confirmado-P";
                biz.Edit(Reposicion);

                var stockmateriaprimaP = new StockMateriaPrimaDepositoProcess();
                var stockmateriaprima  = new StockMateriaPrimaDeposito();
                var listastock         = stockmateriaprimaP.Listar();
                var proveedorP         = new ProveedorProcess();

                Reposicion.Proveedor.Cantidaddeerrores = Reposicion.Proveedor.Cantidaddeerrores + 1;
                proveedorP.Edit(Reposicion.Proveedor);

                foreach (var item in listastock)
                {
                    if (item.CodMateriaPrima == Reposicion.CodMateriaPrima)
                    {
                        item.Cantidad = item.Cantidad + Reposicion.Cantidad;
                        stockmateriaprimaP.Edit(item);
                        Bitacora        bitacora  = new Bitacora("Informar", "Tabla Reposicion", User.Identity.Name, DateTime.Now);
                        BitacoraProcess bitacorap = new BitacoraProcess();
                        bitacorap.Create(bitacora);
                    }
                }
                if (stockmateriaprimaP.Listar().Count() == 0)
                {
                    stockmateriaprima.CodDeposito     = Reposicion.CodDeposito;
                    stockmateriaprima.CodMateriaPrima = Reposicion.CodMateriaPrima;
                    stockmateriaprima.Cantidad        = Reposicion.Cantidad;
                    stockmateriaprimaP.Crear(stockmateriaprima);
                    Bitacora        bitacora  = new Bitacora("Informar", "Tabla Reposicion", User.Identity.Name, DateTime.Now);
                    BitacoraProcess bitacorap = new BitacoraProcess();
                    bitacorap.Create(bitacora);
                }


                TempData["Message"] = Recursos.Recurso.reposicion3;


                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                Bitacora        bitacora  = new Bitacora("Informar Tabla Reposicion", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);
                return(View());
            }
        }
        // GET: MateriaPrimaProveedor/Create
        public ActionResult Create(int id)
        {
            try
            {
                var materiaprimaP     = new MateriaPrimaProcess();
                var listamateriaprima = new List <MateriaPrima>();
                listamateriaprima.Add(materiaprimaP.GetByID(id));

                var proveedorP     = new ProveedorProcess();
                var proveedorlista = new List <Proveedor>();

                foreach (var item in proveedorP.Listar())
                {
                    if (item.Estado == "Activo")
                    {
                        proveedorlista.Add(item);
                    }
                }

                var materiaprimaproveedor = new MateriaPrimaProveedorProcess();
                foreach (var itemP in proveedorP.Listar())
                {
                    foreach (var item in materiaprimaproveedor.Listarpormateriaprima(id))
                    {
                        if (item.CodMateriaPrima == id)
                        {
                            if (itemP.Id == item.CodProveedor)
                            {
                                proveedorlista.RemoveAll(x => x.Id == itemP.Id);
                            }
                            else
                            {
                            }
                        }
                    }
                }

                ViewBag.Codproveedor    = new SelectList(proveedorlista, "Id", "Nombre");
                ViewBag.Codmateriaprima = new SelectList(listamateriaprima, "Id", "Nombre");
                return(View());
            }
            catch (Exception ex)
            {
                Bitacora        bitacora  = new Bitacora("Crear Tabla Materia Prima Proveedor", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);
                return(View());
            }
        }
 // GET: Proveedor/Edit/5
 public ActionResult Edit(int id)
 {
     try
     {
         var biz       = new ProveedorProcess();
         var Proveedor = biz.GetByID(id);
         return(View(Proveedor));
     }
     catch (Exception ex)
     {
         Bitacora        bitacora  = new Bitacora("Editar Tabla Proveedor", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
         BitacoraProcess bitacorap = new BitacoraProcess();
         bitacorap.Create(bitacora);
         return(View());
     }
 }
        public ActionResult Edit(Proveedor proveedor)
        {
            try
            {
                var biz = new ProveedorProcess();
                proveedor.Estado = "Activo";
                biz.Edit(proveedor);

                Bitacora        bitacora  = new Bitacora("Editar", "Tabla Proveedor", User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                Bitacora        bitacora  = new Bitacora("Editar Tabla Proveedor", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);
                return(View());
            }
        }
 // GET: Proveedor
 public ActionResult Index()
 {
     try
     {
         var biz       = new ProveedorProcess();
         var Proveedor = new List <Proveedor>();
         foreach (var item in biz.Listar())
         {
             if (item.Estado == "Activo")
             {
                 Proveedor.Add(item);
             }
         }
         return(View(Proveedor));
     }
     catch (Exception ex)
     {
         Bitacora        bitacora  = new Bitacora("Listar Tabla Proveedor", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
         BitacoraProcess bitacorap = new BitacoraProcess();
         bitacorap.Create(bitacora);
         return(View());
     }
 }
        // GET: Reposicion/Create
        public ActionResult Create(int id)
        {
            try
            {
                var materiaprimaP = new MateriaPrimaProcess();
                var mat           = new List <MateriaPrima>();
                mat.Add(materiaprimaP.GetByID(id));

                var ProveedorP     = new ProveedorProcess();
                var proveedorlista = new List <Proveedor>();


                var ProveedormateriaprimaP        = new MateriaPrimaProveedorProcess();
                var listaproveedorpormateriaprima = ProveedormateriaprimaP.Listarpormateriaprima(id);

                foreach (var item in listaproveedorpormateriaprima)
                {
                    proveedorlista.Add(ProveedorP.GetByID(item.CodProveedor));
                }

                var depositoP       = new DepositoProcess();
                var depositolistado = depositoP.Listar();

                ViewBag.Codmateriaprima = new SelectList(mat, "Id", "Nombre");
                ViewBag.Codproveedor    = new SelectList(proveedorlista, "Id", "Nombre");
                ViewBag.Coddeposito     = new SelectList(depositolistado, "Id", "Detalle");

                return(View());
            }
            catch (Exception ex)
            {
                Bitacora        bitacora  = new Bitacora("Crear Tabla Reposicion", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);
                return(View());
            }
        }
        public ActionResult Create(Proveedor Proveedor)
        {
            try
            {
                // TODO: Add insert logic here
                var biz = new ProveedorProcess();
                Proveedor.Cantidaddeerrores = 0;
                Proveedor.Estado            = "Activo";
                biz.Crear(Proveedor);

                Bitacora        bitacora  = new Bitacora("Crear", "Tabla Proveedor", User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);

                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                Bitacora        bitacora  = new Bitacora("Crear Tabla Proveedor", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);
                return(View());
            }
        }
        public ActionResult Actualizar()
        {
            try
            {
                var biz = new ProductoProcess();


                if (biz.ListarAPI().Count() != 0)
                {
                    var Producto = biz.ListarAPI();

                    var proveedorlista         = new List <Proveedor>();
                    var ProveedormateriaprimaP = new MateriaPrimaProveedorProcess();

                    var materiaprimaproducto = new MateriaPrimaProductoProcess();
                    var proveedorp           = new ProveedorProcess();
                    int contadorP            = 0;



                    foreach (var itemP in Producto)
                    {
                        itemP.Precio = 0;
                        itemP.Estado = "No Disponible";
                        itemP.DVH    = Decopack.Servicios.Seguridad.GenerarSHA(string.Format("{0}{1}{2}{3}", itemP.Nombre, itemP.Precio, itemP.Estado, itemP.Descripcion));

                        foreach (var itemM in materiaprimaproducto.Listar())
                        {
                            if (itemM.CodProducto == itemP.Id)
                            {
                                contadorP = 0;
                                foreach (var item in ProveedormateriaprimaP.Listarpormateriaprima(itemM.CodMateriaPrima))
                                {
                                    foreach (var itemPROV in proveedorp.Listar())
                                    {
                                        if (itemPROV.Id == item.CodProveedor)
                                        {
                                            if (itemPROV.Estado == "Activo")
                                            {
                                                if (contadorP == 0)
                                                {
                                                    itemP.Precio = (item.Precio * itemM.Cantidad) + itemP.Precio;
                                                    itemP.Estado = "Disponible";
                                                    itemP.DVH    = Decopack.Servicios.Seguridad.GenerarSHA(string.Format("{0}{1}{2}{3}", itemP.Nombre, itemP.Precio, itemP.Estado, itemP.Descripcion));
                                                    biz.Edit(itemP);
                                                    contadorP = 1;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        if (itemP.Precio == 0)
                        {
                            biz.Edit(itemP);
                        }
                    }

                    var productoDVVP = new ProductoDVVProcess();
                    var productoDVV  = new ProductoDVV();



                    foreach (var item in biz.ListarAPI())
                    {
                        cadena = string.Format(cadena + "{0}", item.DVH);
                    }

                    productoDVV.DVV = Decopack.Servicios.Seguridad.GenerarSHA(cadena);

                    foreach (var item in productoDVVP.Listar())
                    {
                        if (item.Entidad == "Producto")
                        {
                            productoDVV.Id      = item.Id;
                            productoDVV.Entidad = item.Entidad;
                            productoDVVP.Editar(productoDVV);
                        }
                        else
                        {
                            productoDVVP.Crear(productoDVV);
                        }
                    }
                }

                Bitacora        bitacora  = new Bitacora("Tabla Producto", "Actualizar Precio", User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);


                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                Bitacora        bitacora  = new Bitacora("Actualizar Precio Tabla Producto", ex.Message.ToString(), User.Identity.Name, DateTime.Now);
                BitacoraProcess bitacorap = new BitacoraProcess();
                bitacorap.Create(bitacora);
                return(View());
            }
        }