# Migrations-Plan: Legacy GSheets -> Company Explorer (Robotics Edition v0.8.5) **Kontext:** Strategische Neuausrichtung der Lead-Analyse für RoboPlanet. **Zentrale Philosophie:** Trennung von CRM-Historie ("Was wir wissen") und KI-Recherche ("Was aktuell wahr ist"). ## 14. Detaillierte Logik der neuen Datenfelder (v2.0) ... (Kapitel 14 bleibt unverändert) ... ## 15. Offene Arbeitspakete (Bauleitung) ### Task 1: UI-Implementierung "Data Match & Strategy" (In Arbeit / Teilweise erledigt durch Gemini CLI) ### Task 2: Intelligenter CRM-Importer (Bestandsdaten) **Ziel:** Importieren der `demo_100.xlsx` in die SQLite-Datenbank unter Berücksichtigung von Dubletten und Datenqualität. **Dateien:** * `company-explorer/backend/scripts/ingest_superoffice_excel.py` **Anforderungen & Logik:** 1. **Dateihandling:** * Nutze `openpyxl` (oder `pandas`, falls im Container installiert). * **WICHTIG:** Die Spalte `PLZ` muss zwingend als **String** eingelesen werden, um führende Nullen (z.B. 01234) zu erhalten. * Normalisiere die Spalte `Website`: Entferne `https://`, `http://`, `www.` und abschließende Slashes. 2. **Matching-Logik (Deduplizierung):** * Suche in Tabelle `companies` nach: * a) `crm_id` (falls in DB bereits vorhanden). * b) `crm_vat` (Ust-ID Match). * c) Normalisierte Domain (Website). * d) Fuzzy Name + Stadt (Score < 1.0). 3. **Update-Prozess:** * **Match gefunden:** Befülle nur die `crm_*` Spalten (`crm_name`, `crm_address`, `crm_website`). Ändere NICHT die Felder `name` oder `website`, falls diese schon durch Recherche befüllt wurden. * **Kein Match:** Lege neuen Record an. Kopiere CRM-Werte initial in `crm_*` UND in die Golden-Record Felder (`name`, `website`). * **Status:** Setze `status` auf `TO_ENRICH`. 4. **Länder-Fokus:** * Gehe davon aus, dass alle Leads für den deutschen Markt sind (`country="DE"`). **Akzeptanzkriterien:** * Skript läuft ohne Fehler durch. * In der SQLite-DB sind die `crm_` Felder befüllt. * Führende Nullen bei PLZ bleiben erhalten.