Pindahkan rekaman ke daftar yang berbeda dalam proyek yang sama atau antar proyek dengan penyalinan dan validasi yang komprehensif.


Pindahkan Rekaman ke Daftar

Mutasi moveTodo memungkinkan Anda untuk memindahkan rekaman ke daftar yang berbeda. Operasi ini membuat salinan lengkap dari rekaman di daftar tujuan dan menghapusnya dari daftar sumber. Rekaman dapat dipindahkan dalam proyek yang sama atau antar proyek yang berbeda (dengan izin yang sesuai).

Contoh Dasar

mutation MoveTodo {
  moveTodo(
    input: {
      todoId: "todo_123abc"
      todoListId: "list_456def"
    }
  )
}

Contoh Pindah Antar-Proyek

mutation MoveTodoAcrossProjects {
  moveTodo(
    input: {
      todoId: "todo_123abc"
      todoListId: "different-project-list_789xyz"
    }
  )
}

Parameter Input

MoveTodoInput

Parameter Tipe Diperlukan Deskripsi
todoId String! ✅ Ya ID dari rekaman yang akan dipindahkan
todoListId String! ✅ Ya ID dari daftar tujuan

Respons

Mutasi mengembalikan nilai Boolean!:

  • true - Rekaman berhasil dipindahkan
  • Kesalahan akan dilemparkan jika gagal daripada mengembalikan false

Apa yang Dipindahkan

Ketika rekaman dipindahkan, elemen berikut disalin ke lokasi baru:

  • Penugasan - Semua pengguna yang ditugaskan
  • Daftar Periksa - Semua item daftar periksa dan status penyelesaiannya
  • Komentar - Semua komentar dan balasan
  • Bidang Kustom - Semua nilai bidang kustom
  • Deskripsi - Deskripsi lengkap rekaman dan formatnya
  • Tanggal Jatuh Tempo - Tanggal dan waktu jatuh tempo asli
  • Tag - Semua tag yang terkait
  • Tindakan Todo - Semua sub-tugas dan item tindakan
  • Berkas - Semua lampiran berkas (dengan penanganan khusus untuk pindahan antar-proyek)

Penanganan Posisi

  • Rekaman secara otomatis diposisikan di akhir daftar tujuan
  • Anda tidak dapat menentukan posisi kustom - itu dihitung secara otomatis
  • Posisi diatur ke posisi maksimum saat ini + 65.535

Izin yang Diperlukan

Tingkat izin yang berbeda memiliki kemampuan yang berbeda:

Peran Pengguna Proyek yang Sama Antar-Proyek Akses Berkas
OWNER ✅ Ya ✅ Ya All files
ADMIN ✅ Ya ✅ Ya All files
MEMBER ✅ Ya ❌ Tidak Own files only

Persyaratan Izin

  • Anda harus memiliki akses OWNER, ADMIN, atau MEMBER ke proyek sumber
  • Anda harus memiliki akses ke proyek tujuan
  • Pengguna MEMBER tidak dapat memindahkan rekaman antar proyek yang berbeda
  • Kedua proyek harus aktif (tidak diarsipkan)

Respons Kesalahan

Rekaman Tidak Ditemukan

{
  "errors": [{
    "message": "Todo was not found.",
    "extensions": {
      "code": "TODO_NOT_FOUND"
    }
  }]
}

Daftar Tidak Ditemukan

{
  "errors": [{
    "message": "Todo list was not found.",
    "extensions": {
      "code": "TODO_LIST_NOT_FOUND"
    }
  }]
}

Izin Antar-Proyek Ditolak

{
  "errors": [{
    "message": "You are not authorized.",
    "extensions": {
      "code": "FORBIDDEN"
    }
  }]
}

Penanganan Berkas

Pindahan Proyek yang Sama

  • Berkas dipindahkan secara langsung tanpa membuat salinan
  • Semua izin berkas dipertahankan

Pindahan Antar-Proyek

  • Salinan baru berkas dibuat di penyimpanan proyek tujuan
  • Berkas asli dihapus secara asinkron setelah salinan berhasil
  • Izin berkas dapat diperbarui berdasarkan pengaturan proyek tujuan
  • Pengguna MEMBER hanya dapat memindahkan berkas yang mereka miliki

Efek Samping

Memindahkan rekaman memicu beberapa tindakan otomatis:

  1. Pencatatan Aktivitas - Membuat catatan aktivitas yang menunjukkan pemindahan
  2. Notifikasi - Memberi tahu anggota proyek yang relevan
  3. Webhook - Memicu acara webhook handleTodoMoved
  4. Automasi - Menjalankan automasi yang dikonfigurasi untuk pemindahan rekaman
  5. Pembaruan Waktu Nyata - Menerbitkan pembaruan langsung ke semua klien yang terhubung
  6. Pembaruan Grafik - Memperbarui grafik dan statistik proyek

Catatan Penting

  • Salinan Lengkap: Semua data rekaman disalin - Anda tidak dapat memilih untuk memindahkan hanya elemen tertentu
  • Posisi Otomatis: Rekaman selalu ditempatkan di akhir daftar tujuan
  • Pembatasan Antar-Proyek: Pengguna MEMBER tidak dapat memindahkan rekaman antar proyek
  • Pembersihan Asinkron: Pembersihan berkas terjadi di latar belakang untuk pindahan antar-proyek
  • Mempertahankan Riwayat: Komentar, aktivitas, dan jejak audit dipertahankan
  • Acara Webhook: Operasi pemindahan memicu acara penghapusan dan pembuatan untuk sinkronisasi waktu nyata

Kasus Penggunaan

Mengatur Ulang Pekerjaan

Pindahkan rekaman antar daftar untuk mengatur ulang struktur proyek atau tahap alur kerja.

Transfer Antar-Proyek

Transfer rekaman antar proyek ketika pekerjaan perlu dipindahkan ke tim atau fase yang berbeda.

Konsolidasi Daftar

Pindahkan rekaman saat menggabungkan atau merestrukturisasi daftar proyek.

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