Files
breakpilot-compliance/backend-compliance/migrations/109_full_template_cleanup.sql
T
Benjamin Admin 4b9cf34243 feat: Full template cleanup + categories by use case
Cleanup (109):
- Removed DPA duplicates (v1 DE + v1 EN, kept v2 DE)
- Removed cookie_banner duplicate (kept larger with IF-blocks)
- Removed impressum duplicate (kept larger with IF-blocks)
- Removed TOM duplicate (kept newest)
- Removed DSFA v1 (kept v2)
- Kept all 8 VVT templates (1 main + 7 industry templates)
- DB: 98 → 88 templates, 0 duplicates remaining

Categories restructured by use case:
- Website/App: DSI, Impressum, Cookie, Social Media
- Online-Shop: AGB, Widerruf, DSI, Cookie
- SaaS/Cloud: AGB, AVV, SLA, Cloud Agreement
- App/Plattform: Nutzungsbedingungen, Community Guidelines, AUP
- Vertraege (B2B): AVV, NDA, SLA, Cloud
- DSGVO-Pflichten: TOM, VVT, Loeschkonzept, DSFA
- Sicherheitskonzepte + Richtlinien (separate categories)
- HR & Mitarbeiter, Daten-Governance, Vendor, BCM

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-03 07:09:16 +02:00

79 lines
3.1 KiB
SQL

-- Migration 109: Vollstaendige Template-Bereinigung
-- Entfernt Duplikate, behaelt jeweils die neueste/groesste Version
-- ===========================================================================
-- 1. DPA: Behalte v2 DE (unseres aus 088), loesche v1 DE + v1 EN
-- ===========================================================================
DELETE FROM compliance_legal_templates
WHERE document_type = 'dpa'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
AND version != '2.0'
AND language = 'de';
DELETE FROM compliance_legal_templates
WHERE document_type = 'dpa'
AND language = 'en'
AND version = '1.0.0'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e';
-- ===========================================================================
-- 2. Cookie-Banner: Behalte das groessere (IF-Bloecke), loesche das kleinere
-- ===========================================================================
DELETE FROM compliance_legal_templates
WHERE document_type = 'cookie_banner'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
AND id != (
SELECT id FROM compliance_legal_templates
WHERE document_type = 'cookie_banner'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
ORDER BY length(content) DESC
LIMIT 1
);
-- ===========================================================================
-- 3. Impressum: Behalte das groessere (IF-Bloecke), loesche das kleinere
-- ===========================================================================
DELETE FROM compliance_legal_templates
WHERE document_type = 'impressum'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
AND id != (
SELECT id FROM compliance_legal_templates
WHERE document_type = 'impressum'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
ORDER BY length(content) DESC
LIMIT 1
);
-- ===========================================================================
-- 4. TOM: Behalte das neueste, loesche Duplikat
-- ===========================================================================
DELETE FROM compliance_legal_templates
WHERE document_type = 'tom_documentation'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
AND id != (
SELECT id FROM compliance_legal_templates
WHERE document_type = 'tom_documentation'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
ORDER BY updated_at DESC
LIMIT 1
);
-- ===========================================================================
-- 5. DSFA: Behalte v2 (groesser), loesche v1
-- ===========================================================================
DELETE FROM compliance_legal_templates
WHERE document_type = 'dsfa'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
AND id != (
SELECT id FROM compliance_legal_templates
WHERE document_type = 'dsfa'
AND tenant_id = '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e'
ORDER BY length(content) DESC
LIMIT 1
);
-- ===========================================================================
-- 6. VVT: NICHT loeschen — alle 7 behalten (Branchenvorlagen sind wertvoll)
-- ===========================================================================
-- Keine Aktion