task
Représente une tâche ou un élément à faire dans Rolebase. Les tâches sont associées à des cercles, peuvent être assignées à des membres et permettent le suivi de la progression avec des statuts et des dates d'échéance.
Champs
| Champ | Type | Description |
|---|---|---|
id | uuid | Identifiant unique de la tâche (généré automatiquement) |
orgId | uuid | Référence à l'organisation à laquelle cette tâche appartient |
circleId | uuid | Référence au cercle auquel cette tâche est associée |
memberId | uuid | Référence au membre assigné (optionnel) |
title | String | Titre de la tâche |
description | String | Description détaillée de la tâche |
status | Task_Status_Enum | Statut actuel : Open, InProgress, InReview, Blocked ou Done |
dueDate | Timestamp | Date d'échéance de la tâche (optionnel) |
createdAt | Timestamp | Date de création de la tâche (par défaut : horodatage actuel) |
archived | Boolean | Indique si la tâche est archivée (par défaut : false) |
private | Boolean | Indique si la tâche est privée (par défaut : false) |
Statut de la tâche
Le champ status accepte les valeurs d’énumération suivantes :
- Open — La tâche est ouverte et active
- InProgress — La tâche est en cours de réalisation
- InReview — La tâche est en cours de révision
- Blocked — La tâche est bloquée par une autre tâche ou un problème
- Done — La tâche est terminée
Relations
Relations objet
org— L’organisation à laquelle cette tâche appartientcircle— Le cercle auquel cette tâche est associéemember— Le membre assigné à cette tâche (le cas échéant)
Relations tableau
logs— Journaux d’activité suivant les modifications de cette tâche
Exemples de requêtes
Lister les tâches d’une organisation
query GetTasks($orgId: uuid!) {
task(where: { orgId: { _eq: $orgId } }) {
id
title
description
status
dueDate
circle {
role {
name
}
}
member {
name
}
logs {
createdAt
display
changes
}
}
}
Obtenir une tâche spécifique
query GetTask($id: uuid!) {
task_by_pk(id: $id) {
id
title
description
status
dueDate
circle {
role {
name
}
}
member {
name
}
}
}
Exemples de mutations
Créer une tâche
mutation CreateTask {
insert_task_one(
object: {
orgId: "your-org-id"
circleId: "circle-id"
title: "Implement new feature"
description: "Add user authentication to the app"
status: Open
dueDate: "2024-01-15T00:00:00Z"
memberId: "assigned-member-id"
}
) {
id
title
status
}
}
Mettre à jour une tâche
mutation UpdateTask {
update_task_by_pk(
pk_columns: { id: "task-id" }
_set: { status: InProgress, description: "Updated task description" }
) {
id
status
description
}
}
Permissions
L’accès aux tâches est contrôlé par plusieurs facteurs :
- Appartenance au cercle — Les participants du cercle peuvent accéder aux tâches de leur cercle
- Paramètres de confidentialité — Les tâches privées ne sont visibles que par les membres assignés et les participants du cercle
- Rôle dans l’organisation — Les membres de l’organisation peuvent accéder aux tâches non privées
- Assignation — Les membres assignés ont toujours accès à leurs tâches
Les tâches peuvent être organisées en vues personnalisées à l’aide de l’entité task_view. Les journaux d’activité suivent automatiquement les modifications de statut et d’assignation des tâches.