Backend: Ajout système d'archivage et todos dans cartes

- Migration auto colonne archived (BOOLEAN DEFAULT 0)
- Route GET /api/notes?archived=true/false pour filtrer
- Route PUT /api/notes/:id/archive pour archiver/désarchiver
- Chargement des todos avec chaque note (todos[], todos_count, todos_completed)
- Support filtrage par statut archivé
- Logs archivage/désarchivage
This commit is contained in:
Claude committed 2025-11-11 13:56:10 +00:00
1 parent 95f4d3b50b
commit 40caa7cb35
2 files changed
+60 -6

No files matched your search

+13 -1
View File
@@ -81,7 +81,7 @@ function initDatabase() {
logger.info('✓ Tables de base de données créées avec succès');
// Migration: Ajouter image_filename si elle n'existe pas
// Migrations automatiques
db.all("PRAGMA table_info(notes)", (err, columns) => {
if (err) {
logger.error('Erreur lors de la vérification de la structure de la table notes:', err);
@@ -89,6 +89,7 @@ function initDatabase() {
}
const hasImageFilename = columns.some(col => col.name === 'image_filename');
const hasArchived = columns.some(col => col.name === 'archived');
if (!hasImageFilename) {
logger.info('Migration: Ajout de la colonne image_filename...');
@@ -100,6 +101,17 @@ function initDatabase() {
}
});
}
if (!hasArchived) {
logger.info('Migration: Ajout de la colonne archived...');
db.run('ALTER TABLE notes ADD COLUMN archived BOOLEAN DEFAULT 0', (err) => {
if (err) {
logger.error('Erreur lors de l\'ajout de la colonne archived:', err);
} else {
logger.info('✓ Colonne archived ajoutée avec succès');
}
});
}
});
// Créer l'utilisateur admin par défaut si la table est vide