dolibarr.handybarcodescanner/README.md
data 74728a71d1 v5.0: Bestellmodus erweitert, Barcode-Druck, Scanner-Pausierung
Bestellmodus:
- Produktsuche (Lupe-Button) und Freitext-Positionen (Plus-Button)
- Bestellübersicht per Swipe nach links
- Horizontale Bestellliste mit Direkt-Bestellungen hervorgehoben
- Bestellzeilen bearbeiten (Menge ändern, löschen)
- Auto-Öffnung der zuletzt bearbeiteten Bestellung

Barcode-Druck:
- Swipe nach rechts öffnet Produktsuche für Druck
- Code128 Barcode-Generierung mit JsBarcode
- Optimiert für 24mm Etikettendrucker (Brother P-touch)

Scanner:
- Automatische Pausierung bei geöffneten Dialogen
- Fortsetzung wenn alle Dialoge geschlossen
- Stopp-Button funktioniert jetzt zuverlässig

Neue AJAX-Endpoints:
- searchproduct.php, addfreetextline.php
- getorders.php, getorderlines.php, updateorderline.php

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-23 09:46:06 +01:00

175 lines
5.7 KiB
Markdown
Executable file

# HANDYBARCODESCANNER FOR [DOLIBARR ERP & CRM](https://www.dolibarr.org)
Mobiler Barcode-Scanner für Dolibarr - optimiert für die Verwendung auf Smartphones.
## Features
Das Modul bietet drei Modi für die mobile Barcode-Erfassung:
### 1. Bestellmodus (Order)
- Produkt per Barcode scannen oder manuell suchen (Lupe-Button)
- Alle verfügbaren Lieferanten mit Einkaufspreisen werden angezeigt
- Günstigster Lieferant ist vorausgewählt
- Produkt wird zu einer lieferantenspezifischen Entwurfsbestellung hinzugefügt
- Bestellungen werden automatisch als "YYMMDD-Direkt" erstellt (z.B. "260223-Direkt")
- Falls kein Lieferant zugewiesen: Manuelle Auswahl aller verfügbaren Lieferanten
- **Freitext-Positionen**: Plus-Button für Artikel ohne Produktstamm
- **Bestellübersicht**: Nach links swipen zeigt alle offenen Bestellungen
- **Zeilen bearbeiten**: Klick auf Bestellzeile öffnet Dialog zum Ändern/Löschen
### 2. Shop-Modus
- Produkt per Barcode scannen
- Zeigt Links zu den Webshops der Lieferanten
- Schneller Zugriff auf Lieferanten-Onlineshops
### 3. Inventur-Modus
- Produkt per Barcode scannen
- Aktueller Lagerbestand wird angezeigt
- Neuen Bestand eingeben und mit Bestätigungsdialog speichern
- Lagerbewegungen werden korrekt protokolliert
### 4. Barcode-Druck
- Nach rechts swipen öffnet Produktsuche für Barcode-Druck
- Produkt auswählen → Barcode-Vorschau wird angezeigt
- Code128-Format, optimiert für 24mm Etikettendrucker (Brother P-touch etc.)
- Drucken direkt vom Smartphone über Browser-Druckfunktion
## Barcode-Unterstützung
Das Modul sucht Barcodes in folgender Reihenfolge:
1. Produkt-Barcode (`llx_product.barcode`)
2. Lieferanten-Barcode (`llx_product_fournisseur_price.barcode`)
3. Produkt-Referenz (`llx_product.ref`)
Unterstützte Barcode-Formate:
- EAN-13, EAN-8
- Code 128, Code 39
## Installation
### Voraussetzungen
- Dolibarr ERP & CRM (Version 14.0 oder höher empfohlen)
- Aktiviertes Modul "Lieferanten" (Fournisseur/Supplier)
- Aktiviertes Modul "Lager" (Stock) für Inventur-Modus
- HTTPS-Verbindung (erforderlich für Kamerazugriff im Browser)
### Installation via Git
```bash
cd /path/to/dolibarr/htdocs/custom
git clone https://git.data-it-solution.de/data/dolibarr.handybarcodescanner.git handybarcodescanner
```
### Installation via ZIP
1. ZIP-Datei herunterladen
2. In Dolibarr: `Home > Setup > Modules > Deploy external module`
3. ZIP-Datei hochladen
### Aktivierung
1. Als Administrator in Dolibarr einloggen
2. Gehe zu `Setup > Modules`
3. Suche nach "HandyBarcodeScanner"
4. Modul aktivieren
## Konfiguration
Die Einstellungen sind unter `Setup > Modules > HandyBarcodeScanner > Settings` verfügbar:
### Allgemein
- **Bestellpräfix**: Präfix für automatisch erstellte Bestellungen (Standard: "Direktbestellung")
- **Standard-Lager**: Standard-Lager für Inventur-Bewegungen
### Aktivierte Modi
- **Bestellmodus aktivieren**: Ein/Aus
- **Shop-Modus aktivieren**: Ein/Aus
- **Inventur-Modus aktivieren**: Ein/Aus
### Feedback
- **Vibration aktivieren**: Vibriert bei erfolgreichem Scan (auf unterstützten Geräten)
- **Ton aktivieren**: Akustisches Signal bei erfolgreichem Scan
### QR-Code für mobilen Zugriff
Auf der Einstellungsseite wird ein QR-Code angezeigt, der mit dem Smartphone gescannt werden kann, um direkt zur Scanner-Seite zu gelangen.
## Berechtigungen
Das Modul definiert folgende Berechtigungen:
| Berechtigung | Beschreibung |
|-------------|--------------|
| `handybarcodescanner->use` | Scanner verwenden |
| `handybarcodescanner->order->create` | Bestellungen erstellen |
| `handybarcodescanner->inventory->write` | Lagerbestand ändern |
## Verwendung
Der Scanner ist im linken Menü unter **Produkte > Scanner** erreichbar.
### Moduswechsel ohne Unterbrechung
Die Modi (Bestellen/Shop/Inventur) können per Tab gewechselt werden, ohne dass die Kamera stoppt. Bereits gescannte Produkte werden im neuen Modus direkt angezeigt.
### Im mobilen Browser / PWA
1. QR-Code von der Admin-Seite scannen oder URL direkt eingeben
2. Kamerazugriff erlauben (HTTPS erforderlich!)
3. Gewünschten Modus wählen und "Scannen" tippen
4. Barcode vor die Kamera halten
### Gesten-Steuerung
- **Nach links swipen**: Bestellübersicht öffnen (Order-Mode)
- **Nach rechts swipen**: Barcode-Druck (Produktsuche öffnet sich)
## Technische Details
### Dateistruktur
```
handybarcodescanner/
├── admin/
│ ├── about.php
│ └── setup.php
├── ajax/
│ ├── addtoorder.php # Produkt zu Bestellung hinzufügen
│ ├── findproduct.php # Produkt per Barcode suchen
│ ├── getsuppliers.php # Alle Lieferanten abrufen
│ └── updatestock.php # Lagerbestand aktualisieren
├── core/modules/
│ └── modHandyBarcodeScanner.class.php
├── css/
│ └── scanner.css
├── js/
│ └── scanner.js
├── langs/
│ ├── de_DE/handybarcodescanner.lang
│ └── en_US/handybarcodescanner.lang
├── lib/
│ └── handybarcodescanner.lib.php
└── handybarcodescannerindex.php
```
### Verwendete Bibliotheken
- [QuaggaJS](https://github.com/ericblade/quagga2) - Browser-basierte Barcode-Erkennung
- [JsBarcode](https://github.com/lindell/JsBarcode) - Barcode-Generierung für Druck
## Changelog
Siehe [ChangeLog.md](ChangeLog.md)
## Lizenz
### Hauptcode
GPLv3 oder (nach Wahl) jede spätere Version. Siehe Datei [COPYING](COPYING) für weitere Informationen.
### Dokumentation
Alle Texte und READMEs sind unter [GFDL](https://www.gnu.org/licenses/fdl-1.3.en.html) lizenziert.
## Autor
Eduard Wisch - [DATA IT-Solution](https://data-it-solution.de)
## Support
Bei Fragen oder Problemen:
- Issue erstellen: https://git.data-it-solution.de/data/dolibarr.handybarcodescanner/issues
- E-Mail: data@data-it-solution.de