public ActionResult Edit(int id, capitulolibro lib, List <string> GrupoAcademico, HttpPostedFileBase ffile)
 {
     try
     {
         microna2018Entities db = new microna2018Entities();
         var l = db.capitulolibro.Where(x => x.idCapituloLibro == id).FirstOrDefault();
         l.Nombre        = lib.Nombre;
         l.ISBN          = lib.ISBN;
         l.Autores       = lib.Autores;
         l.Participantes = lib.Participantes;
         l.Año           = lib.Año;
         var grupos_eliminar = db.capitulo_grupo.Where(x => x.id_capitulo == id).ToList();
         if (grupos_eliminar != null)
         {
             foreach (var G in grupos_eliminar)
             {
                 db.capitulo_grupo.Remove(G);
             }
         }
         if (GrupoAcademico != null)
         {
             foreach (var G in GrupoAcademico)
             {
                 db.capitulo_grupo.Add(new capitulo_grupo {
                     id_capitulo = id, id_grupo = int.Parse(G)
                 });
             }
         }
         if (ffile != null && ffile.ContentLength > 0)
         {
             if (l.archivo1 != null)
             {
                 var archivo = new archivo();
                 archivo = db.archivo.Where(x => x.idarchivo == l.Archivo).FirstOrDefault();
                 System.IO.File.Delete(l.archivo1.url);
                 db.archivo.Remove(archivo);
             }
             string dir = "~/Content/Archivos/Capitulos";
             if (!Directory.Exists(dir))
             {
                 DirectoryInfo di = Directory.CreateDirectory(Server.MapPath(dir));
             }
             string fileName = Path.GetFileName(ffile.FileName);
             string path     = Path.Combine(Server.MapPath(dir), DateTime.Now.ToString("yyyyMMddHHmmss") + "-" + fileName);
             ffile.SaveAs(path);
             archivo file = new archivo();
             file.Nombre = fileName;
             file.url    = path;
             db.archivo.Add(file);
             db.SaveChanges();
             l.Archivo = file.idarchivo;
         }
         db.SaveChanges();
         return(RedirectToAction("Index", new { response = 1 }));
     }
     catch
     {
         return(View());
     }
 }
        public ActionResult Create(capitulolibro lib, HttpPostedFileBase ffile, List <string> GrupoAcademico)
        {
            archivo file = null;

            try
            {
                string dir             = "~/Content/Archivos/Capitulos";
                string fileName        = "";
                string path            = "";
                microna2018Entities db = new microna2018Entities();
                if (!Directory.Exists(dir))
                {
                    DirectoryInfo di = Directory.CreateDirectory(Server.MapPath(dir));
                }
                if (ffile != null && ffile.ContentLength > 0)
                {
                    fileName = Path.GetFileName(ffile.FileName);
                    path     = Path.Combine(Server.MapPath(dir), DateTime.Now.ToString("yyyyMMddHHmmss") + "-" + fileName);
                    ffile.SaveAs(path);
                    file        = new archivo();
                    file.Nombre = fileName;
                    file.url    = path;
                    db.archivo.Add(file);
                    db.SaveChanges();
                }

                if (file != null)
                {
                    lib.Archivo = file.idarchivo;
                }
                lib.Usuario = int.Parse(Request.Cookies["userInfo"]["id"]);
                db.capitulolibro.Add(lib);
                if (GrupoAcademico != null)
                {
                    foreach (var s in GrupoAcademico)
                    {
                        capitulo_grupo ag = new capitulo_grupo
                        {
                            id_capitulo = lib.idCapituloLibro,
                            id_grupo    = int.Parse(s)
                        };
                        db.capitulo_grupo.Add(ag);
                    }
                }
                db.SaveChanges();
                return(RedirectToAction("Index", new { response = 1 }));
            }
            catch
            {
                return(RedirectToAction("Index", new { response = 2 }));
            }
        }
        public ActionResult Index(string Nombre, string Autores, string Lugar, int?Y1, int?Y2, string response, List <string> grupos, string Libro)
        {
            if (response != null)
            {
                ViewBag.response = int.Parse(response);
            }
            microna2018Entities db = new microna2018Entities();

            ViewBag.grupos = db.grupoacademico.ToList();
            List <capitulolibro> libros = db.capitulolibro.ToList();

            if (Nombre != null)
            {
                libros = libros.Where(x => x.Nombre.Contains(Nombre)).ToList();
            }
            if (Autores != null)
            {
                libros = libros.Where(x => x.Autores.Contains(Autores)).ToList();
            }
            if (Y1 != null)
            {
                //int year1 = int.Parse(Y1);
                libros = libros.Where(x => x.Año >= Y1).ToList();
            }
            if (Y2 != null)
            {
                libros = libros.Where(x => x.Año <= Y2).ToList();
            }
            if (Libro != null)
            {
                libros = libros.Where(x => x.Libro.Contains(Libro)).ToList();
            }
            if (grupos != null)
            {
                foreach (string s in grupos)
                {
                    int i = int.Parse(s);
                    var g = db.capitulo_grupo.Where(x => x.id_grupo == i).ToList();
                    List <capitulolibro> cg = new List <capitulolibro>();
                    foreach (var cap in g)
                    {
                        capitulolibro sample = db.capitulolibro.Where(x => x.idCapituloLibro == cap.id_capitulo).FirstOrDefault();
                        cg.Add(sample);
                    }
                    libros = libros.Where(x => cg.Contains(x)).ToList();
                }
            }
            return(View(libros));
        }
