Hersteller — Dienstleistungen (Sub-Route)
Zweck
Sub-Route /manufacturers/:id/services listet alle Dienstleistungen, die für Produkte/Anlagen des Herstellers angeboten werden, über das ServiceAssignment-Modell. Pendant: /services/:id/manufacturers (welche Hersteller bedient eine Dienstleistung).
Es gibt keine globale /service-assignments-Route — Pflege erfolgt ausschliesslich pro Hersteller bzw. pro Service.
Berechtigungen (CASL)
| Action | Subject | Wirkung | Keycloak-Rolle |
|---|---|---|---|
view | FE_Manufacturer, Manufacturer | Detail aufrufbar | — |
view/create/delete | ServiceAssignment | Verknuepfung pflegen | APP_SPEAMCORE_VIEW/CREATE/DELETE_SERVICE_ASSIGNMENT |
view | Service | Dienstleistungs-Auswahl | APP_SPEAMCORE_VIEW_SERVICE |
Schritt-für-Schritt-Anleitung
- Hersteller (
/manufacturers/:id) → Tab Dienstleistungen. - + Service wählt eine Dienstleistung —
ServiceAssignmentmitmanufacturerId = :idundserviceIdwird angelegt.
Anlege-Pattern (N:M-Verknuepfung)
ManufacturerService ist die N:M-Verknuepfung Hersteller ↔ Service. Pro Verknuepfung:
manufacturerId(welcher Hersteller)serviceId(welcher Service)- Optional
customChecklists— hersteller-spezifische Checklisten, die statt der allgemeinen Service-Checklisten verwendet werden. - Optional
customComponents— hersteller-spezifische Pflicht-Komponenten.
Anwendungsfall: Eine BMA-Wartung („Service") laeuft bei Bosch anders als bei Honeywell. Über ManufacturerService kann pro Hersteller eine angepasste Variante des Services definiert werden — bei Auftrags-Anlage mit dieser Hersteller-Anlagen-Kombination wird automatisch die richtige Variante geladen.
Wiederverwendbare Konzepte
Verknuepfungen zu anderen Modulen
- Hersteller — Eltern-Modul.
- Dienstleistungen — Stamm.
- Pendant
/services/:id/manufacturers.
API/Schnittstellen
| Methode | Endpoint | Zweck | CASL |
|---|---|---|---|
GET | /api/service-assignments?filter[manufacturerId] | Liste | view ServiceAssignment |
POST | /api/service-assignments | Verknuepfen | create ServiceAssignment |
DELETE | /api/service-assignments/:id | Lösen | delete ServiceAssignment |
Versionshinweise
- 2026-04-30: Initiale Veroeffentlichung.