kundenkarte/ChangeLog.md
data 840c0132c3 Version 5.0.0 - Cytoscape.js Graph-Ansicht & Verbindungsformular
Neues Feature: Interaktive Netzwerk-Visualisierung mit Cytoscape.js
- Raeume als Compound-Container, Geraete als Nodes
- Kabelverbindungen als Edges (auch raumuebergreifend)
- Zwei Layout-Modi: Raeumlich (cose-bilkent) / Technisch (dagre)
- Zoom/Pan/Fit, Mausrad-Zoom, Node-Positionen speicherbar
- Kabeltyp-Legende, Viewport-Persistenz
- Admin-Setting KUNDENKARTE_DEFAULT_VIEW (tree/graph)

Verbindungsformular verbessert:
- Select-Dropdowns zeigen nur Geraete (keine Gebaeude)
- Icons via select2, Gebaeude-Pfad als Kontext
- Systemuebergreifende Auswahl, Dolibarr-Action-Konvention

Bugfixes:
- Kontakt-Redirect nach Verbindung-Bearbeitung
- contactid in allen Edit-URLs von contact_anlagen.php

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 06:20:14 +01:00

182 lines
6.9 KiB
Markdown
Executable file

# CHANGELOG MODULE KUNDENKARTE FOR [DOLIBARR ERP CRM](https://www.dolibarr.org)
## 5.0.0 (2026-02)
### Neue Features
- **Cytoscape.js Graph-Ansicht**: Neue interaktive Netzwerk-Visualisierung
- Raeume als Compound-Container, Geraete als Nodes darin
- Kabelverbindungen als sichtbare Edges (auch raumuebergreifend)
- Durchgeschleifte Leitungen als gestrichelte Linien
- Zwei Layout-Modi per Knopfdruck:
- **Raeumlich** (cose-bilkent): Geraete gruppiert nach Raeumen
- **Technisch** (dagre): Hierarchischer Stromfluss top-down
- Zoom/Pan/Fit-Controls, Mausrad-Zoom Toggle
- Kabeltyp-Legende mit Farben
- Node-Positionen speicherbar (Drag&Drop → AJAX-Speicherung)
- Viewport-Persistenz (Zoom/Pan bleibt beim Seitenwechsel)
- Klick auf Node/Edge oeffnet Detail-/Bearbeitungsseite
- Admin-Setting: Ansichtsmodus (Baum/Graph) in Setup waehlbar
- **Verbindungsformular verbessert**
- Select-Dropdowns zeigen nur Geraete (keine Gebaeude/Raeume)
- Icons (FontAwesome) in Select-Optionen via select2
- Gebaeude-Pfad als Kontext (z.B. "EG > Zahlerschrank")
- Systemuebergreifende Geraete-Auswahl (kein Systemfilter)
### Neue Dateien
- `js/kundenkarte_cytoscape.js` - Graph-Namespace (~750 Zeilen)
- `css/kundenkarte_cytoscape.css` - Graph-Styles mit Dark Mode
- `ajax/graph_data.php` - AJAX: Baum+Verbindungen → Cytoscape-Format
- `ajax/graph_save_positions.php` - AJAX: Node-Positionen speichern
- `js/cytoscape.min.js`, `js/dagre.min.js`, `js/cytoscape-dagre.js`, `js/cytoscape-cose-bilkent.js` - Bibliotheken
### Bugfixes
- **Verbindung hinzufuegen**: Formular zeigte "Feld erforderlich"-Fehler beim Oeffnen
- Ursache: `action=create` in URL triggerte Handler vor Formular-Anzeige
- Fix: Korrekte Dolibarr-Konvention (create=Formular, add=Verarbeitung)
- **Leere Dropdowns**: Quelle/Ziel-Auswahl war leer wenn System keine Elemente hatte
- Fix: Kein System-Filter mehr (Kabel koennen systemuebergreifend sein)
- **Kontakt-Redirect**: Nach Verbindung-Bearbeiten landete man auf Kundenansicht statt Kontaktansicht
- Fix: `contactid` wird jetzt in allen Edit-URLs mitgegeben
- **Kontakt-Anlagen**: Auf Stand von Kunden-Anlagen gebracht
- tree_display_mode, badge_color, Schaltplan-Editor, Drag&Drop Upload
### Datenbank-Aenderungen
- Neue Spalten `graph_x`, `graph_y` in `llx_kundenkarte_anlage` (Node-Positionen)
- Neue Spalte `fk_building_node` in `llx_kundenkarte_anlage` (vorbereitet fuer Phase 2)
### Admin-Settings
- `KUNDENKARTE_DEFAULT_VIEW`: `tree` (Standard) oder `graph`
---
## 4.0.1 (2026-02)
### Neue Features
- **Badge-Farben pro Feld**: Individuelle Farben fuer Badges im Baum konfigurierbar
- Neue Spalte in Admin > Element-Typen > Felder
- Color-Picker fuer einfache Farbauswahl
- Hex-Format (#RRGGBB)
- **Datei-Vorschau Tooltip**: Hover ueber Datei-Badge zeigt Vorschau
- Thumbnails fuer Bilder
- Icons fuer Dokumente (PDF, Word, Excel, etc.)
- Neuer AJAX-Endpoint `ajax/file_preview.php`
- **Mobile/Kompakte Ansicht**: Optimiert fuer mobile Geraete
- Kompakt-Modus Toggle-Button
- Einheitliche Button-Groessen auf mobilen Geraeten
- 2x2 Grid-Layout auf sehr kleinen Bildschirmen
- Touch-freundliche Bedienelemente
### Bugfixes
- **Dolibarr App Navigation**: Vor/Zurueck-Pfeile funktionieren jetzt korrekt
- Module akzeptieren nun `id` UND `socid`/`contactid` Parameter
- Kunden-Kontext bleibt beim Navigieren erhalten
- Betroffene Dateien: alle Tab-PHP-Files
- **Datei-Badge Icon**: Zeigt jetzt Bueroklammer-Icon statt nur Zahl
- **Kontakt-Anlagen Kategorie-Filter**: Fehlende Kategorie-Auswahl hinzugefuegt
- Gebaeude/Standort vs. Technisches Element jetzt auch bei Kontakten waehlbar
- Strom-Typen sind jetzt auswaehlbar
- **Schematic Editor**: Hutschiene hinzufuegen Button bei leerem Panel
- Button erscheint jetzt auch wenn noch keine Hutschiene existiert
- **Panel-Hoehe**: Korrektur der Berechnung bei mehreren Hutschienen
- Unterer Rand wird nicht mehr abgeschnitten
### Datenbank-Aenderungen
- Neue Spalte `badge_color` in `llx_kundenkarte_anlage_type_field`
---
## 3.5.0 (2026-02)
### Neue Features
- **Drag & Drop Sortierung**: Elemente im Anlagenbaum per Drag & Drop umsortieren
- Geschwister-Elemente auf gleicher Ebene verschieben
- Visuelle Drop-Indikatoren (blaue Linie)
- Reihenfolge wird sofort per AJAX gespeichert (kein Seitenreload)
- Funktioniert in Kunden- und Kontakt-Anlagen
### Bugfixes
- **Duplicate-Key-Fehler behoben**: UNIQUE KEY `uk_kundenkarte_societe_system` um `fk_contact` erweitert
- Systeme koennen nun gleichzeitig auf Kunden- und Kontaktebene existieren
- Migration wird automatisch beim Modul-Aktivieren ausgefuehrt
### Verbesserungen
- Visueller Abstand zwischen Root-Elementen im Anlagenbaum
- INSERT fuer Kunden-Systeme setzt explizit `fk_contact = 0`
---
## 2.0 (2026-01)
### Neue Features
- **PDF Export mit Vorlage**: Briefpapier/Hintergrund-PDF kann als Vorlage hochgeladen werden
- Upload im Admin-Bereich unter Einstellungen
- Vorlage wird als Hintergrund auf allen Seiten verwendet
- **PDF Schriftgroessen konfigurierbar**: Anpassbare Schriftgroessen fuer den PDF-Export
- Ueberschriften (7-14pt)
- Inhalte (6-12pt)
- Feldbezeichnungen (5-10pt)
- **Verbesserte PDF-Baumdarstellung**: Professionelle Darstellung der Anlagenstruktur
- Farbcodierte Header pro Hierarchie-Ebene (dezente Grauabstufungen)
- Abgerundete Rahmen um Elemente
- Visuelle Verbindungslinien zwischen Elementen
- Bessere Einrueckung und Lesbarkeit
### Verbesserungen
- Logo aus PDF-Export entfernt (ersetzt durch Vorlagen-System)
- Dynamische Felder fuer Element-Typen (Ueberschrift als neuer Feldtyp)
- Kopierfunktion fuer Elemente und Typen
---
## 1.1 (2026-01)
### Neue Features
- **Kontakt/Adressen-Unterstuetzung**: Favoriten und Anlagen koennen nun auch auf Kontakt-/Adressebene verwaltet werden
- Ideal fuer Kunden mit mehreren Gebaeuden/Standorten
- Neue Tabs "Favoriten" und "Anlagen" auf Kontaktkarten
- Vollstaendige Trennung der Daten zwischen Kunde und Kontakten
### Verbesserungen
- Mengen-Eingabe bei Favoriten vereinfacht (Textfeld + Speichern-Button)
- Modul-Icon geaendert zu fa-id-card
- Dokumentation aktualisiert
### Datenbank-Aenderungen
- Neue Spalte `fk_contact` in Tabelle `llx_kundenkarte_favorite_products`
- Neue Spalte `fk_contact` in Tabelle `llx_kundenkarte_anlage`
- Neue Spalte `fk_contact` in Tabelle `llx_kundenkarte_societe_system`
### Hinweis zum Upgrade
Nach dem Update bitte das Modul einmal deaktivieren und wieder aktivieren, damit die SQL-Aenderungen ausgefuehrt werden.
---
## 1.0
### Features
- Favoriten-Produkte fuer Kunden
- Produkte als Favoriten markieren
- Standardmengen festlegen
- Bestellungen aus Favoriten generieren
- Sortierbare Liste
- Technische Anlagen (Baumstruktur)
- Systemkategorien (Strom, Internet, Kabel, Sat)
- Konfigurierbare Element-Typen
- Individuelle Felder pro Typ
- Datei-Upload mit Vorschau
- Hierarchische Struktur
- Admin-Bereich
- Systeme verwalten
- Typen verwalten
- Felder konfigurieren
Initial version