dolibarr.produktverwaltung/README.md
data 4b7046132c feat: Initiales Produktverwaltung-Modul (v1.0)
Kategorie-Baumansicht mit Inline-Editing für Dolibarr.
- Hierarchischer Kategoriebaum mit Auf-/Zuklappen
- Inline-Editing: Ref, Label, Beschreibung per Doppelklick
- Best EK mit 3-Zeichen Lieferanten-Badge
- Marge-Berechnung mit Farbmarkierung
- Kategorie-CRUD mit 20 Farb-Swatches
- Produkte ohne Kategorie Sektion
- Admin: Ref-Schema, Standard-Aufklapp-Verhalten
- Export: CSV und PDF
- Berechtigungen: read, write, delete, export

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 09:33:47 +01:00

136 lines
4.9 KiB
Markdown

# Produktverwaltung - Dolibarr Modul
Kategorie-Baumansicht mit Inline-Editing und Produktverwaltung für [Dolibarr ERP & CRM](https://www.dolibarr.org).
## 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
```bash
cd /pfad/zu/dolibarr/custom/
git clone https://git.data-it-solution.de/data/dolibarr.produktverwaltung.git produktverwaltung
```
### Aktivierung
1. Dolibarr als Admin einloggen
2. Einstellungen > Module > "Produktverwaltung" suchen
3. Modul aktivieren
4. 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](COPYING).
## Autor
Eduard Wisch - [data IT solution](https://data-it-solution.de)