public ActionResult Accion_Actualizar(IEnumerable <HttpPostedFileBase> files, string Accion, int IdTecnologia, string NombreTecnologia, FormCollection Formulario)
        {
            CatUsuarios       Usuario          = (CatUsuarios)Session["Usuario"];
            LogicaTecnologias LogicaTecnologia = new LogicaTecnologias();
            MetodosGenerales  MetodoGeneral    = new MetodosGenerales();
            string            Validacion       = "";
            CatTecnologias    Tecnologia       = new CatTecnologias();

            Tecnologia.Tecnologia = NombreTecnologia;

            if (Usuario != null && Usuario.U_IdUsuario > 0 && Usuario.U_IdTipoUsuario == 4)
            {
                try
                {
                    //int IdTecnologia = Convert.ToInt32(Formulario[1]);
                    if (LogicaTecnologia.L_ActualizarTecnologia(Tecnologia))
                    {
                        LogicaTecnologia.L_PrepararActualizacionTecnologia(IdTecnologia);
                        try
                        {
                            foreach (var item in Formulario)
                            {
                                string[] Cadena = (item.ToString()).Split('/');

                                if (Cadena[0] == "Pregunta")
                                {
                                    LogicaTecnologia.L_ActualizarTecnologiaPregunta(IdTecnologia, Cadena[1]);
                                }
                                if (Cadena[0] == "Tramite")
                                {
                                    string IdFase = Cadena[3].Substring(0, 1);
                                    LogicaTecnologia.L_ActualizarTecnologiaTramite(IdTecnologia, Convert.ToInt32(IdFase), Convert.ToInt32(Cadena[1]), Convert.ToInt32(Cadena[3]));
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            TempData["notice"]    = "Ha ocurrido un error durante la carga de datos";
                            Session["TipoAlerta"] = "Error";
                            return(RedirectToAction("Insertar"));
                        }

                        try
                        {
                            int n_archivo = 0;
                            foreach (string fileName in Request.Files)
                            {
                                HttpPostedFileBase file          = Request.Files[n_archivo];
                                string             ext           = Path.GetExtension(file.FileName);
                                string             PathRaiz      = Server.MapPath("~");
                                string             NombreArchivo = file.FileName.ToLower();
                                if (NombreArchivo.Contains("diagrama"))
                                {
                                    string path = PathRaiz + "Content\\Imagenes\\MapasDeProceso\\" + Tecnologia.Tecnologia + ext;
                                    file.SaveAs(path);
                                }
                                if (NombreArchivo.Contains("plantilla"))
                                {
                                    string path = PathRaiz + "Content\\Imagenes\\MapasDeProceso\\" + Tecnologia.Tecnologia + ext;
                                    file.SaveAs(path);
                                }

                                n_archivo++;
                            }
                        }
                        catch (Exception ex)
                        {
                            TempData["notice"]    = "No se pudieron agregar las imágenes, verifica la información y da click en el botón 'Actualizar' para realizar los cambios a la tecnología";
                            Session["TipoAlerta"] = "Precaución";
                            return(RedirectToAction("Insertar"));
                        }
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        TempData["notice"]    = "El proyecto no ha sido actualizado, por favor revise la información";
                        Session["TipoAlerta"] = "Error";
                        return(RedirectToAction("Insertar"));
                    }
                }
                catch (Exception ex)
                {
                    TempData["notice"]    = "Lo sentimos, ha ocurrido un error.";
                    Session["TipoAlerta"] = "Error";
                    return(RedirectToAction("Insertar"));
                }
            }
            else
            {
                return(RedirectToAction("Logout", "Home"));
            }
        }
        public ActionResult Accion_Insertar(IEnumerable <HttpPostedFileBase> files, string Accion, FormCollection Formulario)
        {
            CatUsuarios       Usuario          = (CatUsuarios)Session["Usuario"];
            LogicaTecnologias LogicaTecnologia = new LogicaTecnologias();
            MetodosGenerales  MetodoGeneral    = new MetodosGenerales();
            string            Validacion       = "";
            CatTecnologias    Tecnologia       = new CatTecnologias();

            Tecnologia.Tecnologia = Formulario[1].ToString();

            if (Usuario != null && Usuario.U_IdUsuario > 0 && Usuario.U_IdTipoUsuario == 4)
            {
                try
                {
                    int IdTecnologia = LogicaTecnologia.L_InsertarTecnologia(Tecnologia);
                    if (IdTecnologia > 0)
                    {
                        try
                        {
                            foreach (var item in Formulario)
                            {
                                string[] Cadena = (item.ToString()).Split('/');
                                if (Cadena[0] == "Pregunta")
                                {
                                    LogicaTecnologia.L_InsertarTecnologiaPregunta(IdTecnologia, Cadena[1]);
                                }
                                if (Cadena[0] == "Tramite")
                                {
                                    string IdFase = Cadena[3].Substring(0, 1);
                                    LogicaTecnologia.L_InsertarTecnologiaTramite(IdTecnologia, Convert.ToInt32(IdFase), Convert.ToInt32(Cadena[1]), Convert.ToInt32(Cadena[3]));
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            TempData["notice"]    = "Ha ocurrido un error durante la carga de datos";
                            Session["TipoAlerta"] = "Error";
                            return(RedirectToAction("Insertar"));
                        }

                        try
                        {
                            foreach (var item in Formulario)
                            {
                                string[] Cadena = (item.ToString()).Split('/');

                                if (Cadena[0] == "Pregunta")
                                {
                                    LogicaTecnologia.L_ActualizarTecnologiaPregunta(IdTecnologia, Cadena[1]);
                                }
                                if (Cadena[0] == "Tramite")
                                {
                                    string IdFase = Cadena[3].Substring(0, 1);
                                    LogicaTecnologia.L_ActualizarTecnologiaTramite(IdTecnologia, Convert.ToInt32(IdFase), Convert.ToInt32(Cadena[1]), Convert.ToInt32(Cadena[3]));
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            TempData["notice"]    = "No se pudieron agregar las imágenes, verifica la información y da click en el botón 'Actualizar' para realizar los cambios a la tecnología";
                            Session["TipoAlerta"] = "Precaución";
                            return(RedirectToAction("Insertar"));
                        }
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        TempData["notice"]    = "El proyecto no ha sido actualizado, por favor revise la información";
                        Session["TipoAlerta"] = "Error";
                        return(RedirectToAction("Insertar"));
                    }
                }
                catch (Exception ex)
                {
                    TempData["notice"]    = "Lo sentimos, ha ocurrido un error.";
                    Session["TipoAlerta"] = "Error";
                    return(RedirectToAction("Insertar"));
                }
            }
            else
            {
                return(RedirectToAction("Logout", "Home"));
            }
        }