Skip to content

Instantly share code, notes, and snippets.

@Sulkar
Last active February 22, 2024 10:16
Show Gist options
  • Save Sulkar/4b4d40655e6d78704c7d035ed8e8748f to your computer and use it in GitHub Desktop.
Save Sulkar/4b4d40655e6d78704c7d035ed8e8748f to your computer and use it in GitHub Desktop.
// 1. Variable mit Closure Syntax und Klasse "groovy.lang.Closure" erstellen oder Inhalt direkt in ein Textfeld einfügen z.B.: $V{testClosure}.
// Variable kann dann in einem Textfeld eingefügt und die Closure mit $V{testClosure}() aufgerufen werden.
{
def a = 3;
def b = 4;
def c = a + b;
return c;
}
// 2. Beispiel mit Parameter.
// Variable kann dann in einem Textfeld eingefügt und die Closure mit $V{testClosure}(3, 4) aufgerufen werden.
{ a, b ->
def c = a + b;
return c;
}
// 3. Beispiel Map
{
def myMap = ["GMS": "Hallo von der GMS!", "RS":"Hallo von der RS!"]
def aktuelleSchulartLehrer = $F{self}.getLehrerStamm().getStammschuleArt().kurzform;
if(myMap[aktuelleSchulartLehrer] != null){
return myMap[aktuelleSchulartLehrer];
}else{
return "keine Daten gefunden";
}
}
// 4. Beispiel Switch
{
def geschlechtLehrkraft = $F{self}.getLehrerStamm().getWlGeschlecht().kurzform;
switch(geschlechtLehrkraft) {
case "M":
return("männlich");
break;
case "W":
return("weiblich");
break;
default:
return("anders");
break;
}
}
// Beispiel: Summiert alle Anrechnungsstunden aller Lehrer einer Schule, welche als Anrechnungsart fx,fy haben
{
//def alleAnrechnungen = [];
def anrechnungsStunden = 0;
for (lehrer in $F{self}.getLehrerSchuljahrSchuleListe()){
def tempLehrerAnrechnungenListe = lehrer.getAnrechnungenList();
for(anrechnung in tempLehrerAnrechnungenListe){
if(["fx","fy"].contains(anrechnung.getWlAnrechnungArt().kurzform)){
//alleAnrechnungen.add(anrechnung);
anrechnungsStunden += anrechnung.getStunden();
}
}
}
return anrechnungsStunden;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment