fullfiled plan
This commit is contained in:
1 parent
371e1f90f5
commit
c71c36eff3
1 file changed
+25
-18
+25
-18
@@ -2,39 +2,46 @@
|
|||||||
|
|
||||||
## Phase 1: Projekt-Setup
|
## Phase 1: Projekt-Setup
|
||||||
- [x] Task 1.1: .github/copilot-plan.md erstellen
|
- [x] Task 1.1: .github/copilot-plan.md erstellen
|
||||||
- [ ] Task 1.2: requirements.txt + requirements-dev.txt erstellen
|
- [x] Task 1.2: requirements.txt + requirements-dev.txt erstellen
|
||||||
- [ ] Task 1.3: config.json erstellen (mit Platzhaltern für antragsnummer, ort)
|
- [x] Task 1.3: config.json erstellen (mit Platzhaltern für antragsnummer, ort)
|
||||||
- [ ] Task 1.4: schema.json erstellen
|
- [x] Task 1.4: schema.json erstellen
|
||||||
- [ ] Task 1.5: Verzeichnisse anlegen (src/, output/, template/, tests/)
|
- [x] Task 1.5: Verzeichnisse anlegen (src/, output/, template/, tests/)
|
||||||
|
|
||||||
## Phase 2: Datenmodell & Konfiguration
|
## Phase 2: Datenmodell & Konfiguration
|
||||||
- [ ] Task 2.1: src/exceptions.py implementieren
|
- [x] Task 2.1: src/exceptions.py implementieren
|
||||||
- [ ] Task 2.2: src/models.py implementieren (Person, AttendanceDate, MonthlyAttendance)
|
- [x] Task 2.2: src/models.py implementieren (Person, AttendanceDate, MonthlyAttendance)
|
||||||
- [ ] Task 2.3: src/config_loader.py implementieren
|
- [x] Task 2.3: src/config_loader.py implementieren
|
||||||
|
|
||||||
## Phase 3: Excel Reader
|
## Phase 3: Excel Reader
|
||||||
- [ ] Task 3.1: src/excel_reader.py implementieren
|
- [x] Task 3.1: src/excel_reader.py implementieren
|
||||||
- extract_year_from_filename()
|
- extract_year_from_filename()
|
||||||
- get_sheet_names()
|
- get_sheet_names()
|
||||||
- extract_persons()
|
- extract_persons()
|
||||||
- extract_attendance()
|
- extract_attendance()
|
||||||
|
|
||||||
## Phase 4: PDF Filler
|
## Phase 4: PDF Filler
|
||||||
- [ ] Task 4.1: src/pdf_filler.py implementieren
|
- [x] Task 4.1: src/pdf_filler.py implementieren
|
||||||
- build_field_dict()
|
- build_field_dict()
|
||||||
- fill_pdf()
|
- fill_pdf()
|
||||||
|
|
||||||
## Phase 5: Validierung & Vorschau
|
## Phase 5: Validierung & Vorschau
|
||||||
- [ ] Task 5.1: src/validators.py implementieren (9 Checks)
|
- [x] Task 5.1: src/validators.py implementieren (9 Checks)
|
||||||
- [ ] Task 5.2: Konsolenvorschau + j/N-Prompt
|
- [x] Task 5.2: Konsolenvorschau + j/N-Prompt
|
||||||
|
|
||||||
## Phase 6: CLI
|
## Phase 6: CLI
|
||||||
- [ ] Task 6.1: generate.py mit Click implementieren
|
- [x] Task 6.1: generate.py mit Click implementieren
|
||||||
- generate --file --sheet [--out]
|
- generate --file --month [--out]
|
||||||
- validate --file --sheet
|
- validate --file --month
|
||||||
|
|
||||||
## Phase 7: Tests
|
## Phase 7: Tests
|
||||||
- [ ] Task 7.1: tests/test_excel_reader.py
|
- [x] Task 7.1: tests/test_excel_reader.py
|
||||||
- [ ] Task 7.2: tests/test_pdf_filler.py
|
- [x] Task 7.2: tests/test_pdf_filler.py
|
||||||
- [ ] Task 7.3: tests/test_validators.py
|
- [x] Task 7.3: tests/test_validators.py
|
||||||
- [ ] Task 7.4: pytest ausführen, Fehler beheben
|
- [x] Task 7.4: pytest ausführen, Fehler beheben (70/70 grün)
|
||||||
|
|
||||||
|
## Nachträgliche Korrekturen (nach Analyse der echten Dateien)
|
||||||
|
- [x] PDF-Feldnamen korrigiert: ort → unterschrift.ort, erstellungsdatum → unterschrift.datum
|
||||||
|
- [x] Pauschale-Felder korrigiert: pauschale.N → pauschale_5.N (Dropdown-Wert "1")
|
||||||
|
- [x] Statuscodes A und V ergänzt (aus realem Excel und PDF-Template)
|
||||||
|
- [x] CLI-Parameter --sheet umbenannt zu --month
|
||||||
|
- [x] README.md erstellt
|
||||||
Reference in new issue
Block a user