Exemple #4
0
        public bool editCapitulo(int id, capitulolibro cap, List <string> GrupoAcademico, List <string> Autores, archivo file)
        {
            var l = getCapituloById(id);

            l.Nombre        = cap.Nombre;
            l.ISBN          = cap.ISBN;
            l.Participantes = cap.Participantes;
            l.Año           = cap.Año;
            db.capitulo_usuario.RemoveRange(db.capitulo_usuario.Where(x => x.idCapitulo == id));
            db.capitulo_grupo.RemoveRange(db.capitulo_grupo.Where(x => x.id_capitulo == id));
            db.SaveChanges();
            if (Autores != null)
            {
                foreach (var G in Autores)
                {
                    db.capitulo_usuario.Add(new capitulo_usuario {
                        idCapitulo = id, idUsuario = int.Parse(G)
                    });
                }
            }
            if (GrupoAcademico != null)
            {
                foreach (var G in GrupoAcademico)
                {
                    db.capitulo_grupo.Add(new capitulo_grupo {
                        id_capitulo = id, id_grupo = int.Parse(G)
                    });
                }
            }
            if (file != null)
            {
                if (l.archivo1 != null)
                {
                    var archivo = new archivo();
                    archivo = db.archivo.Where(x => x.idarchivo == l.Archivo).FirstOrDefault();
                    System.IO.File.Delete(l.archivo1.url);
                    db.archivo.Remove(archivo);
                }
                db.archivo.Add(file);
                db.SaveChanges();
                l.Archivo = file.idarchivo;
            }
            db.SaveChanges();
            return(true);
        }
Exemple #5
0
        public ActionResult Create(capitulolibro lib, HttpPostedFileBase ffile, List <string> GrupoAcademico, List <string> Autores)
        {
            archivo file = null;

            if (!ModelState.IsValid)
            {
                ViewBag.grupo   = dt.getGrupos();
                ViewBag.autores = dt.getAutores();
                return(View(lib));
            }
            if (Autores.Count < 1)
            {
                ViewBag.grupo   = dt.getGrupos();
                ViewBag.autores = dt.getAutores();
                ModelState.AddModelError("Nombre", "El campo autores no puede ir vacio");
                return(View(lib));
            }
            try
            {
                string dir      = "~/Content/Archivos/Capitulos";
                string fileName = "";
                string path     = "";
                if (!Directory.Exists(dir))
                {
                    DirectoryInfo di = Directory.CreateDirectory(Server.MapPath(dir));
                }
                if (ffile != null && ffile.ContentLength > 0)
                {
                    fileName = Path.GetFileName(ffile.FileName);
                    path     = Path.Combine(Server.MapPath(dir), DateTime.Now.ToString("yyyyMMddHHmmss") + "-" + fileName);
                    ffile.SaveAs(path);
                    file        = new archivo();
                    file.Nombre = fileName;
                    file.url    = path;
                }
                lib.Usuario = int.Parse(Session["id"].ToString());
                dt.createCapitulo(lib, file, GrupoAcademico, Autores);
                return(RedirectToAction("Index", new { response = 1 }));
            }
            catch
            {
                return(RedirectToAction("Index", new { response = 2 }));
            }
        }
Exemple #6
0
 public ActionResult Edit(int id, capitulolibro lib, List <string> GrupoAcademico, HttpPostedFileBase ffile, List <string> Autores)
 {
     if (!ModelState.IsValid)
     {
         ViewBag.grupo   = dt.getGrupos();
         ViewBag.autores = dt.getAutores();
         return(View(lib));
     }
     if (Autores == null)
     {
         ViewBag.grupo   = dt.getGrupos();
         ViewBag.autores = dt.getAutores();
         ModelState.AddModelError("Nombre", "El campo autores no puede ir vacio");
         return(View(lib));
     }
     try
     {
         archivo file = null;
         if (ffile != null && ffile.ContentLength > 0)
         {
             string dir = "~/Content/Archivos/Capitulos";
             if (!Directory.Exists(dir))
             {
                 DirectoryInfo di = Directory.CreateDirectory(Server.MapPath(dir));
             }
             string fileName = Path.GetFileName(ffile.FileName);
             string path     = Path.Combine(Server.MapPath(dir), DateTime.Now.ToString("yyyyMMddHHmmss") + "-" + fileName);
             ffile.SaveAs(path);
             file        = new archivo();
             file.Nombre = fileName;
             file.url    = path;
         }
         dt.editCapitulo(id, lib, GrupoAcademico, Autores, file);
         return(RedirectToAction("Index", new { response = 1 }));
     }
     catch (Exception e)
     {
         return(Content(e + ""));
     }
 }
Exemple #7
0
 public bool createCapitulo(capitulolibro cap, archivo file, List <string> GrupoAcademico, List <string> Autores)
 {
     if (file != null)
     {
         db.archivo.Add(file);
         db.SaveChanges();
         cap.Archivo = file.idarchivo;
     }
     db.capitulolibro.Add(cap);
     db.SaveChanges();
     if (GrupoAcademico != null)
     {
         foreach (var s in GrupoAcademico)
         {
             capitulo_grupo ag = new capitulo_grupo
             {
                 id_capitulo = cap.idCapituloLibro,
                 id_grupo    = int.Parse(s)
             };
             db.capitulo_grupo.Add(ag);
         }
     }
     if (Autores != null)
     {
         foreach (var s in Autores)
         {
             capitulo_usuario lb = new capitulo_usuario
             {
                 idCapitulo = cap.idCapituloLibro,
                 idUsuario  = int.Parse(s)
             };
             db.capitulo_usuario.Add(lb);
         }
     }
     db.SaveChanges();
     return(true);
 }
Exemple #8
0
 public void removeCapitulo(capitulolibro c)
 {
     db.capitulolibro.Remove(c);
     db.SaveChanges();
 }