docs: Define first task for CLI execution (Excel Import)

This commit is contained in:
Moltbot-Jarvis
2026-02-18 11:55:55 +00:00
parent 10a94165ae
commit 94c666cb38

43
TASKS.md Normal file
View File

@@ -0,0 +1,43 @@
# TASKS.md - Offene Entwicklungs-Aufgaben
Dieses Dokument dient als zentrale Quelle für klar definierte Entwicklungs-Tasks.
---
## 1. Task: Excel-Import für CRM-Bestandsdaten
**Ziel:** Importieren einer Excel-Liste mit SuperOffice-Bestandsdaten in die Company Explorer Datenbank.
**Status:** `[TODO]`
**Dateien:**
* **Neu erstellen:** `company-explorer/backend/scripts/ingest_superoffice_excel.py`
**Anforderungen & Logik:**
1. **Abhängigkeiten:** Das Skript muss `pandas` und `openpyxl` verwenden, um die Excel-Datei zu lesen.
2. **Dateipfad:** Das Skript soll einen Dateipfad als Kommandozeilen-Argument akzeptieren (z.B. `python ... ingest.py /pfad/zur/datei.xlsx`).
3. **Datenbank-Verbindung:** Das Skript muss eine Verbindung zur `companies_v3_fixed_2.db` herstellen (die SQLAlchemy-Modelle aus `backend/database.py` nutzen).
4. **Spalten-Mapping:** Die Excel-Datei wird folgende Spalten haben (oder ähnlich):
* `Account ID` -> `crm_id`
* `Name` -> `crm_name`
* `Website` -> `crm_website`
* `Straße`, `PLZ`, `Stadt` -> `crm_address` (als formatierter String)
* `Ust ID` -> `crm_vat`
* `Branche` -> `industry_crm`
5. **Import-Logik (pro Zeile):**
* **Prüfe auf Dubletten:** Suche in der `companies` Tabelle, ob eine Firma mit der gleichen `website` (falls vorhanden) oder `name` **und** `city` bereits existiert.
* **Fall 1: Firma existiert (Match):**
* Aktualisiere den bestehenden Datensatz: Trage die `crm_id`, `crm_name`, `crm_address` etc. in die `crm_*` Felder ein.
* Setze den `status` auf `TO_ENRICH` (falls er `NEW` war).
* **Fall 2: Firma ist neu:**
* Lege einen neuen Datensatz in der `companies` Tabelle an.
* Befülle die `crm_*` Felder mit den Daten aus der Excel-Zeile.
* Setze den `name` und `website` (die "Golden Record"-Felder) initial ebenfalls auf die CRM-Werte.
* Setze den `status` auf `TO_ENRICH`.
**Akzeptanzkriterien:**
* Nach Ausführung des Skripts sind die Firmen aus der Excel-Datei in der `companies_v3_fixed_2.db` sichtbar.
* Bestehende Firmen werden mit CRM-Daten angereichert, neue Firmen werden angelegt.
---