79 lines
3.3 KiB
Markdown
79 lines
3.3 KiB
Markdown
# Open Workshop (open_workshop ows)
|
|
|
|
Dieses Odoo v13.0 Modul erweitert das POS- und Kontakt-Modul um Funktionen für offene Werkstätten (FabLabs, Makerspaces etc.) und dient der Verwaltung von Maschinen, Naschinen Einweisungen Produkten, Maschinen Nutzungsprodukten und Zugangsberechtigungen zu den Maschinen.
|
|
|
|
## Funktionen
|
|
|
|
### Erweiterungen an Kontakten (res.partner)
|
|
- Geburtstagsfeld, RFID-Karte, Haftungsausschluss usw. ausgelagert nach `ows.user`
|
|
- Automatische Erstellung des `ows.user`-Eintrags beim Anlegen eines Kontakts
|
|
- Übersichtliche Darstellung aller Maschinenfreigaben im Odoo Kontaktformular
|
|
|
|
### Maschinen und Bereiche
|
|
- Modell `ows.machine` mit Gruppierung nach Bereichen (`ows.machine.area`)
|
|
- Farblich kodierte Bereiche (Hex-Wert aus Datenbank) welche zur Darstellung im POS verwendet werden
|
|
|
|
### Einweisungen und Nutzungen
|
|
- Modelle `ows.machine.training` und `ows.machine.product`
|
|
- Konfigurierbare Produkte für Einweisung/Nutzung direkt im Backend
|
|
- Zuweisung von Nutzungsprodukten zu Maschinen
|
|
- Zuweisung von Einweisungsprodukten zu Maschinen
|
|
|
|
### Maschinenfreigaben
|
|
- Modell `ows.machine.access` verknüpft Partner und Maschine
|
|
- Darstellung im POS als tabellarische Übersicht mit Anzeige für eine bestehende Einweisung / Nutzungsberechtigung
|
|
- Anzeige im POS-Kundendetailsansicht innerhalb der Kundendetailsansicht
|
|
- Anzeige im Odoo Kontak Modul der Maschineneinweisungen
|
|
|
|
## Installation
|
|
|
|
1. Dieses Modul in den Custom-Addons-Ordner kopieren
|
|
2. Vor der Installation von open_worshop muss vvow_pos deinstalliert werden. Die Funktionalität von vvow_pos wird durch open_workshop ersetzt und erweitert.
|
|
3. ggf. muss die alte Datenbank manuell migiriert werden, es gibt ca 9 gelöscht res.partner auf die Verweise aus POS bestehen. Diese res.parnter müssen wieder hergestellt werden. Dazu gibt es ein Skript unter
|
|
```folder
|
|
scripts/fix_missing_pos_partner.py
|
|
```
|
|
```bash
|
|
opt/odoo/odoo/odoo-bin shell -d hobbyhimmel < scrpts/fix_missing_pos_partner.py
|
|
```
|
|
4. Odoo starten mit:
|
|
```bash
|
|
odoo-bin -d deine_datenbank -u open_workshop
|
|
```
|
|
5. Alternativ im Backend unter Apps installieren
|
|
|
|
## Automatische Migrationen
|
|
|
|
Beim ersten Laden des Moduls werden folgende Migrationen durchgeführt:
|
|
- Bestehende `res.partner` erhalten automatisch `ows.user`-Eintrag (inkl. Übernahme alter Felder wie vvow_birthday, vvow_security, vvow_security_id, vvow_rfid.
|
|
- Alte Felder mit Maschinenfreigaben (`vvow_holz_*`, `vvow_metall_*`, `vvow_fablab_*`) werden in `ows.machine.access` übertragen
|
|
- inkl. Übernahme des Änderungsdatum aus `mail.message` wann der Nutzer die Einweisung erhalten hat (ist noch fehlerhaft)
|
|
|
|
## Entwicklerhinweise
|
|
|
|
### post_init_hook
|
|
Die Datei `post_init_hook.py` ruft automatisch nach der Installation folgende Methoden auf:
|
|
```python
|
|
res.partner.migrate_existing_partners()
|
|
res.partner.migrate_machine_access_from_old_fields()
|
|
```
|
|
|
|
### Datenimport
|
|
- Maschinenbereiche, Maschinen werden über `.xml`-Dateien in `data/` geladen
|
|
- Die Zuordnung von Maschine zu Einweisungsprodukten und Nutzungsprodukten muss derzeit noch manuell erstellt werden. Ein skript dafür folgt.
|
|
|
|
## ToDos
|
|
- Bearbeitung der Maschinenfreigaben im Backend
|
|
- Automatische Erstellung von `mail.message` bei manueller Freigabe
|
|
- Integration von Fristen (z.B. Ablaufdatum Einweisung)
|
|
|
|
## Autoren
|
|
- Matthias Lotz
|
|
|
|
## Lizenz
|
|
AGPL-3.0 oder später
|
|
|
|
---
|
|
Letzte Aktualisierung: 06.04.2025
|
|
|