01_data_model.md

This commit is contained in:
2025-08-28 15:21:34 +00:00
parent ef91cc3ee9
commit 756db3c914

123
01_data_model.md Normal file
View File

@@ -0,0 +1,123 @@
# Travelbear Dolibarr Datenmodell
Dieses Dokument beschreibt die Module, Felder und Mappings für das B2B-Reisebüro-Setup in Dolibarr.
Ziel: einheitliche Struktur für die Digitalisierung der Workflows (Anfrage → Projekt → Teilnehmer → Abrechnung).
---
## 1. Projekte (Reisen)
- **Label**: Name der Reise (z. B. "Opera in Germany 2025")
- **Customer (Thirdparty)**: Referenz auf Reisebüro (z. B. Limelight Arts Travel)
- **Start / Enddatum**: Zeitraum der Reise
- **Customer Reference**: externe Referenznummer aus Anfrage (z. B. "OSR_PER2506A")
- **Description**: Freitext, allgemeine Hinweise
### Extra Fields (Custom Fields)
- `target_group_size` (int) → Teilnehmerzahl Szenario (z. B. 10, 12, 16)
- `project_type` (dropdown) → Tourtyp (Opera, Studienreise, etc.)
---
## 2. Aufgaben (Tasks)
- **Label**: Kurztitel der Aufgabe (z. B. „Day 1 Canapés Hilton Berlin“)
- **Date Start/End**: Uhrzeit & Datum der Aktivität oder Deadline
- **Parent Project**: Verknüpfung zur Reise
### Extra Fields
- `supplier` (link → Thirdparty) → z. B. Hotel, Restaurant, Busunternehmen
- `location` (string) → Adresse / Ort
- `meal` (dropdown) → B / L / D
- `notes` (text) → Zusätzliche Hinweise (z. B. „Passport mitnehmen Reichstag“)
---
## 3. Kunden (Thirdparties)
- Typ: **Customer**
- Beispiel: Limelight Arts Travel, Academy Travel, Studentenreisen
### Kontakte (Linked Contacts)
- Tour Leader, Tour Manager, Ops Manager
- Felder: Name, Email, Telefon, Rolle
---
## 4. Lieferanten (Thirdparties)
- Typ: **Supplier**
- Beispiel: Hilton Berlin, Marriot Leipzig, Steigenberger Dresden, NH München, Spacebase Conference Centre
---
## 5. Produkte / Dienstleistungen
- **Label**: Name (z. B. „Hotelnacht DZ Hilton Berlin“, „Opernticket Semperoper“)
- **Type**: Service
- **Base Price**: Nettopreis pro Einheit (optional je nach Kalkulation)
---
## 6. Supplier Orders
- **Linked Supplier**: Hotel, Restaurant, Bus etc.
- **Products/Services**: gebuchte Leistungen
- **Payment Terms**: z. B. 90 Tage, Anzahlung 30 %
- **Status**: Draft / Validated / Paid
---
## 7. Teilnehmer (eigenes Modul geplant)
- **Vorname / Nachname**
- **Geburtsdatum**
- **Passnummer**
- **Nationalität**
- **Kontaktinfos** (Telefon, Mail)
### Extra Fields
- `meal_preference` (dropdown: vegan, vegetarisch, glutenfrei, normal)
- `arrival_date` (date)
- `departure_date` (date)
- `room_type` (dropdown: Single, Double, Twin, Suite)
- `nok_name` (text) → Notfallkontakt Name
- `nok_phone` (text)
- `insurance_company` (string)
- `insurance_policy` (string)
Verknüpfung: Teilnehmer ↔ Projekt (n:m), damit ein Teilnehmer auf mehreren Reisen sein kann.
---
## 8. Dokumente / Vorlagen
- **Kundenquote (mit Preisen)** → PDF aus Angebot
- **Operator Itinerary (ohne Preise)** → PDF aus Projekt-Tasks
- **Teilnehmerlisten** → PDF/Excel-Export aus Teilnehmer-Modul
---
## 9. Mapping aus Anfrage (Word)
| Word-Dokumentfeld | Dolibarr-Feld |
|--------------------------|---------------------------|
| „Opera in Germany“ | Project Label |
| „24 June 8 July 2025“ | Project Start/End |
| „OSR_PER2506A“ | Project Customer Reference|
| „Limelight Arts Travel“ | Thirdparty (Customer) |
| Tour Leader/Manager | Linked Contacts |
| Day 1, 24 June | Task (Date Start) |
| „18h30 Canapés“ | Task Label |
| „Hilton Hotel Berlin“ | Supplier (linked) |
| Notes | Task Notes |
---
## 10. Nächste Schritte
1. Extra Fields in Dolibarr anlegen (Projekte, Tasks, Teilnehmer)
2. Beispielprojekt manuell anlegen → Felder testen
3. Datenmodell in Gitea aktuell halten
4. Parser (Word → JSON) auf dieses Mapping ausrichten
5. API-Workflow (n8n) entwickeln → automatisierte Projekterstellung