- Kategorie-Baum mit Farben, Auf-/Zuklappen und Inline-Bearbeitung - AJAX-Handler für Produkt- und Kategorieaktionen (Best EK, Status-Toggle) - Admin: Ref-Schema und Standard-Aufklapp-Einstellung - CSS/JS erweitert für Baumansicht und modale Dialoge - bin/ zu .gitignore hinzugefügt Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
4.9 KiB
Executable file
4.9 KiB
Executable file
Produktverwaltung - Dolibarr Modul
Kategorie-Baumansicht mit Inline-Editing und Produktverwaltung für Dolibarr ERP & CRM.
Features
- Kategorie-Baumansicht - Hierarchische Darstellung aller Produktkategorien mit Auf-/Zuklappen
- Inline-Editing - Doppelklick auf Ref, Label oder Beschreibung zum direkten Bearbeiten
- Best EK-Anzeige - Günstigster Lieferantenpreis mit 3-Zeichen Lieferanten-Badge
- Marge-Berechnung - Automatische Berechnung des Aufschlags (VK-EK)/EK mit Farbmarkierung
- Kategorie-Management - Erstellen, Bearbeiten, Löschen von Kategorien mit 20 Farb-Swatches
- Produkte ohne Kategorie - Eigene Sektion mit visueller Warnung
- Ref-Schema-Hinweis - Konfigurierbarer Infoblock mit Referenz-Schema
- Status-Anzeige - Verkaufbar/Beziehbar Icons (nur aktive werden angezeigt)
- Produkt-Dialog - Schnellbearbeitung von Ref, Label, Beschreibung, VK netto
- Export - CSV und PDF Export des Produktkatalogs
Screenshots
+----------------------------------------------------------+
| Produktverwaltung - Kategorie-Übersicht [CSV] [PDF] |
+----------------------------------------------------------+
| [i] Ref-Schema: KAT-HER-[TYP-]SPEC[-SERIE] |
+----------------------------------------------------------+
| [Alle aufklappen] [Alle zuklappen] [+Kat] Suche:[____] |
+----------------------------------------------------------+
| v Elektro (148) [edit][+][x] |
| v Leitungsschutzschalter (7) |
| | St | Ref | Label | EK | VK |
| | 🛒 | LSS-HAG-B16-1P | Hager B16 1p | 3.20 SON| 5.40|
+----------------------------------------------------------+
| ⚠ Produkte ohne Kategorie (92) |
+----------------------------------------------------------+
Installation
Voraussetzungen
- Dolibarr ERP & CRM (getestet mit v18+)
- PHP 7.4+
- MySQL/MariaDB
Installation
cd /pfad/zu/dolibarr/custom/
git clone https://git.data-it-solution.de/data/dolibarr.produktverwaltung.git produktverwaltung
Aktivierung
- Dolibarr als Admin einloggen
- Einstellungen > Module > "Produktverwaltung" suchen
- Modul aktivieren
- Menüpunkt erscheint unter Produkte im Seitenmenü
Einstellungen
Unter Einstellungen > Module > Produktverwaltung:
| Einstellung | Beschreibung | Standard |
|---|---|---|
| Ref-Schema anzeigen | Info-Block mit Referenz-Schema auf der Hauptseite | Ja |
| Kategorien standardmäßig aufklappen | Alle Kategorien beim Seitenaufruf aufgeklappt | Nein |
| Schema-Muster | Freier Text/HTML für das Referenz-Schema | KAT-HER-[TYP-]SPEC[-SERIE] |
| Beispiele | Beispiel-Referenzen zur Veranschaulichung | - |
Berechtigungen
| Berechtigung | Beschreibung |
|---|---|
| Anzeigen | Produktverwaltung anzeigen |
| Bearbeiten | Produkte bearbeiten (Ref/Label) |
| Löschen | Produkte löschen |
| Exportieren | Produktverwaltung exportieren |
Technische Details
Modul-ID
500032
Dateistruktur
produktverwaltung/
├── admin/
│ └── setup.php # Einstellungen
├── ajax/
│ └── product_actions.php # AJAX-Handler
├── core/
│ └── modules/
│ └── modProduktVerwaltung.class.php # Modul-Descriptor
├── css/
│ └── produktverwaltung.css # Styles
├── js/
│ └── produktverwaltung.js # Frontend-Logik
├── langs/
│ ├── de_DE/produktverwaltung.lang # Deutsch
│ └── en_US/produktverwaltung.lang # Englisch
├── lib/
│ └── produktverwaltung.lib.php # Hilfsfunktionen
├── export.php # CSV/PDF Export
└── produktverwaltungindex.php # Hauptseite
AJAX-Endpunkte
| Action | Beschreibung |
|---|---|
update_ref |
Produkt-Referenz aktualisieren |
update_label |
Produkt-Bezeichnung aktualisieren |
update_description |
Produkt-Beschreibung aktualisieren |
update_product |
Produkt komplett aktualisieren (Dialog) |
delete_product |
Produkt löschen |
add_to_category |
Produkt einer Kategorie zuordnen |
remove_from_category |
Produkt aus Kategorie entfernen |
get_categories |
Kategorieliste laden |
get_product |
Produktdaten laden |
get_category_data |
Kategorie-Daten laden |
create_category |
Neue Kategorie erstellen |
update_category |
Kategorie bearbeiten |
delete_category |
Kategorie löschen |
Best EK-Logik
Der günstigste Einkaufspreis wird per Subquery aus llx_product_fournisseur_price ermittelt:
MIN(unitprice)= günstigster Stückpreis- Lieferantenkürzel:
LEFT(COALESCE(NULLIF(name_alias,''), nom), 3) - Wird als Badge neben dem Preis angezeigt
Lizenz
GPLv3 oder (nach Wahl) eine spätere Version. Siehe COPYING.
Autor
Eduard Wisch - data IT solution