public ActionResult EditarBitacora(HttpPostedFileBase file, int id, string descripcion) { try { var Usuario = int.Parse(Session["Usuario"].ToString()); var Rol = int.Parse(Session["Rol"].ToString()); if (Rol == 2 || Rol == 4) { if (Rol == 2) { Bitacora_Aprendiz BitacoraAprendiz = db.Bitacora_Aprendiz.Find(id); Random rand = new Random((int)DateTime.Now.Ticks); int numIterations = 0; numIterations = rand.Next(1, 999); if (file != null && file.ContentLength > 0) { var tp = file.ContentType.ToString(); //Validar que el archivo sea word o dpf y que pese menos de 12mb if (tp.Equals("application/pdf")) { string archivoviejo = Path.Combine(Server.MapPath("~/Archivos/Bitacoras/Bitacoras_Aprendiz"), Path.GetFileName(BitacoraAprendiz.archivo)); System.IO.File.Delete(archivoviejo); string path = Path.Combine(Server.MapPath("~/Archivos/Bitacoras/Bitacoras_Aprendiz"), Path.GetFileName(Usuario + "-" + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy") + "-" + file.FileName)); file.SaveAs(path); BitacoraAprendiz.descripcion = descripcion; BitacoraAprendiz.archivo = Usuario + "-" + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy") + "-" + file.FileName; db.Entry(BitacoraAprendiz).State = EntityState.Modified;; db.SaveChanges(); TempData["Success"] = "Bitacora Modificada!"; return(RedirectToAction("IndexAP", "Bitacoras")); } else { TempData["Error"] = "El documento debe tener un formato PDF"; return(RedirectToAction("IndexAP", "Bitacoras")); } } else { BitacoraAprendiz.descripcion = descripcion; db.Entry(BitacoraAprendiz).State = EntityState.Modified;; db.SaveChanges(); TempData["Success"] = "Bitacora Modificada!"; return(RedirectToAction("IndexAP", "Bitacoras")); } } else { if (file != null && file.ContentLength > 0) { var tp = file.ContentType.ToString(); //Validar que el archivo sea word o dpf y que pese menos de 12mb if (tp.Equals("application/pdf")) { Bitacora_Asesor Bitacora_Asesor = db.Bitacora_Asesor.Find(id); Random rand = new Random((int)DateTime.Now.Ticks); int numIterations = 0; numIterations = rand.Next(1, 999); string archivoviejo = Path.Combine(Server.MapPath("~/Archivos/Bitacoras/Bitacoras_Asesor"), Path.GetFileName(Bitacora_Asesor.archivo)); System.IO.File.Delete(archivoviejo); string path = Path.Combine(Server.MapPath("~/Archivos/Bitacoras/Bitacoras_Asesor"), Path.GetFileName(Usuario + "-" + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy") + "-" + file.FileName)); file.SaveAs(path); Bitacora_Asesor.descripcion = descripcion; Bitacora_Asesor.archivo = Usuario + "-" + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy") + "-" + file.FileName; db.Entry(Bitacora_Asesor).State = EntityState.Modified;; db.SaveChanges(); TempData["Success"] = "Bitacora Modificada!"; return(RedirectToAction("IndexAP", "Bitacoras")); } else { TempData["Error"] = "El documento debe tener un formato PDF"; return(RedirectToAction("IndexAP", "Bitacoras")); } } else { Bitacora_Asesor Bitacora_Asesor = db.Bitacora_Asesor.Find(id); Bitacora_Asesor.descripcion = descripcion; db.Entry(Bitacora_Asesor).State = EntityState.Modified;; db.SaveChanges(); TempData["Success"] = "Bitacora Modificada!"; return(RedirectToAction("IndexAP", "Bitacoras")); } } } else { TempData["Error"] = "No tienes permisos para esta acción"; return(RedirectToAction("Dashboard", "Dashboard")); } } catch (Exception) { TempData["Error"] = "El documento debe tener un formato PDF"; return(RedirectToAction("IndexAP", "Bitacoras")); } }
public ActionResult Registrarbitacora(HttpPostedFileBase file, int id_bitacora, string descripcion) { try { var rol = int.Parse(Session["Rol"].ToString()); var usuario = int.Parse(Session["Usuario"].ToString()); if (rol == 3) { TempData["Error"] = "No tienes acceso a esta opcion"; return(RedirectToAction("Dashboard", "Dashboard")); } if (rol == 4) { Random rand = new Random((int)DateTime.Now.Ticks); int numIterations = 0; numIterations = rand.Next(1, 999); //Evalidar que el archivo sea anexado al formulario y pese más de 0kb if (file != null && file.ContentLength > 0) { var tp = file.ContentType.ToString(); //Validar que el archivo sea word o dpf y que pese menos de 12mb if (tp.Equals("application/pdf")) { //en caso de existir el archivo se guarda la ruta y el nombre del archivo es agregado a la base de datos string path = Path.Combine(Server.MapPath("~/Archivos/Bitacoras/Bitacoras_Asesor"), Path.GetFileName(usuario + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy-hh-mm") + "-" + file.FileName)); file.SaveAs(path); Bitacora_Asesor bitacora = new Bitacora_Asesor(); bitacora.archivo = usuario + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy-hh-mm") + "-" + file.FileName; bitacora.fecha_creacion = DateTime.Now; bitacora.id_bitacora = id_bitacora; bitacora.id_asesor = usuario; bitacora.descripcion = descripcion; db.Bitacora_Asesor.Add(bitacora); db.SaveChanges(); TempData["Success"] = "La bitacora fue agregada exitosamente!"; return(RedirectToAction("IndexAsesor", "Proyectos")); } else { TempData["Error"] = "El documento debe tener un formato PDF"; return(RedirectToAction("IndexAsesor", "Proyectos")); } } else { TempData["Error"] = "Debes cargar un archivo"; return(RedirectToAction("IndexAsesor", "Proyectos")); } } else if (rol == 2) { Random rand = new Random((int)DateTime.Now.Ticks); int numIterations = 0; numIterations = rand.Next(1, 999); //Evalidar que el archivo sea anexado al formulario y pese más de 0kb if (file != null && file.ContentLength > 0) { var tp = file.ContentType.ToString(); //Validar que el archivo sea word o dpf y que pese menos de 12mb if (tp.Equals("application/pdf")) { //en caso de existir el archivo se guarda la ruta y el nombre del archivo es agregado a la base de datos string path = Path.Combine(Server.MapPath("~/Archivos/Bitacoras/Bitacoras_Aprendiz"), Path.GetFileName(usuario + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy-hh-mm") + "-" + file.FileName)); file.SaveAs(path); Bitacora_Aprendiz bitacora = new Bitacora_Aprendiz(); bitacora.archivo = usuario + numIterations + "-" + DateTime.Now.ToString("dd-MM-yy-hh-mm") + "-" + file.FileName; bitacora.fecha_creacion = DateTime.Now; bitacora.id_bitacora = id_bitacora; bitacora.id_aprendiz = usuario; bitacora.descripcion = descripcion; db.Bitacora_Aprendiz.Add(bitacora); db.SaveChanges(); TempData["Success"] = "La bitacora fue agregada exitosamente!"; return(RedirectToAction("IndexAprendiz", "Proyectos")); } else { TempData["Error"] = "El documento debe tener un formato PDF"; return(RedirectToAction("IndexAprendiz", "Proyectos")); } } else { //En caso contrario el proyecto es guardado sin archivo Bitacora_Aprendiz bitacoras = new Bitacora_Aprendiz(); bitacoras.archivo = null; bitacoras.fecha_creacion = DateTime.Now; bitacoras.id_bitacora = id_bitacora; bitacoras.id_aprendiz = usuario; bitacoras.descripcion = descripcion; db.Bitacora_Aprendiz.Add(bitacoras); db.SaveChanges(); TempData["Success"] = "La bitacora fue agregada exitosamente!"; return(RedirectToAction("IndexAprendiz", "Proyectos")); } } else { TempData["Error"] = "No tienes acceso a esta opcion"; return(RedirectToAction("Dashboard", "Dashboard")); } } catch (Exception err) { return(RedirectToAction("Dashboard", "Dashboard")); } }