Add module ownership docs

This commit is contained in:
2026-06-15 10:06:42 +02:00
parent c6b5a0572c
commit 63a1e79147
12 changed files with 386 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
# Module Ownership Docs
Stand: 2026-06-15
Diese Ordnerstruktur dokumentiert die fachliche und technische Ownership der Module.
Regeln:
- Ein Ordner pro Hauptmodul oder technischem Bereich.
- Jedes Modul bekommt eine kurze README mit Zweck, Ownership, Reads, Writes und Grenzen.
- Submodule werden im README des owning Moduls kurz benannt, wenn sie nicht eigenes Ownership tragen.
- Code, Doku und Datenmodell sollen dieser Struktur folgen.
Referenz:
- [Technische Architektur](../architektur/technical_architecture.md)
- [Modulkarte](../architektur/modulkarte.md)
+34
View File
@@ -0,0 +1,34 @@
# Buchhaltung
Stand: 2026-06-15
## Zweck
Finanzbuchhaltung mit Kontierung, Verbuchung, Offene-Posten und Abschluss.
## Owns
- Buchungssaetze
- Konten
- OP-Positionen
- Steuerdaten
## Writes
- Verbuchung
- OP-Pflege
- Zahlungslauf
- Mahnwesen
- Abschlusslaeufe
## Reads
- Freigegebene ERP-Belege
- Zahlungsdaten
- Kontenplan
## Grenzen
- Keine operative Lagerlogik.
- Keine Beratungslogik.
- Keine UI-Sonderlogik fuer ERP-Prozesse.
+36
View File
@@ -0,0 +1,36 @@
# ERP
Stand: 2026-06-15
## Zweck
ERP ist der operative Container fuer die Kerndomane des Tagesgeschaefts.
## Enthaltene Module
- Kontakte
- Bestellungen
- Lager
- Artikel-Mapping
- Import-Integration
- Direktverkauf
## Ownership
- Owns keine fachlichen Daten als Container.
- Owns nur die Strukturierung der operativen ERP-Module.
- Fachliche Verantwortung liegt immer in den Untermodulen.
## Grenzen
- Keine Buchhaltung.
- Keine Kundenberatung.
- Keine technischen `shared`-Hilfen.
- Keine Runtime-Logik.
## Relevante Entry-Points
- `public/order-import.php`
- `order-import.php`
- `public/api/otc-order.php`
- `public/otc/index.php`
@@ -0,0 +1,31 @@
# Artikel-Mapping
Stand: 2026-06-15
## Zweck
Aufloesung externer Shopdaten auf interne verkaufbare Artikel und Produkte.
## Owns
- `sellable_item`
- `external_item_alias`
- `sellable_item_component`
## Writes
- Aliaspflege
- Zuordnung externer Artikel
- Komponentenpflege
## Reads
- Bestellungen
- Import-Integration
- Lager
## Grenzen
- Keine Bestellverarbeitung.
- Keine Lagerbewegungen.
- Keine Buchhaltung.
+37
View File
@@ -0,0 +1,37 @@
# Bestellungen
Stand: 2026-06-15
## Zweck
Operative Verarbeitung von Bestellungen, Positionen und Status.
## Owns
- `sales_order`
- `sales_order_line`
- Bestellstatus
## Writes
- Bestellung anlegen und aktualisieren
- Positionen pflegen
- Status fortschreiben
## Reads
- Kontakte
- Artikel-Mapping
- Lager
## Submodule
- Bestellkopf
- Positionen
- Status
## Grenzen
- Keine Buchhaltung.
- Keine Lagerbestandswahrheit.
- Kein Direktverkaufs-UI.
+35
View File
@@ -0,0 +1,35 @@
# Direktverkauf
Stand: 2026-06-15
## Zweck
Manuelle Erfassung von Direktverkaeufen und deren operative Ausloesung.
## Owns
- Direktverkaufsbelege
- Erfassungsdaten
- OTC-UI und OTC-API
## Writes
- Direktverkauf erfassen
- Folgeschritte im ERP ausloesen
## Reads
- Kontakte optional
- Lager
- Bestellungen
## Relevante Entry-Points
- `public/otc/index.php`
- `public/api/otc-order.php`
## Grenzen
- Keine Buchhaltung.
- Keine allgemeine Bestellverwaltung.
- Keine technische Runtime-Logik.
@@ -0,0 +1,35 @@
# Import-Integration
Stand: 2026-06-15
## Zweck
Technische Annahme externer Eingangsdaten und Weiterleitung an die owning Module.
## Owns
- Import- und Webhook-Einstiege
- technische Importzustandsdaten
- technische Events oder Ausfuehrungsmarker
## Writes
- Importausloesung
- technische Verarbeitungsereignisse
- kontrollierte Weitergabe an Fachmodule
## Reads
- Externe Payloads
- Konfiguration
- Zielmodul-Schnittstellen
## Relevante Entry-Points
- `public/order-import.php`
- `order-import.php`
## Grenzen
- Keine Fachlogik fuer Bestellungen, Lager oder Buchhaltung.
- Keine Dateninterpretation, die einem Fachmodul gehoert.
+37
View File
@@ -0,0 +1,37 @@
# Kontakte
Stand: 2026-06-15
## Zweck
Zentraler Kontaktstamm fuer Kunden, Lieferanten und sonstige Parteien.
## Owns
- `party`
- `address`
- `contact`
## Writes
- Kontaktstamm
- Adressen
- Kommunikationsdaten
## Reads
- Bestellungen
- Buchhaltung
- Kundenberatung
## Grenzen
- Keine Bestelllogik.
- Keine Lagerlogik.
- Keine Buchungslogik.
## Relevante Schnittstellen
- Kontaktanlage
- Kontaktabfrage
- Lookup fuer andere Module
+39
View File
@@ -0,0 +1,39 @@
# Lager
Stand: 2026-06-15
## Zweck
Bestand, Charge, MHD und Bewegungen.
## Owns
- `product`
- `stock_lot`
- `stock_move`
- `v_stock_lot_balance`
## Writes
- Warenzugang
- Warenabgang
- Umlagerung
- Chargenpflege
## Reads
- Bestellungen
- Import-Integration
- Direktverkauf
## Submodule
- Chargen
- Bewegungen
- Bestandsfuehrung
## Grenzen
- Keine Buchhaltung.
- Keine Beratungslogik.
- Keine fachfremden Artikelzuordnungen.
+33
View File
@@ -0,0 +1,33 @@
# Kundenberatung
Stand: 2026-06-15
## Zweck
Fall- und gespraechsbezogene Kundenberatung mit Rueckmeldung und Follow-up.
## Owns
- Beratungsgespraeche
- Empfehlungen
- Rueckmeldungen
- Follow-ups
## Writes
- Gespraech erfassen
- Bedarf dokumentieren
- Empfehlungen pflegen
- Rueckmeldungen nachhalten
## Reads
- Kontakte
- Produkte
- Bestellungen
## Grenzen
- Keine Buchhaltung.
- Keine Lagerbestandswahrheit.
- Keine technische Importlogik.
+29
View File
@@ -0,0 +1,29 @@
# Shared
Stand: 2026-06-15
## Zweck
Fachlich neutrale, wiederverwendbare technische Bausteine.
## Enthalten
- UI-Komponenten
- Layout-Bausteine
- Tabellen, Formulare, Statusdarstellung
- Validierung ohne Fachentscheidung
- Datums-, Geld- und Formatierungshelfer
- technische API-Clients
- Logging- und Session-nahe Hilfen
## Ownership
- Keine fachliche Primärverantwortung.
- Keine Business-Logik.
## Grenzen
- Keine Lagerlogik.
- Keine Buchhaltungslogik.
- Keine Beratungslogik.
- Keine Bestellfachlogik.
+25
View File
@@ -0,0 +1,25 @@
# System
Stand: 2026-06-15
## Zweck
Technische Laufzeit-, Start-, Trigger- und Supervisor-Logik.
## Enthalten
- Webhook-/Trigger-Logik
- Start- und Deploy-Hooks
- technische Jobsteuerung
- Laufzeit- und Betriebslogik
## Ownership
- Keine fachliche Primärverantwortung.
- Nur technische Infrastruktur- und Runtime-Funktionen.
## Grenzen
- Keine operativen Fachprozesse.
- Keine Modul-Domain-Logik.
- Keine Geschäftsregeln.