- ChangeLog: v8.5 (Werkzeuge, Zubehör, Ausgebaut) und v8.6 (has_product, Decommissioned-Default, Select2-Fix) - CLAUDE.md: Neue Abschnitte für Ausgebaut-Status, Mein Betrieb, Select2-Kategorie-Filter Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
360 lines
14 KiB
Markdown
360 lines
14 KiB
Markdown
# CHANGELOG MODULE KUNDENKARTE FOR [DOLIBARR ERP CRM](https://www.dolibarr.org)
|
|
|
|
## 8.6 (2026-03)
|
|
|
|
### Neue Features
|
|
|
|
- **has_product Typ-Flag**: Produkt-Zuordnung pro Element- und Gebaeudetyp ein-/abschaltbar
|
|
- Neue Checkbox "Produkt-Zuordnung" in Admin > Element-Typen und Gebaeudetypen
|
|
- Produkt-Zeile im Formular wird per JS dynamisch ein-/ausgeblendet je nach Typ
|
|
- `data-has-product` und `data-has-accessories` Attribute auf Options fuer JS-Steuerung
|
|
|
|
- **Decommissioned Default-Setting**: Standard-Sichtbarkeit fuer ausgebaute Elemente
|
|
- Neues Admin-Setting `KUNDENKARTE_SHOW_DECOMMISSIONED` unter Einstellungen
|
|
- Toggle-Button startet mit Admin-Default in allen 3 Ansichten (Kunden, Kontakte, Mein Betrieb)
|
|
- Tree-Div erhaelt `show-decommissioned` CSS-Klasse basierend auf Setting
|
|
|
|
### Bugfixes
|
|
|
|
- **Select2 Typ-Select im Edit-Modus**: Wert wurde nicht angezeigt beim Bearbeiten
|
|
- Ursache: Wert wurde vor Select2-Initialisierung gesetzt ohne `.trigger("change")`
|
|
- Fix: Wert wird jetzt nach `initSelect2()` mit Trigger gesetzt
|
|
- Betrifft: anlagen.php und contact_anlagen.php (Kategorie-Filter mit Select2)
|
|
|
|
- **Fehlende color-Property**: `fetchAllBySystem()` hat `$type->color` nicht gesetzt
|
|
- Options mit `data-color` Attribut hatten leeren Wert
|
|
|
|
### Datenbank-Aenderungen
|
|
|
|
- Neue Spalte `has_product` (tinyint) in `llx_kundenkarte_anlage_type`
|
|
- Neue Spalte `has_product` (tinyint) in `llx_kundenkarte_building_type`
|
|
- Migration `migrate_v860_has_product()` in modKundenKarte.class.php
|
|
|
|
---
|
|
|
|
## 8.5 (2026-03)
|
|
|
|
### Neue Features
|
|
|
|
- **Mein Betrieb (Werkzeuge & Maschinen)**: Eigene Baumansicht fuer Firmen-Equipment
|
|
- Neue Seite `werkzeuge.php` mit System-Tabs, Baum und Graph-Ansicht
|
|
- Neues System "WERKZEUG" fuer firmeneigene Geraete
|
|
- Menue-Eintrag unter KundenKarte > Mein Betrieb
|
|
|
|
- **Zubehoer-System**: Zubehoer und Ersatzteile pro Anlage zuordnen
|
|
- Neue Klasse `AnlageAccessory` mit CRUD und Bestellfunktion
|
|
- Lieferantenbestellung direkt aus Zubehoer-Liste generierbar
|
|
- Typ-Flag `has_accessories` steuert Verfuegbarkeit pro Typ
|
|
|
|
- **Produkt-Zuordnung**: Dolibarr-Produkt mit Anlage verknuepfen
|
|
- `fk_product` Spalte in `llx_kundenkarte_anlage`
|
|
- Autocomplete-Suche im Formular
|
|
- Produkt-Details (Ref, Label, Preis) unter Element im Baum
|
|
|
|
- **Ausgebaut-Status**: Anlagen als "ausgebaut" markieren
|
|
- Toggle per Rechtsklick/Button am Element
|
|
- Ausgebaute Elemente ausgegraut (opacity 0.4, dashed border)
|
|
- Toggle-Button in Toolbar zum Ein-/Ausblenden
|
|
- Ausbaudatum wird erfasst und angezeigt
|
|
|
|
### Datenbank-Aenderungen
|
|
|
|
- Neue Spalte `decommissioned` in `llx_kundenkarte_anlage`
|
|
- Neue Spalte `date_decommissioned` in `llx_kundenkarte_anlage`
|
|
- Neue Spalte `fk_product` in `llx_kundenkarte_anlage`
|
|
- Neue Spalte `has_accessories` in `llx_kundenkarte_anlage_type`
|
|
- Neue Tabelle `llx_kundenkarte_anlage_accessory`
|
|
- Neues System `WERKZEUG` in `llx_c_kundenkarte_anlage_system`
|
|
|
|
---
|
|
|
|
## 7.5 (2026-03)
|
|
|
|
### Neue Features
|
|
|
|
- **FI/RCD-Schutzgruppen**: Equipment kann Schutzgeraeten zugeordnet werden
|
|
- Farbliche Markierung der Schutzgruppen im Schaltplan
|
|
- Dropdown zur Auswahl des Schutzgeraets im Equipment-Dialog
|
|
- Visuelle Verbindung durch farbige Raender
|
|
|
|
- **Gebuendelte Terminals**: Multi-Phasen-Abgaenge fuer Drehstrom-Verbraucher
|
|
- "Alle buendeln" Option fuer E-Herd, Durchlauferhitzer etc.
|
|
- Ein Abgang belegt alle Terminals des Equipment
|
|
- Zentrierter Pfeil ueber alle Terminals
|
|
|
|
- **Terminal-Konfiguration**: Korrekte Terminal-Anzahl aus Typ-Konfiguration
|
|
- Neozed 3F zeigt 3 statt 4 Terminals (trotz 4 TE Breite)
|
|
- Neue `getTerminalCount()` Hilfsfunktion
|
|
|
|
- **Zuletzt bearbeitete Kunden**: Quick-Access auf Search-Screen
|
|
- Speichert die letzten 5 bearbeiteten Kunden
|
|
- Schneller Zugriff ohne Suche
|
|
|
|
- **Medium-Typen aus Datenbank**: Dynamisches Kabeltyp-Dropdown
|
|
- Kategorisierte Auswahl (NYM, NYY, Datenkabel, etc.)
|
|
- Querschnitt-Spezifikationen als Unter-Dropdown
|
|
- Offline-Cache fuer die Auswahl
|
|
|
|
### Verbesserungen
|
|
|
|
- Terminal-Labels anklickbar zum direkten Bearbeiten
|
|
- Kontextmenue fuer leere Terminals (Wahl Input/Output)
|
|
- Equipment-Block-Value (B16A) kleiner dargestellt (8px)
|
|
- Terminals direkt am Equipment-Block ausgerichtet
|
|
- Block-Label mit Einheiten und Leerzeichen (40A 30mA)
|
|
|
|
### Bugfixes
|
|
|
|
- Abgaenge werden nach Positionswechsel (oben/unten) korrekt angezeigt
|
|
- Bundle-Option nur bei Equipment mit mehr als 1 Terminal sichtbar
|
|
- Login-Fehler durch doppelte Variable-Deklaration behoben
|
|
|
|
### Datenbank-Aenderungen
|
|
|
|
- Neue Spalte `bundled_terminals` in `llx_kundenkarte_equipment_connection`
|
|
- Neue Spalten `fk_protection`, `protection_label` in `llx_kundenkarte_equipment`
|
|
|
|
---
|
|
|
|
## 5.2.0 (2026-02)
|
|
|
|
### Neue Features
|
|
|
|
- **PWA Mobile App**: Offline-faehige Progressive Web App fuer Elektriker
|
|
- Schaltschrank-Dokumentation direkt vor Ort im Keller (ohne Internet)
|
|
- Kundensuche, Anlagen-Auswahl, Felder/Hutschienen/Automaten erfassen
|
|
- Token-basierte Authentifizierung (15 Tage gueltig)
|
|
- Automatische Synchronisierung wenn wieder online
|
|
- Installierbar auf dem Smartphone Home Screen
|
|
- Touch-optimiertes Dark Mode Design
|
|
- Quick-Select fuer Automaten-Werte (B16, C32, etc.)
|
|
|
|
- **Schaltplan-Editor: Block Hover-Tooltip**
|
|
- Zeigt alle Felder mit `show_in_hover=1` Einstellung
|
|
- Produktinfo mit Icon wenn Produkt zugewiesen
|
|
- Position und Breite in TE
|
|
- Schickes dunkles Design
|
|
|
|
- **Schaltplan-Editor: Produkt-Zuordnung**
|
|
- Autocomplete-Suche fuer Produkte beim Hinzufuegen/Bearbeiten
|
|
- Produktinfo im Klick-Popup angezeigt
|
|
|
|
### Verbesserungen
|
|
|
|
- Equipment-Popup zeigt jetzt Produktinfo mit Cube-Icon
|
|
- Loeschbestaetigung fuer Panels und Hutschienen mit Inhalt
|
|
|
|
### Neue Dateien
|
|
- `pwa.php` - PWA Haupteinstieg
|
|
- `pwa_auth.php` - Token-basierte Authentifizierung
|
|
- `ajax/pwa_api.php` - PWA AJAX API
|
|
- `js/pwa.js` - PWA JavaScript App
|
|
- `css/pwa.css` - PWA Mobile Styles
|
|
- `sw.js` - Service Worker (Offline-Cache)
|
|
- `manifest.json` - PWA Web App Manifest
|
|
- `img/pwa-icon-192.png`, `img/pwa-icon-512.png` - App Icons
|
|
|
|
---
|
|
|
|
## 5.1.0 (2026-02)
|
|
|
|
### Verbesserungen
|
|
- **Graph-Ansicht: Intelligente Feldanzeige**
|
|
- Felder nach `position` sortiert (nicht mehr nach JSON-Reihenfolge)
|
|
- Nur Felder mit `show_in_tree=1` werden auf den Graph-Nodes angezeigt
|
|
- Nur Felder mit `show_in_hover=1` erscheinen im Tooltip
|
|
- Badge-Werte im Graph mit Feldbezeichnung (z.B. "Hersteller: ABB")
|
|
- Tooltip: Typ/System entfernt (redundant mit Graph-Node)
|
|
- Tooltip: Farbige Badge-Kaesten wie in der Baumansicht
|
|
- Shared Library `lib/graph_view.lib.php` fuer Toolbar/Container/Legende
|
|
|
|
### Neue Dateien
|
|
- `lib/graph_view.lib.php` - Gemeinsame Graph-Funktionen (Toolbar, Container, Legende)
|
|
|
|
---
|
|
|
|
## 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
|
|
- Dagre-Layout: Hierarchischer Stromfluss top-down
|
|
- Zoom/Pan/Fit-Controls, Mausrad-Zoom Toggle
|
|
- Kabeltyp-Legende mit Farben
|
|
- **Bearbeitungsmodus**: Nodes nur per "Anordnen"-Button verschiebbar,
|
|
Positionen per "Speichern"-Button fest, "Abbrechen" setzt zurueck
|
|
- Viewport-Persistenz (Zoom/Pan bleibt beim Seitenwechsel)
|
|
- Klick auf Node/Edge oeffnet Detail-/Bearbeitungsseite
|
|
- Suche als Overlay im Graph-Container (Nodes hervorheben/abdunkeln)
|
|
- Kontextmenue (Rechtsklick): Ansehen, Bearbeiten, Kopieren, Loeschen
|
|
- PNG-Export des Graphen
|
|
- Admin-Setting: Ansichtsmodus (Baum/Graph) in Setup waehlbar
|
|
- Toolbar zweizeilig: Aktionen oben, Graph-Steuerung unten
|
|
|
|
- **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
|
|
- **Contact-Filter im Graph**: Graph zeigte faelschlicherweise Kontakt-Elemente auf Kunden-Ebene
|
|
- Fix: `fk_contact` Filter in `graph_data.php` analog zum Baum
|
|
- **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
|