28 lines
1.8 KiB
Markdown
28 lines
1.8 KiB
Markdown
# Aufgaben: Tätigkeitsnachweis-Generator (Streamlit App)
|
|
|
|
## 🔍 Analyse ✅
|
|
- [x] **A1**: Input-Datei `input/2025 JM.xlsx` analysieren → Sheet-Namen, exakte Spaltenüberschriften (Zeile 1), Spaltenpositionen (A, B, C…), Beispiel-Daten
|
|
- [x] **A2**: Template `template/Tätigkeitsnachweise Stellenförderung.xlsx` analysieren → zu befüllende Zielzellen identifizieren (Zelladresse + erwarteter Inhalt)
|
|
|
|
## ⚙️ Konfiguration ✅
|
|
- [x] **K1**: `config/input-fields.json` mit Spaltenschema befüllen — `column` (A, B…), `field_name` (exakte Überschrift aus Excel), `type`, `required`
|
|
- [x] **K2**: `config/output-fields.json` mit Zell-Mappings befüllen — `source_field` (exakte Spaltenüberschrift aus input-fields.json), `target_cell`, `format`
|
|
- [x] **K3**: `config/settings.ini` mit Pfaden und Einstellungen befüllen
|
|
|
|
## 🧱 Core-Module ✅
|
|
- [x] **C1**: `requirements.txt` befüllen (streamlit, openpyxl)
|
|
- [x] **C2**: `src/__init__.py` + `src/models.py` — Datenklassen
|
|
- [x] **C3**: `src/config.py` — Konfigurations-Loader
|
|
- [x] **C4**: `src/parser.py` — Input-Datei parsen
|
|
- [x] **C5**: `src/validator.py` — Eingabevalidierung
|
|
- [x] **C6**: `src/writer.py` — Output generieren
|
|
|
|
## 🖥️ UI & Start ✅
|
|
- [x] **U1**: `app.py` — Streamlit-Oberfläche (Input-Selektion: validieren & Mitarbeiteranzahl + Antragsnummern anzeigen; Template-Selektion: validieren & Zielfelder anzeigen; Mitarbeiter-Multiselect zum Ein-/Ausschließen)
|
|
- [x] **U2**: `start.bat` — Windows Batch-Startdatei
|
|
- [x] **U3**: `README.md` — vollständige Dokumentation
|
|
|
|
## ✅ Test ✅
|
|
- [x] **T1**: App mit vorhandener Input-Datei und Template testen — 19 Tätigkeitsnachweise erfolgreich generiert
|
|
- [x] **T2**: Edge Cases prüfen (leere Zeilen, Sonderzeichen, fehlende Monate) — Umlaute, Sonderzeichen in Namen, "Alle Rollen"-Sheet korrekt behandelt
|