Refactor validation strategy: remove Symfony Validator from Logic Layer in favor of pure PHP checks in UI

This commit is contained in:
2026-07-16 18:15:54 +02:00
parent 075da0b5f6
commit ceb3bfe084
2 changed files with 167 additions and 22 deletions
+7 -4
View File
@@ -18,6 +18,7 @@ Die Anwendung ist in drei strikt getrennte Layer unterteilt:
- **BusinessQueries**: Spezifische Abfragen für geschäftsrelevante Daten.
- **Manager**: Orchestratoren, die z.B. Caching-Strategien implementieren und zwischen verschiedenen Providern/Processoren vermitteln.
- **Models**: Kernlogik-Objekte zur internen Verarbeitung innerhalb der Logic Layer.
- **Provider / Processor Interfaces**: Definieren den Datenaustausch mit der Data Layer und ermöglichen Dependency Inversion.
- **Regel**: Ist unabhängig von der UI Layer und definiert die Anforderungen an die Data Layer über Interfaces.
### Data Layer (`src/Data`)
@@ -26,7 +27,7 @@ Die Anwendung ist in drei strikt getrennte Layer unterteilt:
- **Komponenten**:
- **Repositories**: Zugriff auf Datenbankentitäten.
- **Entities**: Domain-Modelle für die Persistenz (spiegeln DB-Schema).
- **Provider / Processor Interfaces**: Definieren den Datenaustausch mit der Logic Layer.
- **Provider / Processor-Implementierungen**: Stellt Daten bereit bzw. persistiert sie (DB, API). Implementieren dabei die aus der Logic Layer importierten Interfaces (Dependency Inversion).
- **Mapper**: Transformation zwischen Entity und Business Model.
- **Regel**: Kennt keine Geschäftslogik und ist nur für die Bereitstellung/Speicherung von Daten zuständig.
@@ -119,6 +120,8 @@ Weitere Details zur technischen Umsetzung finden sich in der [architektur-patter
| :--- | :--- | :--- |
| UseCase / Workflow | `src/Logic` | Einzelschrittliche Geschäftsoperation. |
| BusinessQuery | `src/Logic` | Funktionale Abfrage von Geschäftsdaten. |
| Manager | `src/Logic` | Cache-Steuerung und Koordination von Providern. |
| Provider | `src/Data` | Bereitstellung von Daten (Read). |
| Processor | `src/Data` | Verarbeitung/Persistierung von Daten (Write). |
| Manager | `src/Logic` | Cache-Steuerung und Koordination von Providern/Processoren. |
| Provider Interface | `src/Logic` | Vertragsdefinition für Datenbereitstellung (Read). |
| Provider Implementation | `src/Data` | konkrete Bereitstellung von Daten (DB, API). |
| Processor Interface | `src/Logic` | Vertragsdefinition für Datenpersistierung (Write). |
| Processor Implementation | `src/Data` | Konkrete Verarbeitung/Persistierung von Daten. |