Pobierz stronicowaną listę pulpitów, do których masz dostęp do przeglądania lub modyfikacji


Lista pulpitów

Pobierz pulpity, do których masz dostęp do przeglądania. Obejmuje to pulpity, które stworzyłeś oraz pulpity, które zostały z Tobą udostępnione.

Podstawowy przykład

query ListDashboards {
  dashboards(filter: { companyId: "company_123" }) {
    items {
      id
      title
      createdBy {
        id
        name
        email
      }
      createdAt
      updatedAt
    }
    pageInfo {
      hasNextPage
      hasPreviousPage
      startCursor
      endCursor
    }
  }
}

Zaawansowany przykład

query ListDashboardsAdvanced {
  dashboards(
    filter: { 
      companyId: "company_123"
      projectId: "proj_456"  # Optional: filter by project
    }
    sort: [updatedAt_DESC, title_ASC]
    skip: 0
    take: 10
  ) {
    items {
      id
      title
      createdBy {
        id
        name
        email
      }
      dashboardUsers {
        id
        role
        user {
          id
          name
          email
        }
      }
      createdAt
      updatedAt
    }
    pageInfo {
      hasNextPage
      hasPreviousPage
      startCursor
      endCursor
    }
  }
}

Parametry wejściowe

DashboardFilterInput

Parametr Typ Wymagany Opis
companyId String! ✅ Tak ID firmy do filtrowania pulpitów
projectId String Nie Opcjonalne ID projektu do filtrowania pulpitów

Opcje sortowania

Wartość sortowania Opis
title_ASC Sortuj według tytułu rosnąco
title_DESC Sortuj według tytułu malejąco
createdBy_ASC Sortuj według twórcy rosnąco
createdBy_DESC Sortuj według twórcy malejąco
updatedAt_ASC Sortuj według czasu aktualizacji rosnąco
updatedAt_DESC Sortuj według czasu aktualizacji malejąco (domyślnie)

Parametry stronicowania

Parametr Typ Domyślny Opis
skip Int 0 Liczba elementów do pominięcia
take Int 20 Liczba elementów do zwrócenia (maks. 100)

Pola odpowiedzi

DashboardPagination

Pole Typ Opis
items [Dashboard!]! Tablica obiektów pulpitów
pageInfo PageInfo! Informacje o stronicowaniu

Dashboard

Pole Typ Opis
id ID! Unikalny identyfikator pulpitu
title String! Nazwa wyświetlana pulpitu
createdBy User! Użytkownik, który stworzył pulpit
dashboardUsers [DashboardUser!] Użytkownicy z dostępem do tego pulpitu
createdAt DateTime! Kiedy pulpit został stworzony
updatedAt DateTime! Kiedy pulpit został ostatnio zmodyfikowany

DashboardUser

Pole Typ Opis
id ID! Unikalny identyfikator użytkownika pulpitu
role DashboardRole! Rola użytkownika (WIDZ lub EDYTOR)
user User! Informacje o użytkowniku

Kontrola dostępu

Widoczność pulpitu

Możesz zobaczyć tylko pulpity, w których jesteś:

  • Twórcą pulpitu
  • Wyraźnie przyznanym dostępem poprzez udostępnianie pulpitu

Wymagane uprawnienia

  • Wymagana autoryzacja: Musisz być zalogowany
  • Dostęp do firmy: Musisz mieć dostęp do określonej firmy
  • Dostęp do projektu: Jeśli filtrujesz według projektu, musisz mieć dostęp do tego projektu

Odpowiedzi błędów

Firma nie znaleziona

{
  "errors": [{
    "message": "Company not found",
    "extensions": {
      "code": "COMPANY_NOT_FOUND"
    }
  }]
}

Projekt nie znaleziony

{
  "errors": [{
    "message": "Project not found", 
    "extensions": {
      "code": "PROJECT_NOT_FOUND"
    }
  }]
}

Typowe przypadki użycia

Lista wszystkich pulpitów firmy

query CompanyDashboards {
  dashboards(filter: { companyId: "company_123" }) {
    items {
      id
      title
      createdBy { name }
    }
  }
}

Lista pulpitów specyficznych dla projektu

query ProjectDashboards {
  dashboards(filter: { 
    companyId: "company_123"
    projectId: "proj_456"
  }) {
    items {
      id
      title
    }
  }
}

Stronicowana lista pulpitów

query PaginatedDashboards {
  dashboards(
    filter: { companyId: "company_123" }
    skip: 20
    take: 10
  ) {
    items {
      id
      title
    }
    pageInfo {
      hasNextPage
      hasPreviousPage
    }
  }
}

Najlepsze praktyki

Wydajność

  • Używaj stronicowania dla lepszej wydajności przy dużych listach pulpitów
  • Żądaj tylko pól, których potrzebujesz w swojej aplikacji
  • Rozważ buforowanie list pulpitów dla często używanych danych

Filtrowanie

  • Zawsze filtruj według firmy, aby zapewnić odpowiednią izolację danych
  • Używaj filtrowania projektów, gdy pracujesz z pulpitami specyficznymi dla projektu
  • Łącz filtry, aby efektywnie zawęzić wyniki

Sortowanie

  • Domyślne sortowanie to updatedAt_DESC (najpierw najnowsze aktualizacje)
  • Używaj sortowania według tytułu dla organizacji alfabetycznej
  • Łącz wiele kryteriów sortowania dla złożonych potrzeb porządkowych

Powiązane operacje

Asystent AI

Odpowiedzi są generowane przy użyciu sztucznej inteligencji i mogą zawierać błędy.

Jak mogę Ci pomóc?

Zapytaj mnie o cokolwiek dotyczącego Blue lub tej dokumentacji.

Wciśnij Enter, aby wysłać • Shift+Enter, aby dodać nową linię • ⌘I, aby otworzyć