TacheEntity.kt 32 lignes · 1233 octets
package fr.ebii.card2vcf.data

import androidx.room.Entity
import androidx.room.PrimaryKey

@Entity(tableName = "taches")
data class TacheEntity(
    @PrimaryKey(autoGenerate = true) val localId: Long = 0,
    val serverId: String? = null,
    val projetLocalId: Long? = null,
    val projetServerId: String = "",
    val titre: String = "",
    val description: String = "",
    val colonneId: String = "",
    val ordre: Int = 0,
    val assigneA: String? = null,
    /** Premier jour planifié, format ISO `AAAA-MM-JJ` (miroir Rust `debut`). */
    val debut: String? = null,
    /** Durée en jours **ouvrés** selon le rythme du projet. */
    val dureeJours: Int? = null,
    /** Étiquette normalisée ; la couleur s'en déduit (cf. `CouleurEtiquette`). */
    val etiquette: String? = null,
    /** Tâche parente (regroupement). Affichée, non éditable sur mobile. */
    val parentId: String? = null,
    /** Identifiants des tâches dont celle-ci dépend, en JSON. */
    val dependDeJson: String = "[]",
    /** Sous-tâches `{id, titre, fait}` en JSON (même forme que côté serveur). */
    val sousTachesJson: String = "[]",
    val auteur: String = "",
    val createdAt: Long = 0L,
    val updatedAt: Long = 0L,
)