示例#1
0
        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"));
            }
        }
示例#2
0
        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"));
            }
        }