示例#1
0
        public bool[] Actualizar(struUpdateData updateData)
        {
            try
            {
                bool[] boResult = new bool[2];
                boResult[0] = false;
                boResult[1] = false;
                clsUsuario Usuario = new clsUsuario(HttpContext.Current.User.Identity.Name);
                if ((Usuario.UserId != updateData.UserId) || (System.Convert.ToBoolean(updateData.CuentaBloqueada) == true))
                {
                    boResult[1] = true;
                }
                Usuario.email  = updateData.email;
                Usuario.UserId = updateData.UserId;
                // Si updateData.UserPass = string.Empty, la contraseña se mantiene.
                Usuario.UserPass        = updateData.UserPass;
                Usuario.CentroTrabajo   = updateData.CentroTrabajo;
                Usuario.Funcion         = updateData.Funcion;
                Usuario.CuentaBloqueada = System.Convert.ToBoolean(updateData.CuentaBloqueada);
                Usuario.PerfilPublico   = System.Convert.ToBoolean(updateData.PerfilPublico);
                // Actualizar datos generales.
                Usuario.Actualizar();

                if (Usuario.IsInRole(clsUsuario.enuRolesName.Academico))
                {
                    clsAcademico Academico = new clsAcademico(Usuario.Id);
                    if ((!Academico.IsInRole(clsUsuario.enuRolesName.Docente)) & (updateData.FacultadDepartamento != null))
                    {
                        Academico.registrarComoDocente(updateData.IdCategoriaDocente, updateData.IdTituloAcademico, updateData.FacultadDepartamento);
                    }
                    Academico.Nombre           = updateData.Nombre;
                    Academico.Apellidos        = updateData.Apellidos;
                    Academico.Sexo             = updateData.Sexo;
                    Academico.FuncionAcademico = updateData.FuncionAcademico;
                    // Si updateData.UserPass = string.Empty, la contraseña se mantiene.
                    Academico.UserPass = updateData.UserPass;
                    Academico.Actualizar();
                    Academico = null;
                }
                if (Usuario.IsInRole(clsUsuario.enuRolesName.Docente))
                {
                    clsDocente Docente = new clsDocente(Usuario.Id);
                    Docente.FacultadDepartamento = updateData.FacultadDepartamento;
                    Docente.IdCategoriaDocente   = updateData.IdCategoriaDocente;
                    Docente.IdTituloAcademico    = updateData.IdTituloAcademico;
                    // Si updateData.UserPass = string.Empty, la contraseña se mantiene.
                    Docente.UserPass = updateData.UserPass;
                    Docente.Actualizar();
                    Docente = null;
                }
                Usuario     = null;
                boResult[0] = true;
                return(boResult);
            }
            catch (System.Exception Ex)
            {
                System.Diagnostics.Debug.WriteLine(Ex.ToString());
                throw new System.Exception("Error al actualizar los datos de su perfil.");
            }
        }
示例#2
0
 public bool Actualizar(clsAcademico.struAcademico AcademicoData)
 {
     try
     {
         clsAcademico Academico = new clsAcademico();
         Academico.getDataFromStruct(AcademicoData);
         bool boResult = Academico.Actualizar();
         Academico = null;
         return(boResult);
     }
     catch (System.Exception Ex)
     {
         throw new System.Exception("No se actualizaron los datos del académico.", Ex);
     }
 }