- REFACTOR: BRANCH_GROUP_MAPPING in `config.py` ist nun die einzige Quelle für gültige Branchen (Single Source of Truth).
- CLEANUP: Redundante, hartcodierte Branchenliste und CSV-Ladelogik vollständig entfernt.
- FIX: `initialize_target_schema` in `helpers.py` generiert erlaubte Branchen nun dynamisch aus dem Mapping.
- FIX: `prepare_data_for_modeling` in `data_processor.py` nutzt nun konsistent die `CRM Branche` für das Mapping.
- FIX: Kritischer Ladefehler endgültig behoben, indem das Branchenschema direkt in `config.py` hartcodiert wurde.
- REFACTOR: `load_target_schema` in `helpers.py` zu `initialize_target_schema` umbenannt; liest nun aus der Config, nicht aus einer Datei.
- CLEANUP: CSV-bezogene Initialisierungslogik entfernt, um das Skript robuster und portabler zu machen.
- Implements a summary of registrations on page 1 for both
"Kita/School" and "Family" modes.
- For Kita/School mode (i/e), it lists the count of children per
group/class and a total count.
- For Family mode (f), it lists the count of appointments per day
and a total count.
- The summary block is inserted after the initial copy-and-paste info
and before the detailed group/day lists.
- A long separator line is added after the summary for clarity.
- Page breaks are now inserted before each group/day list to ensure
the summary remains on its own page at the beginning.
- Introduces a new user prompt to select facility type (school 's' or
kindergarten 'k') before generating 'intern'/'extern' lists.
- Saves the last used facility type for easier reuse.
- Adapts the group list generation based on the selected type:
- Table header changes to "Klasse" for schools, "Gruppe" for kindergarten.
- Suffix '-gruppe' is only appended to kindergarten group names.
- Reminder text is adjusted to address students ("Schüler") for schools
and parents/children for kindergartens.
- The family shooting mode ('f') remains unaffected.
- Code-Basis zurückgesetzt: Der Code wurde auf einen stabilen Stand (entsprechend der Diskussion um v1.7.8) zurückgesetzt, um persistente Initialisierungsfehler zu beheben und eine saubere Grundlage für weitere Verbesserungen zu schaffen.
- Branchen-Clustering implementiert: Um die Qualität der Features für das ML-Modell zu verbessern, wird nun nicht mehr die detaillierte Einzelbranche, sondern eine übergeordnete Branchen-Gruppe als Feature verwendet.
- Hartcodiertes Branchen-Mapping: Anstatt die Gruppen aus einer externen CSV-Datei zu laden (was zu Fehlern führte), ist das Mapping von Detail-Branche zu Branchen-Gruppe jetzt als statisches Dictionary direkt in der `Config`-Klasse hinterlegt. Dies eliminiert eine externe Abhängigkeit und erhöht die Stabilität.
- Angepasste Datenvorbereitung: Die Funktion `prepare_data_for_modeling` wurde überarbeitet. Sie führt nun das Mapping auf die Branchen-Gruppen durch und verwendet das Ergebnis für das One-Hot-Encoding. Die finale Feature-Liste wurde entsprechend angepasst.
- Code-Vereinfachung: Die Funktion `load_branch_mapping()` und zugehörige Logik wurden entfernt, da sie durch das hartcodierte Mapping obsolet geworden sind.