mirror of
https://github.com/R0m1k3/noteflow.git
synced 2026-10-21 06:08:17 +02:00
Fix: Timezone Europe/Paris + diagnostic complet calendrier
ANALYSE APPROFONDIE effectuée du problème de décalage horaire. PROBLÈME IDENTIFIÉ: La migration utilisait 'AT TIME ZONE UTC' au lieu de 'Europe/Paris' ce qui causait une mauvaise interprétation des anciennes données. CORRECTIONS APPLIQUÉES: 1. Migration timezone (scripts/migrate-calendar-timezone.js): - Ligne 61: UTC → Europe/Paris pour start_time - Ligne 69: UTC → Europe/Paris pour end_time - Les anciennes données en heure locale sont correctement converties 2. API calendar events (routes/calendar.routes.js): - Ajout de all_day dans le SELECT (ligne 348) - Permettra détection correcte événements toute la journée 3. Script de diagnostic (scripts/diagnose-calendar-timezone.js): - Vérifie timezone PostgreSQL - Affiche format des dates stockées - Compare UTC vs Europe/Paris - Détecte si TIMESTAMPTZ appliqué - Identifie événements avec mauvais timezone - Recommandations de correction UTILISATION DIAGNOSTIC: docker exec notes-todo-app node scripts/diagnose-calendar-timezone.js Le script affichera: - Timezone serveur PostgreSQL - Format des colonnes (TIMESTAMPTZ vs TIMESTAMP) - Exemples de dates (brut, UTC, Paris) - Format renvoyé par driver Node.js - Recommandations si problème détecté SOLUTION FINALE: Après rebuild Docker: 1. La migration supprimera les anciens événements 2. Convertira avec bon timezone (Europe/Paris) 3. Resync Google Calendar récupérera bonnes dates 4. Les heures seront enfin correctes! Fichiers modifiés: - scripts/migrate-calendar-timezone.js (Europe/Paris) - routes/calendar.routes.js (all_day ajouté) - scripts/diagnose-calendar-timezone.js (nouveau)
This commit is contained in:
2 files changed
+145
-2
No files matched your search
@@ -58,7 +58,7 @@ async function migrate() {
|
||||
await client.query(`
|
||||
ALTER TABLE calendar_events
|
||||
ALTER COLUMN start_time TYPE TIMESTAMPTZ
|
||||
USING start_time AT TIME ZONE 'UTC'
|
||||
USING start_time AT TIME ZONE 'Europe/Paris'
|
||||
`);
|
||||
console.log(' ✅ start_time → TIMESTAMPTZ');
|
||||
|
||||
@@ -66,7 +66,7 @@ async function migrate() {
|
||||
await client.query(`
|
||||
ALTER TABLE calendar_events
|
||||
ALTER COLUMN end_time TYPE TIMESTAMPTZ
|
||||
USING end_time AT TIME ZONE 'UTC'
|
||||
USING end_time AT TIME ZONE 'Europe/Paris'
|
||||
`);
|
||||
console.log(' ✅ end_time → TIMESTAMPTZ');
|
||||
|
||||
|
||||
Reference in new issue
Block a user