Mengambil daftar dasbor yang dipaginasikan yang dapat Anda lihat atau ubah


Daftar Dasbor

Ambil dasbor yang dapat Anda lihat. Ini termasuk dasbor yang Anda buat dan dasbor yang telah dibagikan kepada Anda.

Contoh Dasar

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

Contoh Lanjutan

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
    }
  }
}

Parameter Masukan

DashboardFilterInput

Parameter Tipe Diperlukan Deskripsi
companyId String! ✅ Ya ID perusahaan untuk memfilter dasbor
projectId String Tidak ID proyek opsional untuk memfilter dasbor

Opsi Pengurutan

Nilai Urut Deskripsi
title_ASC Urut berdasarkan judul secara ascending
title_DESC Urut berdasarkan judul secara descending
createdBy_ASC Urut berdasarkan pembuat secara ascending
createdBy_DESC Urut berdasarkan pembuat secara descending
updatedAt_ASC Urut berdasarkan waktu pembaruan secara ascending
updatedAt_DESC Urut berdasarkan waktu pembaruan secara descending (default)

Parameter Pagination

Parameter Tipe Default Deskripsi
skip Int 0 Jumlah item yang akan dilewati
take Int 20 Jumlah item yang akan dikembalikan (maks 100)

Bidang Respons

DashboardPagination

Bidang Tipe Deskripsi
items [Dashboard!]! Array objek dasbor
pageInfo PageInfo! Informasi pagination

Dashboard

Bidang Tipe Deskripsi
id ID! Pengidentifikasi unik untuk dasbor
title String! Nama tampilan dari dasbor
createdBy User! Pengguna yang membuat dasbor
dashboardUsers [DashboardUser!] Pengguna yang memiliki akses ke dasbor ini
createdAt DateTime! Kapan dasbor dibuat
updatedAt DateTime! Kapan dasbor terakhir dimodifikasi

DashboardUser

Bidang Tipe Deskripsi
id ID! Pengidentifikasi unik untuk pengguna dasbor
role DashboardRole! Peran pengguna (PENONTON atau EDITOR)
user User! Informasi pengguna

Kontrol Akses

Visibilitas Dasbor

Anda hanya dapat melihat dasbor di mana Anda:

  • Pembuat dasbor
  • Diberikan akses secara eksplisit melalui berbagi dasbor

Izin yang Diperlukan

  • Otentikasi Diperlukan: Anda harus masuk
  • Akses Perusahaan: Anda harus memiliki akses ke perusahaan yang ditentukan
  • Akses Proyek: Jika memfilter berdasarkan proyek, Anda harus memiliki akses ke proyek tersebut

Respons Kesalahan

Perusahaan Tidak Ditemukan

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

Proyek Tidak Ditemukan

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

Kasus Penggunaan Umum

Daftar Semua Dasbor Perusahaan

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

Daftar Dasbor Khusus Proyek

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

Daftar Dasbor yang Dipaginasikan

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

Praktik Terbaik

Kinerja

  • Gunakan pagination untuk kinerja yang lebih baik dengan daftar dasbor yang besar
  • Hanya minta bidang yang Anda butuhkan dalam aplikasi Anda
  • Pertimbangkan untuk menyimpan daftar dasbor untuk data yang sering diakses

Penyaringan

  • Selalu saring berdasarkan perusahaan untuk memastikan isolasi data yang tepat
  • Gunakan penyaringan proyek saat bekerja dengan dasbor khusus proyek
  • Gabungkan filter untuk mempersempit hasil dengan efisien

Pengurutan

  • Pengurutan default adalah berdasarkan updatedAt_DESC (yang terbaru diperbarui pertama)
  • Gunakan pengurutan judul untuk organisasi alfabetis
  • Gabungkan beberapa kriteria urut untuk kebutuhan pemesanan yang kompleks

Operasi Terkait

Asisten AI

Respon dihasilkan menggunakan AI dan mungkin mengandung kesalahan.

Bagaimana saya bisa membantu Anda?

Tanyakan apa saja tentang Blue atau dokumentasi ini.

Masukkan untuk mengirim • Shift+Masukkan untuk baris baru • ⌘I untuk membuka