# 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