Obelica Docs
Migrazioni

Import calendario Wash Dog + reset clienti

Reset di clienti/cani/appuntamenti in produzione e import dallo storico Google Calendar

Import calendario Wash Dog + reset clienti

Data: 2026-07-05.

Obiettivo

Azzerare i dati anagrafici/operativi di produzione (clienti di test accumulati) e ripopolare wash_dog_db a partire dall'export Google Calendar del cliente (ferrara@washdog.it.ics, 1683 eventi 2021-2026).

Scope deciso col cliente

  • Solo eventi futuri (dal 2026-07-05): 128 eventi → 96 appuntamenti importabili.
  • Voci non-appuntamento scartate (ferie/chiusure, note personali, slot "Open").
  • Clienti: consolidati per nome + telefono; cognome mancante → ASSENTE; telefono mancante (88% dei casi) → placeholder 0000000000.
  • Cani: taglia/pelo inferiti dalla razza (default media/corto); razza nel campo breed.
  • Servizi: creati i 10 tipi trovati nell'export (Bagno, Bagno + taglio, ecc.), prezzo 0 da impostare. I 6 servizi preesistenti restano.

Sicurezza

  • Backup completo pre-operazione: pg_dump -Fc di wash_dog_db in ~/Documents/OBELICA SERVER/backups-manuali/wash_dog_db-pre-reset-20260705-152251.dump (295 KB, 40 blocchi TABLE DATA). Restore: pg_restore --clean --if-exists -d <url> <dump>.
  • Verifica del target: DATABASE_URL di produzione punta al pool wash_dog_pool → database wash_dog_db (2077 clienti pre-reset, coerente con quanto atteso).
  • SQL validato prima su DB locale (stessa schema) in transazione con ROLLBACK.
  • Esecuzione in transazione singola (psql -1 -v ON_ERROR_STOP=1).

Risultato

TabellaPrePost
customers207776
dogs18795
appointments12296
services616 (+10 creati)

appointment_dogs: 108 · appointment_items: 70. Smoke test admin/staff 200 OK.

Pendenze

  • ~15 eventi futuri senza proprietario estraibile (es. "Ice x/12" a pacchetto, "Azzini Elisabetta" cognome+tel senza "di") scartati e da recuperare a mano se serve.
  • Prezzi dei servizi creati a 0.
  • Possibili clienti omonimi da accorpare (Anna Maria/Anna, Sara con/senza tel).
  • Storico pre-2026-07-05 (~1550 eventi) non importato.

On this page