Flytta en post till en annan lista inom samma projekt eller mellan projekt med omfattande kopiering och validering.
Flytta post till lista
Den moveTodo
mutation tillåter dig att flytta en post till en annan lista. Denna operation skapar en fullständig kopia av posten i destinationslistan och tar bort den från källistan. Poster kan flyttas inom samma projekt eller mellan olika projekt (med lämpliga behörigheter).
Grundläggande exempel
mutation MoveTodo {
moveTodo(
input: {
todoId: "todo_123abc"
todoListId: "list_456def"
}
)
}
Exempel på flytt mellan projekt
mutation MoveTodoAcrossProjects {
moveTodo(
input: {
todoId: "todo_123abc"
todoListId: "different-project-list_789xyz"
}
)
}
Indata parametrar
MoveTodoInput
Parameter | Typ | Obligatorisk | Beskrivning |
---|---|---|---|
todoId |
String! | ✅ Ja | ID för posten som ska flyttas |
todoListId |
String! | ✅ Ja | ID för destinationslistan |
Svar
Mutation returnerar ett Boolean!
värde:
true
- Posten flyttades framgångsrikt- Fel uppstår vid misslyckande istället för att returnera
false
Vad som flyttas
När en post flyttas kopieras följande element till den nya platsen:
- ✅ Tilldelade - Alla tilldelade användare
- ✅ Checklistor - Alla checklistpunkter och deras slutförandestatus
- ✅ Kommentarer - Alla kommentarer och svar
- ✅ Anpassade fält - Alla värden för anpassade fält
- ✅ Beskrivning - Fullständig postbeskrivning och formatering
- ✅ Förfallodatum - Ursprungligt förfallodatum och tid
- ✅ Taggar - Alla associerade taggar
- ✅ Todo-åtgärder - Alla deluppgifter och åtgärdspunkter
- ✅ Filer - Alla filbilagor (med särskild hantering för flytt mellan projekt)
Positionshantering
- Poster placeras automatiskt i slutet av destinationslistan
- Du kan inte specificera en anpassad position - den beräknas automatiskt
- Positionen sätts till den aktuella maximala positionen + 65,535
Obligatoriska behörigheter
Olika behörighetsnivåer har olika kapabiliteter:
Användarroll | Samma projekt | Tvärprojekt | Filåtkomst |
---|---|---|---|
OWNER |
✅ Ja | ✅ Ja | All files |
ADMIN |
✅ Ja | ✅ Ja | All files |
MEMBER |
✅ Ja | ❌ Nej | Own files only |
Behörighetskrav
- Du måste ha
OWNER
,ADMIN
, ellerMEMBER
åtkomst till källprojektet - Du måste ha åtkomst till destinationsprojektet
MEMBER
användare kan inte flytta poster mellan olika projekt- Båda projekten måste vara aktiva (inte arkiverade)
Felmeddelanden
Posten hittades inte
{
"errors": [{
"message": "Todo was not found.",
"extensions": {
"code": "TODO_NOT_FOUND"
}
}]
}
Lista hittades inte
{
"errors": [{
"message": "Todo list was not found.",
"extensions": {
"code": "TODO_LIST_NOT_FOUND"
}
}]
}
Behörighet nekad för tvärprojekt
{
"errors": [{
"message": "You are not authorized.",
"extensions": {
"code": "FORBIDDEN"
}
}]
}
Filhantering
Flytt inom samma projekt
- Filer flyttas direkt utan att skapa kopior
- Alla filbehörigheter bevaras
Flytt mellan projekt
- Nya kopior av filer skapas i destinationsprojektets lagring
- Ursprungliga filer raderas asynkront efter lyckad kopiering
- Filbehörigheter kan uppdateras baserat på inställningar för destinationsprojektet
MEMBER
användare kan endast flytta filer de äger
Biverkningar
Att flytta en post utlöser flera automatiska åtgärder:
- Aktivitetsloggning - Skapar en aktivitetspost som visar flytten
- Meddelanden - Meddelar relevanta projektmedlemmar
- Webhooks - Utlöser
handleTodoMoved
webhook-händelse - Automatiseringar - Kör automatiseringar som är konfigurerade för postflyttningar
- Uppdateringar i realtid - Publicerar liveuppdateringar till alla anslutna klienter
- Diagramuppdateringar - Uppdaterar projektets diagram och statistik
Viktiga anteckningar
- Fullständig kopia: All postdata kopieras - du kan inte selektivt flytta endast vissa element
- Automatisk position: Poster placeras alltid i slutet av destinationslistan
- Restriktioner för tvärprojekt:
MEMBER
användare kan inte flytta poster mellan projekt - Asynkron städning: Filstädning sker i bakgrunden för flytt mellan projekt
- Bevarar historik: Kommentarer, aktiviteter och revisionsspår bevaras
- Webhook-händelser: Flyttoperationer utlöser både raderings- och skapandehändelser för realtidsynkronisering
Användningsfall
Omorganisering av arbete
Flytta poster mellan listor för att omorganisera projektstruktur eller arbetsflödesfaser.
Överföringar mellan projekt
Överför poster mellan projekt när arbete behöver flyttas till ett annat team eller fas.
Konsolidering av listor
Flytta poster när projektlistor ska kombineras eller omstruktureras.