Пример #1
0
        /// <summary>
        /// Metodo que se utiliza para validar el login de un usuario
        /// </summary>
        /// <param name="parametro">Entidad de tipo usuario que recibe el login del mismo</param>
        /// <returns>Retorna el usuario con los datos completos.
        /// En caso de que el login no sea correcto devuelve nulo</returns>
        public Entidad ValidarUsuarioLogin(Entidad parametro)
        {
            Usuario       usuario = (Usuario)parametro;
            SqlConnection conect  = Conectar();

            if (usuario.Username != null && usuario.Clave != null && usuario.Username != "" && usuario.Clave != "")
            {
                try
                {
                    SqlCommand sqlcom = new SqlCommand(RecursosDaoModulo1.Query_ValidarLogin, conect);
                    sqlcom.CommandType = CommandType.StoredProcedure;
                    sqlcom.Parameters.Add(new SqlParameter(RecursosDaoModulo1.Parametro_Input_Username, usuario.Username));
                    sqlcom.Parameters.Add(new SqlParameter(RecursosDaoModulo1.Parametro_Input_Clave, usuario.Clave));

                    SqlDataReader leer;
                    conect.Open();

                    leer = sqlcom.ExecuteReader();
                    if (leer != null)
                    {
                        while (leer.Read())
                        {
                            usuario.Nombre   = leer[RecursosDaoModulo1.Parametro_Output_Usu_nombre].ToString();
                            usuario.Apellido = leer[RecursosDaoModulo1.Parametro_Output_Usu_apellido].ToString();
                            usuario.Rol      = leer[RecursosDaoModulo1.Parametro_Output_Usu_rol].ToString();
                            usuario.Correo   = leer[RecursosDaoModulo1.Parametro_Output_Usu_correo].ToString();
                            usuario.Cargo    = leer[RecursosDaoModulo1.Parametro_Output_Usu_cargo].ToString();

                            return(usuario);
                        }

                        return(null);
                    }
                    else
                    {
                        ExcepcionesTotem.Modulo1.LoginErradoException excep = new ExcepcionesTotem.Modulo1.LoginErradoException(
                            RecursosDaoModulo1.Codigo_Login_Errado,
                            RecursosDaoModulo1.Mensaje_Login_Errado, new Exception());
                        ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                        throw excep;
                    }
                }
                catch (ExcepcionesTotem.Modulo1.LoginErradoException ex)
                {
                    ExcepcionesTotem.Modulo1.LoginErradoException excep = new ExcepcionesTotem.Modulo1.LoginErradoException(
                        ex.Codigo,
                        ex.Mensaje, ex);

                    ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                    throw excep;
                }
                catch (SqlException ex)
                {
                    ExcepcionesTotem.ExceptionTotemConexionBD excep = new ExcepcionesTotem.ExceptionTotemConexionBD(
                        RecursoGeneralDAO.Codigo_Error_BaseDatos,
                        RecursoGeneralDAO.Mensaje_Error_BaseDatos, ex);
                    ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                    throw excep;
                }
                catch (ParametroInvalidoException ex)
                {
                    ParametroInvalidoException excep = new ParametroInvalidoException(
                        RecursoGeneralDAO.Codigo_Parametro_Errado,
                        RecursoGeneralDAO.Mensaje_Parametro_Errado, ex);
                    ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                    throw excep;
                }
                finally
                {
                    Desconectar(conect);
                }
            }
            else
            {
                UsuarioVacioException excep = new UsuarioVacioException(
                    RecursosDaoModulo1.Codigo_Usuario_Vacio,
                    RecursosDaoModulo1.Mensaje_Usuario_Vacio, new Exception());
                ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                throw excep;
            }
        }
Пример #2
0
        /// <summary>
        /// Metodo que se utiliza para obtener la pregunta de seguridad de un usuario
        /// </summary>
        /// <param name="parametro">Entidad de tipo usuario que recibe el emai del usuario</param>
        /// <returns>Retorna el usuario con la pregunta de segurida que le pertenece</returns>
        public Entidad ObtenerPreguntaSeguridad(Entidad parametro)
        {
            Usuario       usuario = (Usuario)parametro;
            SqlConnection conect  = Conectar();

            if (usuario != null && usuario.Correo != null && usuario.Correo != "")
            {
                try
                {
                    SqlCommand sqlcom = new SqlCommand(RecursosDaoModulo1.Query_Obtener_Pregunta_Seguridad, conect);
                    sqlcom.CommandType = CommandType.StoredProcedure;
                    sqlcom.Parameters.Add(new SqlParameter(RecursosDaoModulo1.Parametro_Input_Correo, usuario.Correo));

                    SqlDataReader leer;
                    conect.Open();
                    leer = sqlcom.ExecuteReader();
                    while (leer.Read())
                    {
                        usuario.PreguntaSeguridad = leer[RecursosDaoModulo1.Parametro_Output_PreguntaSeguridad].ToString();
                    }
                    return(usuario);
                }
                catch (SqlException ex)
                {
                    ExcepcionesTotem.ExceptionTotemConexionBD excep = new ExcepcionesTotem.ExceptionTotemConexionBD(
                        RecursoGeneralDAO.Codigo_Error_BaseDatos,
                        RecursoGeneralDAO.Mensaje_Error_BaseDatos, ex);
                    ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                    throw excep;
                }
                catch (ExcepcionesTotem.ExceptionTotemConexionBD ex)
                {
                    ExcepcionesTotem.ExceptionTotemConexionBD excep = new ExcepcionesTotem.ExceptionTotemConexionBD(
                        ex.Codigo, ex.Mensaje, ex);
                    ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                    throw excep;
                }
                catch (ExcepcionesTotem.Modulo1.EmailErradoException ex)
                {
                    ExcepcionesTotem.Modulo1.EmailErradoException excep = new ExcepcionesTotem.Modulo1.EmailErradoException(
                        ex.Codigo, ex.Mensaje, ex);
                    ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                    throw excep;
                }
                catch (ParametroInvalidoException ex)
                {
                    ParametroInvalidoException excep = new ParametroInvalidoException(RecursoGeneralDAO.Codigo_Parametro_Errado,
                                                                                      RecursoGeneralDAO.Mensaje_Parametro_Errado, ex);
                    ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                    throw excep;
                }
                finally
                {
                    Desconectar(conect);
                }
            }
            else
            {
                UsuarioVacioException excep = new UsuarioVacioException(RecursosDaoModulo1.Codigo_Usuario_Vacio,
                                                                        RecursosDaoModulo1.Mensaje_Usuario_Vacio,
                                                                        new UsuarioVacioException());
                ExcepcionesTotem.Logger.EscribirError(Convert.ToString(this.GetType()), excep);
                throw excep;
            }
        }