public bool Matricularse(int CursoId, string Nombre, string Codigo)
        {
            if (CursoId > 0 && Nombre.Length > 3 && Codigo.Length > 0)
            {// si el objeto es diferente de nulo
                try
                {
                    int EstudianteId = (int)HttpContext.Current.Session["IdUsuarioTesis"];

                    CursoEstudiante CursoEstudiante = new CursoEstudiante();

                    CursoEstudiante.CursoId         = CursoId;
                    CursoEstudiante.EstudianteId    = EstudianteId;
                    CursoEstudiante.FechaMatricula  = UtilitiesCommons.ObtenerHorayFechaActualLocal();
                    CursoEstudiante.AprobacionCurso = (byte)EnumAprobacionCurso.Cursando;
                    CursoEstudiante.EstadoEvaluacionCursoyDocente = (byte)EnumEstadoEvaluacionCursoyDocente.Pendiente;
                    CursoEstudiante.Nota1 = 0;
                    CursoEstudiante.Nota2 = 0;
                    CursoEstudiante.Nota3 = 0;

                    CursoEstudiante.Estado = (byte)EnumEstados.Activo;

                    BD.CursoEstudiante.Add(CursoEstudiante);
                    BD.SaveChanges();

                    HttpContext.Current.Session["CursosMatriculadosActivos"] = (int)HttpContext.Current.Session["CursosMatriculadosActivos"] + 1;

                    string Mesnaje =
                        $"Buen dia señor(a): { HttpContext.Current.Session["NombreUsuarioTesis"]}.\n" +
                        $"Se informa que su matricula en el curso [ {Nombre} ] con codigo: [ { Codigo} ], se ha realizado de manera exitosa. \n" +
                        $"Fecha Matricula: {UtilitiesCommons.ObtenerHorayFechaActualLocal()} \n " +
                        "Gracias por su pago, le deseamos exito en este nuevo curso. \n " +

                        "Despues de 24 horas, el curso estara disponible en su perfil. \n" +
                        "Feliz resto de dia.";

                    string    Email     = new Bll_Personas().GetEmailByPersonaId(EstudianteId);
                    Bll_Email Bll_Email = new Bll_Email();
                    Bll_Email.EnviarCorreo(Email, "Matricula Exitosa", Mesnaje);

                    return(true);
                }
                catch (Exception error)
                {
                    Bll_File.EscribirLog(error.ToString());
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Example #2
0
        // metodo que permite resgitar las excepciones en un archivo txt
        public static void EscribirLog(string log)
        {
            string ruta_logs = String.Format(@"" + ConfigurationManager.AppSettings.Get("Ruta_Logs"));// lee la propiedad ruta_logs del webconfig;

            if (!System.IO.File.Exists(ruta_logs))
            {
                if (!Directory.Exists(ruta_logs))
                {
                    Directory.CreateDirectory(ruta_logs);// se crea el directorio

                    // se crea el archivo
                    using (StreamWriter mylogs = System.IO.File.AppendText(ruta_logs + "LOGS_TESIS.txt")) //se crea el archivo
                    {
                        mylogs.Close();
                    }
                }
            }

            string Mesnaje = $"Se ha presentado el siguiente error en Cortec: \n\n" +
                             $"ERROR: {log} \n" +
                             $"Hora: {UtilitiesCommons.ObtenerHorayFechaActualLocal()} \n\n" +
                             $"Usuario en sesion: {HttpContext.Current.Session["NombreUsuarioTesis"]} \n";

            Bll_Email Bll_Email = new Bll_Email();

            Bll_Email.EnviarCorreo(ConfigurationManager.AppSettings.Get("EmailDestinoErrores"), "Error en sistema Cortec", Mesnaje);


            try
            {
                //Pass the filepath and filename to the StreamWriter Constructor
                StreamWriter sw = new StreamWriter(ruta_logs + "LOGS_TESIS.txt", true);

                //Write a line of text
                sw.WriteLine("\n");
                sw.WriteLine("-------------------------------------------------------------------------------------------------");
                sw.WriteLine("ERROR TESIS [ " + UtilitiesCommons.ObtenerHorayFechaActualLocal() + " ] : ");
                sw.WriteLine("\n");

                sw.WriteLine(log);

                sw.Close();
            }
            catch (Exception e)
            {
                // throw;
            }
        }
Example #3
0
        public bool GuardarParticipacionEnForoTema(int ForoTemaId, string Mensaje, string NombreDocente, string DocenteId, string Curso, string Tema)
        {
            if (ForoTemaId > 0 && Mensaje != null)
            {// si el objeto es diferente de nulo
                try
                {
                    ParticipacionEnForoTema ParticipacionEnForoTema = new ParticipacionEnForoTema();

                    ParticipacionEnForoTema.ParticipanteId = (int)HttpContext.Current.Session["IdUsuarioTesis"];
                    ParticipacionEnForoTema.ForoTemaId     = ForoTemaId;
                    ParticipacionEnForoTema.Mensaje        = Mensaje;
                    ParticipacionEnForoTema.FechaRegistro  = UtilitiesCommons.ObtenerHorayFechaActualLocal();

                    BD.ParticipacionEnForoTema.Add(ParticipacionEnForoTema);
                    BD.SaveChanges();

                    string Mesnaje =
                        $"Buen dia Docente: {NombreDocente}.\n\n" +
                        $"Se informa que se ha registrado una participacion en uno de los foros bajo su direccion, los datos son : \n\n" +
                        $"Nombre Curso: {Curso}\n" +
                        $"Nombre Participante: {HttpContext.Current.Session["NombreUsuarioTesis"]} \n" +
                        $"Tema Tratado: {Tema}\n" +
                        $"Hora de la participacion: {UtilitiesCommons.ObtenerHorayFechaActualLocal()}\n" +
                        $"Mensaje: {Mensaje}\n\n" +

                        "Feliz resto de dia. \n\n" +
                        "Nota: Este mensaje es enviado por el sistema de forma automatica, favor No responderlo.";

                    string    Email     = new Bll_Personas().GetEmailByPersonaId(Int32.Parse(DocenteId));
                    Bll_Email Bll_Email = new Bll_Email();
                    Bll_Email.EnviarCorreo(Email, "Nueva Participacion en foro", Mesnaje);

                    return(true);
                }
                catch (Exception error)
                {
                    Bll_File.EscribirLog(error.ToString());
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
Example #4
0
        public bool GuardarPersona(Personas Persona)
        {
            if (Persona != null)
            {// si el objeto es diferente de nulo
                try
                {
                    if (!ValidaEmailExiste(Persona.Email))
                    {
                        Bll_Codigo Bll_Codigo = new Bll_Codigo();
                        int        Codigo     = Bll_Codigo.ObtenerCodigo();

                        Persona.CodigoInstitucional = "Cod-" + Codigo;

                        Persona.Clave        = Persona.Clave.ComputeHash(HashType.SHA256);
                        Persona.FechaIngreso = UtilitiesCommons.ObtenerHorayFechaActualLocal().Date;
                        Persona.Estado       = (byte)EnumEstados.Activo;
                        Persona.RolAcademico = (byte)EnumRolAcademico.Estudiante;

                        // ----------- Aca se guarda la imagen por defecto de Usuario sin Foto  -----------
                        string       dataFile = HttpContext.Current.Server.MapPath("~/Imagenes/Sin Foto.jpg");
                        FileStream   foto     = new FileStream(dataFile, FileMode.OpenOrCreate, FileAccess.ReadWrite);
                        Byte[]       arreglo  = new Byte[foto.Length];
                        BinaryReader reader   = new BinaryReader(foto);
                        arreglo        = reader.ReadBytes(Convert.ToInt32(foto.Length));
                        Persona.Imagen = arreglo;
                        // ---------------------------------------------------------------------------------

                        BD.Personas.Add(Persona);
                        Bll_Codigo.GuardarCodigo(Codigo);
                        BD.SaveChanges();

                        AgregaRolAlaPersona(Persona.PersonaId, 3);// Toda nueva persona ingresa con Rol Estudiante

                        string Mesnaje = $"Buen dia señor(a): {Persona.NombreCompleto}." +
                                         "\n Se informa que su inscripcion fue realizada de manera exitosa en la plataforma TESIS. \n" +
                                         "Sus datos de acceso son : \n " +
                                         $"Usuario: {Persona.Email} \n" +
                                         $"Clave: ************  \n\n" +
                                         "Desde este momento puede disfrutar de nuestros cursos Online \n" +
                                         "Feliz resto de dia.";

                        Bll_Email Bll_Email = new Bll_Email();
                        Bll_Email.EnviarCorreo(Persona.Email, "Inscripcion Exitosa Tesis", Mesnaje);
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                catch (Exception error)
                {
                    Bll_File.EscribirLog(error.ToString());
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }