v0.0.7: documenten met versies bij leads/klanten en relaties (tabel documents, versies in files; oude bestanden worden bij het starten versie 1 van een eigen document); woning = document met versies, de viewer toont de nieuwste (oudere via keuzelijst), nieuwe versie uploaden met opmerking, PDF's per woningversie; kaart (kaart-app, /kaart/) onder de woning en bij een klantrelatie zodra het adres bekend is, met de kavel en getekende woningen uit een kaveltoets-lead; blokken zonder gegevens verborgen; knop Bewerken in Tectum (TECTUM_URL) en API /api/tectum/woningen (lijst, ontwerp, nieuwe versie met conflictcontrole) met sleutel TECTUM_CRM_KEY

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Machiel
2026-10-16 19:40:51 +02:00
co-authored by Claude Opus 5.5
parent db3e26d258
commit c69c3773dc
9 changed files with 653 additions and 169 deletions
+17
View File
@@ -68,6 +68,23 @@ CREATE TABLE IF NOT EXISTS activities (
created_at TEXT NOT NULL
);
-- Documenten bij een contact (lead/klant) of relatie, elk met een of meer versies (tabel files). Soort: bestand,
-- woning (house-design-JSON uit Tectum; de nieuwste versie telt), werk/klant (PDF's van een woning: design_id).
CREATE TABLE IF NOT EXISTS documents (
id INTEGER PRIMARY KEY AUTOINCREMENT,
contact_id INTEGER REFERENCES contacts(id) ON DELETE CASCADE,
relation_id INTEGER REFERENCES relations(id) ON DELETE CASCADE,
kind TEXT NOT NULL DEFAULT 'bestand',
title TEXT NOT NULL DEFAULT '',
design_id INTEGER REFERENCES documents(id) ON DELETE CASCADE,
created_at TEXT NOT NULL,
updated_at TEXT NOT NULL
);
CREATE INDEX IF NOT EXISTS idx_documents_contact ON documents(contact_id, kind);
CREATE INDEX IF NOT EXISTS idx_documents_relation ON documents(relation_id, kind);
-- Bestanden: elke rij is één versie van een document (document_id, version). source_file_id bij een PDF = de
-- woningversie waarvan hij gemaakt is. title/kind/design_id zijn van vóór de documenten (alleen nog voor de migratie).
CREATE TABLE IF NOT EXISTS files (
id INTEGER PRIMARY KEY AUTOINCREMENT,
contact_id INTEGER REFERENCES contacts(id) ON DELETE CASCADE,