Beispiel #1
0
    protected bool Carga_Datos(int idusuario)
    {
        iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
        iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

        oBE.idusuario = idusuario;

        try
        {
            dtDatos = oBL.Consultar(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return(false);
        }
    }
Beispiel #2
0
    protected bool Carga_Datos()
    {
        iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
        iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

        try
        {
            oBE.idusuario = int.Parse(Session["id"].ToString());

            dtDatos = oBL.Consultar(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return(false);
        }
    }
Beispiel #3
0
    protected void BtnFiltrar_Click(object sender, EventArgs e)
    {
        try
        {
            gvDatos.DataSource = null;
            gvDatos.DataBind();

            iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
            iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

            oBE.idusuariotipo = 4;
            oBE.idcarrera     = DdlCarrera.SelectedIndex;
            oBE.idperiodo     = DdlPeriodo.SelectedIndex;
            oBE.idmateria     = ddlMateria.SelectedIndex;
            if (ddlGrupo.SelectedIndex > 0)
            {
                oBE.grupo = ddlGrupo.SelectedItem.ToString();
            }

            dtDatos = oBL.Filtrar(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                gvDatos.DataSource = dtDatos;
                gvDatos.DataBind();
                return;
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #4
0
    // Usuarios
    protected void Carga_Usuarios()
    {
        ddlUsuario.Items.Clear();

        iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
        iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

        try
        {
            oBE.idusuario     = 0;
            oBE.idusuariotipo = ddlUsuarioTipo.SelectedIndex;

            dtUsuario = oBL.Consultar(oBE);

            if (dtUsuario.Rows.Count > 0)
            {
                ddlUsuario.DataTextField  = "nombre";
                ddlUsuario.DataValueField = "idusuario";
                ddlUsuario.DataSource     = dtUsuario;
                ddlUsuario.DataBind();

                ddlUsuario.Items.Insert(0, new ListItem("Selecciona", "0"));
            }

            return;
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #5
0
    protected void Carga_Catalogos()
    {
        iCom_BusinessEntity.Usuario       oBE = new iCom_BusinessEntity.Usuario();
        iCom_BusinessLogic.PeriodoEscolar oBL = new iCom_BusinessLogic.PeriodoEscolar();

        oBE.idusuario = int.Parse(Session["id"].ToString());

        try
        {
            dtDatos = oBL.ConsultarAlumno(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                DdlPeriodo.DataSource     = dtDatos;
                DdlPeriodo.DataTextField  = "periodoescolar";
                DdlPeriodo.DataValueField = "idperiodoescolar";
                DdlPeriodo.DataBind();
                DdlPeriodo.Focus();
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #6
0
    // Usuario
    protected bool Carga_Usuario(int idusuario)
    {
        iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
        iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

        oBE.idusuario = idusuario;

        try
        {
            dtUsuario = oBL.Consultar(oBE);

            if (dtUsuario.Rows.Count > 0)
            {
                ddlUsuario.SelectedIndex = int.Parse(dtUsuario.Rows[0]["idusuario"].ToString());
                return(true);
            }
            else
            {
                return(false);
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return(false);
        }
    }
Beispiel #7
0
    protected void Carga_Datos()
    {
        iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
        iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

        oBE.idusuario     = 0;
        oBE.idusuariotipo = 3;

        try
        {
            dtDatos = oBL.Consultar(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                gvDatos.DataSource = dtDatos;
                gvDatos.DataBind();
                return;
            }
            else
            {
                return;
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #8
0
    protected void btnFiltrar_Click(object sender, EventArgs e)
    {
        try
        {
            iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
            iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

            oBE.idusuariotipo = 4;
            oBE.idcarrera     = DdlCarrera.SelectedIndex;
            oBE.idperiodo     = DdlPeriodo.SelectedIndex;

            dtDatos = oBL.Filtrar(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                GvDatos.DataSource = dtDatos;
                GvDatos.DataBind();
                return;
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #9
0
    protected bool Carga_Datos()
    {
        iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
        iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

        oBE.idusuario     = 0;
        oBE.idusuariotipo = 3;

        try
        {
            dtDatos = oBL.Consultar(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                return(true);
            }
            else
            {
                // lblError.Text = "Usuario o Contrasena no validos";
                return(false);
            }
        }
        catch (Exception ex)
        {
            Log._Log(Convert.ToInt32(Session["id"]), "Login", ex.Message);
            ClientScript.RegisterClientScriptBlock(typeof(Page), "Error", "alert('" + ex.Message + "')", true);
            return(false);
        }
    }
Beispiel #10
0
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        try
        {
            if (Carga_Datos())
            {
                // Contraseña actual
                if (dtDatos.Rows[0]["contrasena"].ToString() == txtActual.Text)
                {
                    if (txtNueva.Text.Trim() == "")
                    {
                        ResgitraLog("Contraseña no puede ir vacio.");
                        txtNueva.Focus();
                        return;
                    }

                    if (txtConfirma.Text.Trim() == "")
                    {
                        ResgitraLog("Contraseña no puede ir vacio.");
                        txtConfirma.Focus();
                        return;
                    }

                    if (txtNueva.Text == txtConfirma.Text)
                    {
                        iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
                        iCom_BusinessLogic.Usuario  oBL = new iCom_BusinessLogic.Usuario();

                        oBE.idusuario     = int.Parse(dtDatos.Rows[0]["idusuario"].ToString());
                        oBE.usuario       = dtDatos.Rows[0]["usuario"].ToString();
                        oBE.contrasena    = txtNueva.Text;
                        oBE.idusuariotipo = int.Parse(dtDatos.Rows[0]["idusuariotipo"].ToString());
                        oBE.activo        = true;

                        dtDatos = oBL.Actualizar(oBE);

                        ResgitraLog("Datos guardados.");
                        return;
                    }
                    else
                    {
                        ResgitraLog("Contraseñas no coinciden.");
                        return;
                    }
                }
                else
                {
                    ResgitraLog("Contraseña actual no coincide.");
                    return;
                }
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #11
0
    // Catalogos
    protected void Carga_Catalogos()
    {
        try
        {
            // Usuario
            iCom_BusinessEntity.Usuario oBEU = new iCom_BusinessEntity.Usuario();
            iCom_BusinessLogic.Usuario  oBLU = new iCom_BusinessLogic.Usuario();

            oBEU.idusuario = int.Parse(Application["idusuario"].ToString());

            dtDatos = oBLU.Consultar(oBEU);

            if (dtDatos.Rows.Count == 0)
            {
                return;
            }

            // Carrera
            lblCarrera.Text = dtDatos.Rows[0]["carrera"].ToString();

            // Materias
            gvDatos.DataSource = null;
            gvDatos.DataBind();

            iCom_BusinessEntity.UsuarioCurso oBE = new iCom_BusinessEntity.UsuarioCurso();
            iCom_BusinessLogic.UsuarioCurso  oBL = new iCom_BusinessLogic.UsuarioCurso();

            oBE.idusuario = int.Parse(Application["idusuario"].ToString());

            dtDatos = oBL.Consultar(oBE);

            if (dtDatos.Rows.Count > 0)
            {
                // Curso
                lblCurso.Text = dtDatos.Rows[0]["curso"].ToString();

                gvDatos.DataSource = dtDatos;
                gvDatos.DataBind();
                return;
            }
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #12
0
    // Guardar
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        // Validar
        if (bGuarda == false)
        {
            ResgitraLog("El formulario ya ha sido enviado.");
            return;
        }

        if (!Valida())
        {
            return;
        }

        // Valida Archivos
        if (Request.Files[0].ContentLength == 0)
        {
            ResgitraLog("Para poder realizar tu inscripción es necesario que nos envíes tu documentación.");
            return;
        }

        foreach (HttpPostedFile postedFile in FileUpload.PostedFiles)
        {
            // Tamaño
            string fileName  = Path.GetFileName(postedFile.FileName);
            int    iFileSize = postedFile.ContentLength;

            if (iFileSize > 1048576)  // 1MB
            {
                ResgitraLog("El archivo " + postedFile.FileName + " es demasiado grande. Max 1 MB por archivo.");
                return;
            }

            Regex reg = new Regex(@"^.*\.(pdf|PDF)$");
            if (!reg.IsMatch(fileName))
            {
                ResgitraLog("Solo puedes eniviar archivos con formato PDF.");
                return;
            }
        }

        // Creo el nuevo usuario
        int idusuario = 0;

        iCom_BusinessLogic.Usuario oBLUsuario = new iCom_BusinessLogic.Usuario();

        // Obtengo el id
        try
        {
            dtDatos = oBLUsuario.IdUsuario();

            if (dtDatos.Rows.Count > 0)
            {
                idusuario = int.Parse(dtDatos.Rows[0]["idusuario"].ToString());
            }
            else
            {
                ResgitraLog("No se obtuvo el ID");
                return;
            }

            // Carpeta por alumno
            string dirAlumno = Server.MapPath("~/Cargas/") + idusuario.ToString();

            if (!Directory.Exists(dirAlumno))
            {
                Directory.CreateDirectory(dirAlumno);
            }

            foreach (HttpPostedFile postedFile in FileUpload.PostedFiles)
            {
                // Tamaño
                string fileName = Path.GetFileName(postedFile.FileName);

                fileName = idusuario.ToString() + "-" + fileName;
                postedFile.SaveAs(dirAlumno + "//" + fileName);
            }

            // Alta de Usuario
            iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
            oBE.usuario = "al" + DateTime.Now.Year.ToString() + idusuario.ToString();

            // Paswword
            oBE.contrasena = string.Format("{0:00}", Convert.ToInt32(ddlDia.SelectedItem.ToString())) +
                             string.Format("{0:00}", Convert.ToInt32(ddlMes.SelectedItem.ToString())) +
                             txtAnio.Text;

            oBE.idusuariotipo = 4;

            dtDatos = oBLUsuario.Insertar(oBE);

            // Datos generales
            iCom_BusinessEntity.UsuarioDatosGenerales oBEDG = new iCom_BusinessEntity.UsuarioDatosGenerales();

            oBEDG.idusuario         = idusuario;
            oBEDG.nombre            = txtNombre.Text;
            oBEDG.appaterno         = txtApPaterno.Text;
            oBEDG.apmaterno         = txtApMaterno.Text;
            oBEDG.idmodeloeducativo = 1;
            oBEDG.idperiodoescolar  = ddlPeriodo.SelectedIndex;
            oBEDG.matricula         = "al" + DateTime.Now.Year.ToString() + idusuario.ToString();
            oBEDG.idcarrera         = ddlCarrera.SelectedIndex;

            // Revisar
            string   sFecha = txtAnio.Text + "-" + ddlMes.SelectedItem.ToString() + "-" + ddlDia.SelectedItem.ToString();
            DateTime fecha  = Convert.ToDateTime(sFecha + " 00:00:00.000", CultureInfo.InvariantCulture);
            oBEDG.fechanacimiento = fecha;

            oBEDG.nacionalidad       = txtNacionalidad.Text;
            oBEDG.telefono           = txtTelContacto.Text;
            oBEDG.email              = txtCorreo.Text;
            oBEDG.idsexo             = int.Parse(rblSexo.SelectedValue.ToString());
            oBEDG.idestadocivil      = int.Parse(rblEdoCivil.SelectedValue.ToString());
            oBEDG.curp               = txtCURP.Text;
            oBEDG.escuelaprocedencia = txtEscuelaProcedencia.Text;

            iCom_BusinessLogic.UsuarioDatosGenerales oBLUG = new iCom_BusinessLogic.UsuarioDatosGenerales();
            dtDatos = oBLUG.Insertar(oBEDG);

            // Datos Direccion
            iCom_BusinessEntity.UsuarioDireccion oBEDir = new iCom_BusinessEntity.UsuarioDireccion();

            oBEDir.idusuario       = idusuario;
            oBEDir.idusuariopadres = 0;
            oBEDir.calle           = txtCalle.Text;
            oBEDir.numeroexterior  = txtNumero.Text;
            oBEDir.numerointerior  = txtNumeroInt.Text;
            oBEDir.colonia         = txtColonia.Text;
            oBEDir.codigopostal    = txtCP.Text;
            oBEDir.idciudad        = int.Parse(ddlCiudad.SelectedValue.ToString());
            oBEDir.idestado        = ddlEstado.SelectedIndex;
            oBEDir.idpais          = ddlPais.SelectedIndex;

            iCom_BusinessLogic.UsuarioDireccion oBLDir = new iCom_BusinessLogic.UsuarioDireccion();
            dtDatos = oBLDir.Insertar(oBEDir);

            // Laboral
            iCom_BusinessEntity.UsuarioLaboral oBEL = new iCom_BusinessEntity.UsuarioLaboral();

            oBEL.idusuario     = idusuario;
            oBEL.labora        = false;
            oBEL.nombreempresa = string.Empty;
            oBEL.puesto        = string.Empty;
            oBEL.dias          = string.Empty;
            //oBEL.horariodesde = null;
            //oBEL.horariohasta = null;
            oBEL.telefono            = string.Empty;
            oBEL.descripciondoncente = string.Empty;

            iCom_BusinessLogic.UsuarioLaboral oBLL = new iCom_BusinessLogic.UsuarioLaboral();
            dtDatos = oBLL.Insertar(oBEL);

            string sBody = "Hola,\n" +
                           "Tu proceso de inscripción se ha iniciado exitosamente.\n" +
                           "Saludos!\n" +
                           "usuario: " + oBE.usuario + "\n" + "contraseña: tu fecha de nacimiento en el formato ddmmaaaa";
            //oBE.contrasena;

            enviarMail(sBody, oBEDG.email);

            ResgitraLog("LISTO! Tu proceso de inscripción se ha iniciado exitosamente. <br> " +
                        "Recibirás un correo electrónico con los pasos a seguir para completar tu matrícula. <br>" +
                        "En caso de no recibirlo revisa el spam. Gracias!!!");

            // Ya se envio.
            bGuarda            = false;
            btnGUardar.Enabled = false;
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #13
0
    // Guardar
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        int idusuario = int.Parse(Application["idusuario"].ToString());

        try
        {
            // Baja Usuario
            if (chkActivo.Checked == false)
            {
                iCom_BusinessEntity.Usuario oBEU = new iCom_BusinessEntity.Usuario();

                oBEU.idusuario     = idusuario;
                oBEU.usuario       = usuario;
                oBEU.contrasena    = contrasena;
                oBEU.idusuariotipo = idusuariotipo;
                oBEU.activo        = false;

                iCom_BusinessLogic.Usuario oBLU = new iCom_BusinessLogic.Usuario();
                dtDatos = oBLU.Actualizar(oBEU);

                lblMensaje.Text = "Se dío de baja al alumno.";
                mp1.Show();
                btnGUardar.Enabled = false;
                return;
            }

            // Datos generales
            iCom_BusinessEntity.UsuarioDatosGenerales oBEDG = new iCom_BusinessEntity.UsuarioDatosGenerales();

            oBEDG.iddatosgenerales = iddatosgenerales;
            oBEDG.idusuario        = idusuario;

            oBEDG.nombre            = txtNombre.Text;
            oBEDG.appaterno         = txtApPaterno.Text;
            oBEDG.apmaterno         = txtApMaterno.Text;
            oBEDG.idmodeloeducativo = 1;
            oBEDG.idperiodoescolar  = DdlPeriodo.SelectedIndex;
            oBEDG.matricula         = txtMatricula.Text;
            oBEDG.idcarrera         = DdlCarrera.SelectedIndex;
            // Fecha Nac
            string   sFecha = txtAnio.Text + "-" + ddlMes.SelectedItem.ToString() + "-" + ddlDia.SelectedItem.ToString();
            DateTime fecha  = Convert.ToDateTime(sFecha + " 00:00:00.000", CultureInfo.InvariantCulture);
            oBEDG.fechanacimiento = fecha;

            oBEDG.nacionalidad       = txtNacionalidad.Text;
            oBEDG.telefono           = txtTelContacto.Text;
            oBEDG.email              = txtCorreo.Text;
            oBEDG.idsexo             = int.Parse(rblSexo.SelectedValue.ToString());
            oBEDG.idestadocivil      = int.Parse(rblEdoCivil.SelectedValue.ToString());
            oBEDG.curp               = txtCURP.Text;
            oBEDG.escuelaprocedencia = txtEscuelaProcedencia.Text;

            iCom_BusinessLogic.UsuarioDatosGenerales oBLUG = new iCom_BusinessLogic.UsuarioDatosGenerales();
            dtDatos = oBLUG.Actualizar(oBEDG);

            // Datos Direccion
            iCom_BusinessEntity.UsuarioDireccion oBEDir = new iCom_BusinessEntity.UsuarioDireccion();

            oBEDir.idusuariodireccion = IdUsuarioD;
            oBEDir.idusuario          = idusuario;
            oBEDir.idusuariopadres    = 0;
            oBEDir.calle          = txtCalle.Text;
            oBEDir.numeroexterior = txtNumero.Text;
            oBEDir.numerointerior = txtNumeroInt.Text;
            oBEDir.colonia        = txtColonia.Text;
            oBEDir.codigopostal   = txtCP.Text;
            oBEDir.idpais         = ddlPais.SelectedIndex;
            oBEDir.idestado       = ddlEstado.SelectedIndex;
            oBEDir.idciudad       = int.Parse(ddlCiudad.SelectedValue.ToString());

            iCom_BusinessLogic.UsuarioDireccion oBLDir = new iCom_BusinessLogic.UsuarioDireccion();
            dtDatos = oBLDir.Actualizar(oBEDir);

            // Laboral
            iCom_BusinessEntity.UsuarioLaboral oBEL = new iCom_BusinessEntity.UsuarioLaboral();
            oBEL.idusuariolaboral = IdUsuarioL;
            oBEL.idusuario        = idusuario;

            if (int.Parse(rblLaboral.SelectedValue.ToString()) == 0)
            {
                oBEL.labora = false;
            }
            else
            {
                oBEL.labora = true;
            }

            oBEL.nombreempresa = txtEmpresaLaaboral.Text;
            oBEL.puesto        = txtPuestoLaboral.Text;
            oBEL.telefono      = txtTelLaboral.Text;

            iCom_BusinessLogic.UsuarioLaboral oBLL = new iCom_BusinessLogic.UsuarioLaboral();
            dtDatos = oBLL.Actualizar(oBEL);

            lblMensaje.Text = "Datos modificados.";
            mp1.Show();
            return;
        }
        catch (Exception ex)
        {
            ResgitraLog(ex.Message);
            return;
        }
    }
Beispiel #14
0
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        // Existe
        if (Application["idusuario"].ToString() != "0")
        {
            int idusuario = int.Parse(Application["idusuario"].ToString());

            try
            {
                // Baja Usuario
                if (chkActivo.Checked == false)
                {
                    iCom_BusinessEntity.Usuario oBEU = new iCom_BusinessEntity.Usuario();

                    oBEU.idusuario     = idusuario;
                    oBEU.usuario       = usuario;
                    oBEU.contrasena    = contrasena;
                    oBEU.idusuariotipo = idusuariotipo;
                    oBEU.activo        = false;

                    iCom_BusinessLogic.Usuario oBLU = new iCom_BusinessLogic.Usuario();
                    dtDatos = oBLU.Actualizar(oBEU);

                    mp1.Show();
                    btnGUardar.Enabled = false;
                    return;
                }

                // Datos generales
                iCom_BusinessEntity.UsuarioDatosGenerales oBEDG = new iCom_BusinessEntity.UsuarioDatosGenerales();

                oBEDG.iddatosgenerales  = iddatosgenerales;
                oBEDG.idusuario         = idusuario;
                oBEDG.nombre            = txtNombre.Text;
                oBEDG.appaterno         = txtApPaterno.Text;
                oBEDG.apmaterno         = txtApMaterno.Text;
                oBEDG.idmodeloeducativo = 1;
                oBEDG.idcarrera         = DdlCarrera.SelectedIndex;

                // Fecha Nac
                string   sFecha = txtAnio.Text + "-" + ddlMes.SelectedItem.ToString() + "-" + ddlDia.SelectedItem.ToString();
                DateTime fecha  = Convert.ToDateTime(sFecha + " 00:00:00.000", CultureInfo.InvariantCulture);
                oBEDG.fechanacimiento = fecha;

                oBEDG.nacionalidad  = txtNacionalidad.Text;
                oBEDG.telefono      = txtTelContacto.Text;
                oBEDG.email         = txtCorreo.Text;
                oBEDG.idsexo        = int.Parse(rblSexo.SelectedValue.ToString());
                oBEDG.idestadocivil = int.Parse(rblEdoCivil.SelectedValue.ToString());
                oBEDG.curp          = txtCURP.Text;

                iCom_BusinessLogic.UsuarioDatosGenerales oBLUG = new iCom_BusinessLogic.UsuarioDatosGenerales();
                dtDatos = oBLUG.Actualizar(oBEDG);

                // Datos Direccion
                iCom_BusinessEntity.UsuarioDireccion oBEDir = new iCom_BusinessEntity.UsuarioDireccion();

                oBEDir.idusuariodireccion = IdUsuarioD;
                oBEDir.idusuario          = idusuario;
                oBEDir.idusuariopadres    = 0;
                oBEDir.calle          = txtCalle.Text;
                oBEDir.numeroexterior = txtNumero.Text;
                oBEDir.numerointerior = txtNumeroInt.Text;
                oBEDir.colonia        = txtColonia.Text;
                oBEDir.codigopostal   = txtCP.Text;
                oBEDir.idpais         = ddlPais.SelectedIndex;
                oBEDir.idestado       = ddlEstado.SelectedIndex;
                oBEDir.idciudad       = int.Parse(ddlCiudad.SelectedValue.ToString());

                iCom_BusinessLogic.UsuarioDireccion oBLDir = new iCom_BusinessLogic.UsuarioDireccion();
                dtDatos = oBLDir.Actualizar(oBEDir);

                // Académica
                iCom_BusinessEntity.UsuarioAcademica oBEAc = new iCom_BusinessEntity.UsuarioAcademica();

                oBEAc.idusuarioacademica = idusuarioacademica;
                oBEAc.idtipodocente      = int.Parse(rblTipoDocente.SelectedValue.ToString());
                oBEAc.idcarrera          = DdlCarrera.SelectedIndex;
                sFecha           = txtAnio.Text + "-" + ddlMes.SelectedItem.ToString() + "-" + ddlDia.SelectedItem.ToString();
                fecha            = Convert.ToDateTime(sFecha + " 00:00:00.000", CultureInfo.InvariantCulture);
                oBEAc.fecingreso = fecha;

                iCom_BusinessLogic.UsuarioAcademica oBLAc = new iCom_BusinessLogic.UsuarioAcademica();
                dtDatos = oBLAc.Actualizar(oBEAc);
            }
            catch (Exception ex)
            {
                ResgitraLog(ex.Message);
                return;
            }
        }
        // Nuevo
        else
        {
            try
            {
                // Creo el nuevo usuario
                int idusuario = 0;

                iCom_BusinessLogic.Usuario oBLUsuario = new iCom_BusinessLogic.Usuario();

                // Obtengo el id
                dtDatos = oBLUsuario.IdUsuario();

                if (dtDatos.Rows.Count > 0)
                {
                    idusuario = int.Parse(dtDatos.Rows[0]["idusuario"].ToString());
                }
                else
                {
                    ResgitraLog("No se obtuvo el ID");
                    return;
                }

                // Alta de Usuario
                iCom_BusinessEntity.Usuario oBE = new iCom_BusinessEntity.Usuario();
                oBE.usuario       = "doc" + DateTime.Now.Year.ToString() + idusuario.ToString();
                oBE.contrasena    = "12345678";
                oBE.idusuariotipo = 3;

                dtDatos = oBLUsuario.Insertar(oBE);

                // Datos generales
                iCom_BusinessEntity.UsuarioDatosGenerales oBEDG = new iCom_BusinessEntity.UsuarioDatosGenerales();

                oBEDG.idusuario         = idusuario;
                oBEDG.nombre            = txtNombre.Text;
                oBEDG.appaterno         = txtApPaterno.Text;
                oBEDG.apmaterno         = txtApMaterno.Text;
                oBEDG.idmodeloeducativo = 1;
                oBEDG.matricula         = "doc" + DateTime.Now.Year.ToString() + idusuario.ToString();
                oBEDG.idcarrera         = DdlCarrera.SelectedIndex;

                // Fecha Nac
                string   sFecha = txtAnio.Text + "-" + ddlMes.SelectedItem.ToString() + "-" + ddlDia.SelectedItem.ToString();
                DateTime fecha  = Convert.ToDateTime(sFecha + " 00:00:00.000", CultureInfo.InvariantCulture);
                oBEDG.fechanacimiento = fecha;

                oBEDG.nacionalidad  = txtNacionalidad.Text;
                oBEDG.telefono      = txtTelContacto.Text;
                oBEDG.email         = txtCorreo.Text;
                oBEDG.idsexo        = int.Parse(rblSexo.SelectedValue.ToString());
                oBEDG.idestadocivil = int.Parse(rblEdoCivil.SelectedValue.ToString());
                oBEDG.curp          = txtCURP.Text;

                iCom_BusinessLogic.UsuarioDatosGenerales oBLUG = new iCom_BusinessLogic.UsuarioDatosGenerales();
                dtDatos = oBLUG.Insertar(oBEDG);

                // Datos Direccion
                iCom_BusinessEntity.UsuarioDireccion oBEDir = new iCom_BusinessEntity.UsuarioDireccion();

                oBEDir.idusuario       = idusuario;
                oBEDir.idusuariopadres = 0;
                oBEDir.calle           = txtCalle.Text;
                oBEDir.numeroexterior  = txtNumero.Text;
                oBEDir.numerointerior  = txtNumeroInt.Text;
                oBEDir.colonia         = txtColonia.Text;
                oBEDir.codigopostal    = txtCP.Text;
                oBEDir.idpais          = ddlPais.SelectedIndex;
                oBEDir.idestado        = ddlEstado.SelectedIndex;
                oBEDir.idciudad        = int.Parse(ddlCiudad.SelectedValue.ToString());

                iCom_BusinessLogic.UsuarioDireccion oBLDir = new iCom_BusinessLogic.UsuarioDireccion();
                dtDatos = oBLDir.Insertar(oBEDir);

                // Laboral
                iCom_BusinessEntity.UsuarioLaboral oBEL = new iCom_BusinessEntity.UsuarioLaboral();

                oBEL.idusuario     = idusuario;
                oBEL.labora        = false;
                oBEL.nombreempresa = string.Empty;
                oBEL.puesto        = string.Empty;
                oBEL.dias          = string.Empty;
                oBEL.telefono      = string.Empty;

                iCom_BusinessLogic.UsuarioLaboral oBLL = new iCom_BusinessLogic.UsuarioLaboral();
                dtDatos = oBLL.Insertar(oBEL);

                // Académica
                iCom_BusinessEntity.UsuarioAcademica oBEAc = new iCom_BusinessEntity.UsuarioAcademica();

                oBEAc.idusuarioacademica = idusuarioacademica;
                oBEAc.idtipodocente      = int.Parse(rblTipoDocente.SelectedValue.ToString());
                oBEAc.idcarrera          = DdlCarrera.SelectedIndex;
                sFecha           = txtAnio.Text + "-" + ddlMes.SelectedItem.ToString() + "-" + ddlDia.SelectedItem.ToString();
                fecha            = Convert.ToDateTime(sFecha + " 00:00:00.000", CultureInfo.InvariantCulture);
                oBEAc.fecingreso = fecha;

                iCom_BusinessLogic.UsuarioAcademica oBLAc = new iCom_BusinessLogic.UsuarioAcademica();
                dtDatos = oBLAc.Insertar(oBEAc);

                // Enviar correo
                if (Application["admin"].ToString() == "1")
                {
                    string sBody = "Hola, " + txtNombre.Text.ToString() + "\n" +
                                   "Tu alta como docente de iCom se ha iniciado exitosamente.\n" + "Saludos!\n" +
                                   "usuario: " + oBE.usuario + "\n" + "contraseña: tu fecha de nacimiento en el formato ddmmaaaa";

                    enviarMail(sBody, oBEDG.email);

                    ResgitraLog("LISTO! El  alta como docente de iCom se ha iniciado exitosamente. <br> " +
                                "Se enviará un correo electrónico al docente con su usuario y contraseña " +
                                "para accesar a la plataforma. <br>");
                }
                // Ya se envio.
                bGuarda            = false;
                btnGUardar.Enabled = false;
            }
            catch (Exception ex)
            {
                ResgitraLog(ex.Message);
                return;
            }
        }

        lblMensaje.Text    = "Datos guardados";
        btnGUardar.Enabled = false;
        mp1.Show();
        return;
    }