1a0a56a626
Replace the stale multi-module java/mss-failsafe skeleton (old user-management prototype) with the active single-module machine-safety inspection app that was living in its own standalone repo at the repo root. - Remove old java/mss-failsafe/ multi-module tree (mss, userdata, userManagement, mssfailsafe.datalayer, mssfailsafeWeblayer) incl. committed build artifacts - Add the active app (PrimeFaces 11 / JSF 2.3 / Hibernate 5.6 / iText / POI) flattened into java/mss-failsafe/ as the only mss-failsafe in git - Working tree captured = master tip 2a142b5 + in-progress uncommitted work (incl. .github/*.instructions.md AI-context files) - Archive the standalone repo's 33-commit history in GIT_HISTORY_ARCHIVE.md since its .git was not migrated This is the source of truth / base for the upcoming upgraded rewrite.
40 lines
1.0 KiB
Markdown
Executable File
40 lines
1.0 KiB
Markdown
Executable File
# Security Area Domain Instructions
|
|
|
|
## Entities
|
|
- SecurityArea
|
|
- SecurityDevice / DangerPoint / SwitchingDevice
|
|
- SecurityAreaQuestionnaire (Wrapper) + Questionaire
|
|
|
|
## Operations
|
|
- cloneArea(SecurityArea)
|
|
- addQuestionnaireToSecurityArea(area, questionnaire)
|
|
- removeQuestionnaireFromSecurityArea(area, wrapper)
|
|
- getAvailableQuestionnaires(area)
|
|
- reloadWithQuestionnaires(area)
|
|
|
|
## Workflow (Add Questionnaire)
|
|
1. Area laden (falls id > 0)
|
|
2. Wrapper erstellen & area setzen
|
|
3. Persist Wrapper, merge Area
|
|
4. Refresh im Controller
|
|
|
|
## Deletion Pattern
|
|
- Beziehungen lösen (Kinder area = null setzen)
|
|
- Kinder entfernen (Manager.removeAllIn)
|
|
- Area per Named Query löschen
|
|
|
|
## Edge Cases
|
|
- Duplicate questionnaire by name -> aktuell Filter per Name
|
|
- Verbesserung: Filter per ID
|
|
|
|
## Klonen
|
|
- Persistente Quelle re-laden, initialisieren
|
|
- Copy-Konstruktor & alle Child IDs auf null
|
|
|
|
## Verbesserungen
|
|
- CascadeSettings prüfen
|
|
- Bean Validation einsetzen
|
|
|
|
---
|
|
Aktualisiert: 2025-10-20
|