public bool MarcarCorreoComoLeidoBySistemaCorreoId(SistemaCorreo SistemaCorreo)
        {
            try
            {
                if (SistemaCorreo != null)
                {
                    if (SistemaCorreo.EstadoLectura == (byte)EnumEstadoLecturaCorreo.SinLeer && SistemaCorreo.DestinoId == (int)HttpContext.Current.Session["IdUsuarioTesis"])
                    {
                        SistemaCorreo.EstadoLectura = (byte)EnumEstadoLecturaCorreo.Leido;
                        SistemaCorreo.FechaLectura  = UtilitiesCommons.ObtenerHorayFechaActualLocal();

                        BD.Entry(SistemaCorreo).State = EntityState.Modified;
                        BD.SaveChanges();
                        ObtenerCorreosSinLeerByPersonaId();
                        return(true);
                    }
                }
                return(false);
            }
            catch (Exception error)
            {
                Bll_File.EscribirLog(error.ToString());
                return(false);
            }
        }
        public ActionResult LeerCorreo(string SistemaCorreoId)
        {
            //   Bll_Login.VerificarSesionActiva();
            Bll_SistemaDeCorreo Bll_SistemaDeCorreo = new Bll_SistemaDeCorreo();
            SistemaCorreo       SistemaCorreo       = Bll_SistemaDeCorreo.ObtenerCorreoBySistemaCorreoId(Int32.Parse(SistemaCorreoId));

            Bll_SistemaDeCorreo.MarcarCorreoComoLeidoBySistemaCorreoId(SistemaCorreo);

            return(View(SistemaCorreo));
        }
 public bool EnviarCorreo(SistemaCorreo SistemaCorreo)
 {
     try
     {
         SistemaCorreo.FechaEnvio  = UtilitiesCommons.ObtenerHorayFechaActualLocal();
         SistemaCorreo.RemitenteId = (int)HttpContext.Current.Session["IdUsuarioTesis"];
         BD.SistemaCorreo.Add(SistemaCorreo);
         BD.SaveChanges();
         return(true);
     }
     catch (Exception error)
     {
         Bll_File.EscribirLog(error.ToString());
         return(false);
     }
 }
        public SistemaCorreo ObtenerCorreoBySistemaCorreoId(int SistemaCorreoId)
        {
            SistemaCorreo SistemaCorreo = null;

            try
            {
                if (SistemaCorreoId > 0)
                {
                    SistemaCorreo = BD.SistemaCorreo.Find(SistemaCorreoId);
                }
                return(SistemaCorreo);
            }
            catch (Exception error)
            {
                Bll_File.EscribirLog(error.ToString());
                return(SistemaCorreo);
            }
        }
        public ActionResult EnviarCorreo(SistemaCorreo SistemaCorreo)
        {
            //   Bll_Login.VerificarSesionActiva();

            if (ModelState.IsValid)
            {
                Bll_SistemaDeCorreo Bll_SistemaDeCorreo = new Bll_SistemaDeCorreo();

                if (Bll_SistemaDeCorreo.EnviarCorreo(SistemaCorreo))
                {// pregunta si la funcion de creacion se ejecuto con exito
                    return(RedirectToAction("BandejaSalida"));
                }
                else
                {// no creado
                    return(View(SistemaCorreo));
                }
            }
            else
            {
                return(View(SistemaCorreo));
            }
        }