updateUserInfo method

Future<bool> updateUserInfo(
  1. UserClass user,
  2. int idUser
)

Método que actualizar la información de un usuario de la base de datos basado en su ID.

Parámetros:

  • user: El usuario con los datos nuevos a actualizar.
  • idUser: El ID del usuario al que se desea actualiza la información.

Retorna:

  • bool: true si se actualizó al menos una fila, false si ocurrió un error.

Implementation

Future<bool> updateUserInfo(UserClass user, int idUser) async {
  try {
    // SE VERIFICA SI EL USUARIO EXISTE
    final existingUser =
        await supabase.from('user').select().eq('iduser', idUser);

    if (existingUser.isEmpty) {
      DatabaseHelper.logger.e("No se encontró usuario con ID: $idUser");
      return false;
    }

    // SE ACTUALIZA
    final response = await supabase
        .from('user')
        .update({
          'username': user.username,
          'passwordhash': user.password,
          'imageurl': user.imageUrl,
        })
        .eq('iduser', idUser)
        .select();

    DatabaseHelper.logger.i("Respuesta de actualización: $response");

    return response.isNotEmpty;
  } catch (e) {
    DatabaseHelper.logger.e("Error al actualizar usuario: $e");
    return false;
  }
}