Sposta un record in una lista diversa all'interno dello stesso progetto o tra progetti con copia e convalida complete.


Sposta Record nella Lista

La mutazione moveTodo consente di spostare un record in una lista diversa. Questa operazione crea una copia completa del record nella lista di destinazione e lo rimuove dalla lista di origine. I record possono essere spostati all'interno dello stesso progetto o tra progetti diversi (con le autorizzazioni appropriate).

Esempio di Base

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

Esempio di Spostamento tra Progetti

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

Parametri di Input

MoveTodoInput

Parametro Tipo Richiesto Descrizione
todoId String! ✅ Sì L'ID del record da spostare
todoListId String! ✅ Sì L'ID della lista di destinazione

Risposta

La mutazione restituisce un valore Boolean!:

  • true - Il record è stato spostato con successo
  • Gli errori vengono generati in caso di fallimento invece di restituire false

Cosa Viene Spostato

Quando un record viene spostato, i seguenti elementi vengono copiati nella nuova posizione:

  • Assegnatari - Tutti gli utenti assegnati
  • Checklist - Tutti gli elementi della checklist e il loro stato di completamento
  • Commenti - Tutti i commenti e le risposte
  • Campi Personalizzati - Tutti i valori dei campi personalizzati
  • Descrizione - Descrizione completa del record e formattazione
  • Data di Scadenza - Data e ora di scadenza originali
  • Tag - Tutti i tag associati
  • Azioni Todo - Tutte le sottoattività e gli elementi d'azione
  • File - Tutti gli allegati (con gestione speciale per gli spostamenti tra progetti)

Gestione della Posizione

  • I record vengono automaticamente posizionati alla fine della lista di destinazione
  • Non puoi specificare una posizione personalizzata - viene calcolata automaticamente
  • La posizione è impostata sulla posizione massima attuale + 65.535

Autorizzazioni Richieste

Diversi livelli di autorizzazione hanno diverse capacità:

Ruolo Utente Stesso Progetto Tra Progetti Accesso ai File
OWNER ✅ Sì ✅ Sì All files
ADMIN ✅ Sì ✅ Sì All files
MEMBER ✅ Sì ❌ No Own files only

Requisiti di Autorizzazione

  • Devi avere accesso OWNER, ADMIN, o MEMBER al progetto sorgente
  • Devi avere accesso al progetto di destinazione
  • Gli utenti MEMBER non possono spostare record tra progetti diversi
  • Entrambi i progetti devono essere attivi (non archiviati)

Risposte di Errore

Record Non Trovato

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

Lista Non Trovata

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

Autorizzazione Negata tra Progetti

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

Gestione dei File

Spostamenti nello Stesso Progetto

  • I file vengono spostati direttamente senza creare copie
  • Tutte le autorizzazioni sui file sono preservate

Spostamenti tra Progetti

  • Nuove copie dei file vengono create nello storage del progetto di destinazione
  • I file originali vengono eliminati in modo asincrono dopo la copia riuscita
  • Le autorizzazioni sui file possono essere aggiornate in base alle impostazioni del progetto di destinazione
  • Gli utenti MEMBER possono spostare solo i file di cui sono proprietari

Effetti Collaterali

Spostare un record attiva diverse azioni automatiche:

  1. Registrazione Attività - Crea un record di attività che mostra lo spostamento
  2. Notifiche - Notifica i membri del progetto pertinenti
  3. Webhook - Attiva l'evento webhook handleTodoMoved
  4. Automazioni - Esegue automazioni configurate per gli spostamenti di record
  5. Aggiornamenti in Tempo Reale - Pubblica aggiornamenti live a tutti i client connessi
  6. Aggiornamenti Grafico - Aggiorna grafici e statistiche del progetto

Note Importanti

  • Copia Completa: Tutti i dati del record vengono copiati - non puoi spostare selettivamente solo alcuni elementi
  • Posizione Automatica: I record vengono sempre posizionati alla fine della lista di destinazione
  • Restrizioni tra Progetti: Gli utenti MEMBER non possono spostare record tra progetti
  • Pulizia Asincrona: La pulizia dei file avviene in background per gli spostamenti tra progetti
  • Preserva la Storia: Commenti, attività e audit trail sono mantenuti
  • Eventi Webhook: Le operazioni di spostamento attivano eventi di eliminazione e creazione per la sincronizzazione in tempo reale

Casi d'Uso

Riorganizzazione del Lavoro

Sposta record tra liste per riorganizzare la struttura del progetto o le fasi del flusso di lavoro.

Trasferimenti tra Progetti

Trasferisci record tra progetti quando il lavoro deve spostarsi a un team o fase diversa.

Consolidamento delle Liste

Sposta record quando combini o ristrutturi le liste di progetto.

Assistente AI

Le risposte sono generate utilizzando l'IA e potrebbero contenere errori.

Come posso aiutarti?

Chiedimi qualsiasi cosa su Blue o su questa documentazione.

Invia per inviare • Maiusc+Invio per una nuova riga • ⌘I per aprire