68 lines
2.2 KiB
Python
68 lines
2.2 KiB
Python
#!/usr/bin/env python3
|
|
|
|
import calendar
|
|
from datetime import datetime, date
|
|
|
|
# Eltern aus der eltern.csv (alle aktiven in April 2026)
|
|
eltern = ['En', 'Fe', 'IE', 'IW', 'L', 'Mra', 'P', 'Th', 'V', 'El', 'M&S', 'Ms', 'Ml', 'Mat', 'R', 'Fr']
|
|
|
|
# April 2026 Kalenderdaten
|
|
jahr = 2026
|
|
monat = 4
|
|
|
|
# Deutsche Wochentage
|
|
wochentage = ['Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag']
|
|
|
|
# Dienste für Werktage (Mo-Fr)
|
|
werktag_dienste = 'FPE'
|
|
|
|
# Kochen und Elternabend manuell festlegen (beispielhaft)
|
|
kochen_tage = [9, 23] # 2 Mittwoche im April
|
|
elternabend_tage = [11, 25] # 2 Freitage im April
|
|
|
|
print("Erstelle eingabe.csv für April 2026...")
|
|
|
|
# CSV erstellen
|
|
with open('eingabe.csv', 'w', encoding='utf-8') as f:
|
|
# Header schreiben
|
|
header = ['Datum', 'Wochentag', 'Dienste'] + eltern
|
|
f.write(', '.join(f'{col:12}' for col in header) + '\n')
|
|
|
|
# Für jeden Tag im April 2026
|
|
for tag in range(1, calendar.monthrange(jahr, monat)[1] + 1):
|
|
datum = date(jahr, monat, tag)
|
|
wochentag_name = wochentage[datum.weekday()]
|
|
|
|
# Nur Werktage (Montag bis Freitag)
|
|
if datum.weekday() < 5:
|
|
# Benötigte Dienste bestimmen
|
|
dienste = werktag_dienste
|
|
|
|
# Kochen hinzufügen
|
|
if tag in kochen_tage:
|
|
dienste += 'K'
|
|
|
|
# Elternabend hinzufügen
|
|
if tag in elternabend_tage:
|
|
dienste += 'A'
|
|
|
|
# Zeile zusammenstellen
|
|
zeile = [
|
|
datum.strftime('%Y-%m-%d'),
|
|
wochentag_name,
|
|
dienste
|
|
]
|
|
|
|
# Für alle Eltern: keine Präferenzen, alle verfügbar (leere Strings)
|
|
for eltern_name in eltern:
|
|
zeile.append('') # Leer = verfügbar, keine Präferenzen
|
|
|
|
# Zeile schreiben (formatiert für bessere Lesbarkeit)
|
|
f.write(', '.join(f'{cell:12}' for cell in zeile) + '\n')
|
|
|
|
print("eingabe.csv für April 2026 erstellt!")
|
|
print("- Werktage: Frühstück (F), Putz (P), Essensausgabe (E)")
|
|
print(f"- Kochen (K): {kochen_tage}")
|
|
print(f"- Elternabend (A): {elternabend_tage}")
|
|
print("- Alle Eltern verfügbar, keine Präferenzen")
|