diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2025-11-01 20:33:30 +0100 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-11-01 20:35:01 +0100 |
| commit | e7099e2c2b076606582292b79c2c1a105b0eb3d4 (patch) | |
| tree | 10734210439dbedd9c0cfe2211d1104974199e93 /scripts | |
| parent | a55dcd0e95b95742cdee8b26ffd5821e5b995dd5 (diff) | |
| download | punktestand-e7099e2c2b076606582292b79c2c1a105b0eb3d4.tar.gz punktestand-e7099e2c2b076606582292b79c2c1a105b0eb3d4.zip | |
mache das Farbschema der erzeugten Klassen optional
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/erzeuge_jahrgang.py | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/scripts/erzeuge_jahrgang.py b/scripts/erzeuge_jahrgang.py index 46dc99d..806a7ec 100755 --- a/scripts/erzeuge_jahrgang.py +++ b/scripts/erzeuge_jahrgang.py @@ -3,25 +3,34 @@ import argparse from itertools import cycle -STATEMENT = "INSERT INTO Klasse (Schuljahr, Jahrgang, Bezeichner, Farbe) VALUES ('{}', {}, '{}', '{}');" +STATEMENT = "INSERT INTO Klasse (Schuljahr, Jahrgang, Bezeichner) VALUES ('{}', {}, '{}');" +STATEMENT_FARBE = "INSERT INTO Klasse (Schuljahr, Jahrgang, Bezeichner, Farbe) VALUES ('{}', {}, '{}', '{}');" FARBSCHEMAS = { "regenbogen": ["#de324c", "#f4895f", "#f8e16f", "#95cf92", "#369acc", "#9656a2"], - "default": ["#36a2eb" for _ in range(6)] } -def erzeuge_statements(schuljahr: str, klassenstufe: int, bezeichner: str, - farbschema: str) -> list[str]: +def erzeuge_statements(schuljahr: str, + klassenstufe: int, + bezeichner: str, + farbschema=None) -> list[str]: """Gib eine Liste an SQL Statements zurück, um alle Klassen eines Jahrgangs zu erzeugen""" statements = [] aktueller_bezeichner = 'a' - farben = cycle(FARBSCHEMAS[farbschema]) + if farbschema: + farben = cycle(FARBSCHEMAS[farbschema]) while aktueller_bezeichner <= bezeichner: - statement = STATEMENT.format(schuljahr, klassenstufe, - aktueller_bezeichner, next(farben)) + if farbschema: + statement = STATEMENT_FARBE.format(schuljahr, klassenstufe, + aktueller_bezeichner, + next(farben)) + else: + statement = STATEMENT.format(schuljahr, klassenstufe, + aktueller_bezeichner) + statements.append(statement) aktueller_bezeichner = chr(ord(aktueller_bezeichner) + 1) @@ -32,8 +41,7 @@ def main(): """Erzeuge passenden Statements zu den Kommandozeilen-Parameter""" parser = argparse.ArgumentParser() parser.add_argument("--farbschema", - choices=["default", "regenbogen"], - default="default", + choices=["regenbogen"], help="Das Farbschema der erzeugten Klassen") parser.add_argument("schuljahr", type=str, @@ -46,9 +54,10 @@ def main(): help="Der letzte alphabetische Bezeichner der Klassen") args = parser.parse_args() - for statement in erzeuge_statements(args.schuljahr, args.klassenstufe, + for statement in erzeuge_statements(args.schuljahr, + args.klassenstufe, args.letzter_bezeichner, - args.farbschema): + farbschema=args.farbschema): print(statement) |
