Package de.svws_nrw.core.utils.gost
Klasse GostBlockungsergebnisManager
java.lang.Object
de.svws_nrw.core.utils.gost.GostBlockungsergebnisManager
Ein Manager zur Handhabung von Daten des Typs
Nur Methoden, die mit "state" beginnen verändern den Zustand der Daten.
GostBlockungsergebnis
. Hierbei werden auch Hilfsmethoden zur
Interpretation der Daten erzeugt. Nur Methoden, die mit "state" beginnen verändern den Zustand der Daten.
-
Konstruktorübersicht
KonstruktorBeschreibungGostBlockungsergebnisManager
(@NotNull GostBlockungsdatenManager pParent, long pGostBlockungsergebnisID) Erstellt einen leeren GostBlockungsergebnisManager in Bezug auf GostBlockungsdatenManager.GostBlockungsergebnisManager
(@NotNull GostBlockungsdatenManager pParent, @NotNull GostBlockungsergebnis pErgebnis) Erstellt einen neuen Manager mit den Daten aus dem übergebenen Ergebnis. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungvoid
Eine Logger-Ausgabe für Debug-Zwecke.int
Liefert die Anzahl an E-Schienen.int
Liefert die Anzahl an Dummy-SuS.int
Liefert die Anzahl an externen SuS.long
Liefert die Datenbank-ID der Blockungs.@NotNull GostBlockungsergebnis
Liefert das Blockungsergebnis inklusive ungültiger Schüler-Kurs-Zuordnungen.@NotNull GostFach
getFach
(long idFach) Ermittelt dasGostFach
für die angegebene ID.Liefert die Menge (meistens eine) aller Fehlermeldungen.@NotNull GostBlockungsergebnisKurs
getKursE
(long idKurs) Liefert denGostBlockungsergebnisKurs
zur übergebenen ID.
Wirft eine DeveloperNotificationException, falls die ID unbekannt ist.@NotNull GostBlockungKurs
getKursG
(long idKurs) Liefert denGostBlockungKurs
zur übergebenen ID.
Delegiert den Aufruf an das Eltern-ObjektGostBlockungsdatenManager
.@NotNull List
<GostBlockungsergebnisKurs> Gibt die Menge derGostBlockungsergebnisKurs
zurück.@NotNull Map
<Long, Set<GostBlockungsergebnisSchiene>> Liefert die Map, welche jedem Kurs seine Schienenmenge zuordnet.Liefert die Map, welche jedem Kurs seine Schülermenge zuordnet.@NotNull List
<GostBlockungsergebnisSchiene> Liefert die Menge aller Schienen.double
Liefert eine Güte des 1.int
Liefert den Wert des 1.static int
getOfBewertung1WertStatic
(@NotNull GostBlockungsergebnisBewertung bewertung) Liefert den Wert des 1.double
Liefert eine Güte des 2.int
Liefert den Wert des 2.double
Liefert eine Güte des 3.double
Liefert eine Güte des 3.double
Liefert eine Güte des 3.double
Liefert eine Güte des 3.int
Liefert den Wert des 3.int
Liefert den Wert des 3.int
Liefert den Wert des 3.int
Liefert den Wert des 3.double
Liefert eine Güte des 4.int
Liefert den Wert des 4.int
Liefert die Anzahl an Fachwahlen, die nicht zugeordnet wurden.int
Liefert die Anzahl nicht vollständig verteilter Kurse.
Ein Multikurse der über mehrere Schienen geht und gar nicht zugeteilt wurde, wird mehrfach gezählt.int
getOfFachartKursdifferenz
(long idFachart) Liefert die Kursdifferenz der Fachart und beachtet dabei Dummy-SuS von Kursen.@NotNull List
<GostBlockungsergebnisKurs> getOfFachartKursmenge
(long idFachart) Liefert die Kursmenge, die zur Fachart gehört.@NotNull List
<GostBlockungsergebnisKurs> getOfFachKursmenge
(long idFach) Liefert die Menge aller Kurse mit dem angegebenen Fach-ID.int
getOfFachOfKursartKursdifferenz
(long idFach, int idKursart) Liefert die Kursdifferenz der Fachart, übergeben als (Fach, Kursart).int
getOfKursAnzahlSchienenIst
(long idKurs) Liefert die Anzahl an Schienen in denen der Kurs gerade ist.int
getOfKursAnzahlSchienenSoll
(long idKurs) Liefert die Anzahl an Schienen, die der Kurs haben sollte.int
getOfKursAnzahlSchueler
(long idKurs) Liefert die Anzahl an Schülern die dem Kurs zugeordnet sind ohne Dummy SuS.int
getOfKursAnzahlSchuelerAbitur3
(long idKurs) Liefert die Anzahl an Schülern, die den Kurs mit Abiturfach 3 gewählt haben.int
getOfKursAnzahlSchuelerAbitur4
(long idKurs) Liefert die Anzahl an Schülern, die den Kurs mit Abiturfach 4 gewählt haben.int
getOfKursAnzahlSchuelerAbiturLK
(long idKurs) Liefert die Anzahl an Schülern, die den Kurs mit Abiturfach 1 oder 2 gewählt (also LK) haben.int
getOfKursAnzahlSchuelerDummy
(long idKurs) Liefert die Anzahl an Dummy-SuS des Kurses.int
getOfKursAnzahlSchuelerExterne
(long idKurs) Liefert die Anzahl externer SuS die dem Kurs zugeordnet sind.int
getOfKursAnzahlSchuelerSchriftlich
(long idKurs) Liefert die Anzahl aller Schüler des Kurses mit SchriftlichkeitGostSchriftlichkeit.SCHRIFTLICH
.long
getOfKursMaxSuS
(long idKurs) Liefert die maximale Anzahl an SuS, die in dem Kurs sein dürfen, oder 999 falls es keine Begrenzung gibt.@NotNull String
getOfKursName
(long idKurs) Liefert den Namen des Kurses, erzeugt aus Fach, der Kursart und der Nummer, beispielsweise D-GK1.boolean
getOfKursOfSchieneIstZugeordnet
(long idKurs, long idSchiene) Liefert TRUE, falls der Kurs der Schiene zugeordnet ist.@NotNull Set
<GostBlockungsergebnisSchiene> getOfKursSchienenmenge
(long idKurs) Liefert die Schienenmenge des Kurses.
Wirft eine Exception, falls der ID kein Kurs zugeordnet ist.@jakarta.validation.constraints.NotNull int[]
getOfKursSchienenNummern
(long idKurs) Liefert ein Array aller Schienen-Nummern des Kurses.getOfKursSchuelermenge
(long idKurs) Liefert die Menge aller Schüler-Objekte des Kurses.int
getOfSchieneAnzahlSchueler
(long idSchiene) Liefert die Anzahl an Schülern in der Schiene mit der übergebenen ID zurück.
Hinweis: Falls ein Schüler mehrfach in der Schiene ist, also mit Kollisionen, wird er mehrfach gezählt!int
getOfSchieneAnzahlSchuelerDummy
(long idSchiene) Liefert die Anzahl an Dummy-SuS der Schiene.int
getOfSchieneAnzahlSchuelerExterne
(long idSchiene) Liefert die Anzahl an externen SuS der Schiene.int
getOfSchieneAnzahlSchuelerMitKollisionen
(long idSchiene) Liefert die Anzahl an Schüler-Kollisionen der Schiene.
Hinweis Ein Schüler, der N>1 Mal in einer Schiene ist, erzeugt N-1 Kollisionen.boolean
getOfSchieneHatKollision
(long idSchiene) Liefert TRUE, falls die Schiene mindestens eine Schüler-Kollision hat.long
getOfSchieneID
(int nrSchiene) Liefert die ID einer Schiene mit einer bestimmten Nummer.boolean
getOfSchieneIstLeer
(long idSchiene) Liefert TRUE, falls die Schiene keine Kurse enthält.@NotNull Set
<GostBlockungsergebnisKurs> getOfSchieneKursmengeMitKollisionen
(long idSchiene) Liefert die Menge an Kursen, die in der Schiene eine Kollision haben.@NotNull List
<GostBlockungsergebnisKurs> getOfSchieneKursmengeSortiert
(long idSchiene) Liefert die sortierte Menge an Kursen einer bestimmten Schiene.int
Liefert die maximale Anzahl an Kursen, die es in einer Schiene gibt.boolean
getOfSchieneRemoveAllowed
(long idSchiene) Liefert TRUE, falls ein Löschen der Schiene erlaubt ist.
Kriterium: Es dürfen keine Kurse der Schiene zugeordnet sein.getOfSchieneSchuelermengeMitKollisionen
(long idSchiene) Liefert die Menge an Schüler-IDs, die in der Schiene eine Kollision haben.@NotNull List
<List<Pair<GostBlockungsergebnisKurs, Integer>>> getOfSchieneTooltipKurskollisionenAsData
(long idSchiene) Liefert alle Kollisionen einer Schiene, als Liste von Liste von Kurs-Anzahl-Paaren.int
getOfSchuelerAnzahlGefiltert
(long idKurs, long idFach, int idKursart, int konfliktTyp, @NotNull String subString, Geschlecht geschlecht, GostSchriftlichkeit schriftlichkeit) Liefert die Anzahl der Schüler, die den Filterkriterien entsprechen.@NotNull List
<GostFachwahl> getOfSchuelerFachwahlmengeOhneKurszuordnung
(long idSchueler) Liefert die Menge aller Fachwahlen eines Schülers, die keinem Kurs zugeordnet sind.boolean
getOfSchuelerHatFachwahl
(long idSchueler, long idFach, int idKursart) Liefert TRUE, falls der übergebene Schüler die entsprechende Fachwahl (Fach + Kursart) hat.boolean
getOfSchuelerHatKollision
(long idSchueler) Liefert TRUE, falls der Schüler mindestens eine Kollision hat.boolean
getOfSchuelerHatNichtwahl
(long idSchueler) Liefert TRUE, falls der Schüler mindestens eine Nichtwahl hat.boolean
getOfSchuelerIstZusammenMitSchuelerInFach
(long idSchueler1, long idSchueler2, long idFach) Liefert TRUE, falls beide Schüler bezogen auf das Fach gemeinsam im selben Kurs sind.@NotNull Set
<GostBlockungsergebnisKurs> getOfSchuelerKursmenge
(long idSchueler) Liefert die Menge aller Kurse, die dem Schüler zugeordnet sind.@NotNull Set
<GostBlockungsergebnisKurs> getOfSchuelerKursmengeMitKollisionen
(long idSchueler) Liefert die Menge aller Kurse des Schülers mit Kollisionen.@NotNull Map
<Long, Set<GostBlockungsergebnisKurs>> Liefert die Map, welche einer Schüler-ID die Menge aller ungültigen Kurse zuordnet.getOfSchuelerMengeGefiltert
(long idKurs, long idFach, int idKursart, int konfliktTyp, @NotNull String subString) Liefert eine nach Kriterien gefilterte Menge aller Schüler.Liefert eine Liste aller Schüler, deren Abiturjahrgang nicht dem der Blockung entspricht.@NotNull String
getOfSchuelerNameVorname
(long idSchueler) Liefert einen Schüler-String im Format: 'Nachname, Vorname'.getOfSchuelerNeuzuordnung
(long idSchueler, boolean fixiereBelegteKurse) Liefert einGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, welches für den Schüler eine berechnete Neuzuordnung der Kurse beinhaltet.@NotNull GostKursart
getOfSchuelerOfFachKursart
(long idSchueler, long idFach) Liefert die zu (idSchueler, idFach) die jeweilige Kursart.getOfSchuelerOfFachZugeordneterKurs
(long idSchueler, long idFach) Liefert den zu (idSchueler, idFach) passenden Kurs oder NULL.int
getOfSchuelerOfKursAnzahlVerbotenWuensche
(long idS1, long idKurs) Liefert die Anzahl an SuS, die mit dem Schüler nicht im Kurs sein sollen.int
getOfSchuelerOfKursAnzahlZusammenWuensche
(long idS1, long idKurs) Liefert die Anzahl an SuS, die mit dem Schüler im Kurs sein wollen.@NotNull GostFachwahl
getOfSchuelerOfKursFachwahl
(long idSchueler, long idKurs) Liefert die Fachwahl des Schüler passend zu den Kurs.boolean
getOfSchuelerOfKursHatKollision
(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler in einer Schiene des Kurses eine Kollision hat.
Die Methode geht davon aus, dass der Schüler dem Kurs zugeordnet ist.boolean
getOfSchuelerOfKursIstGesperrt
(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler im Kurs via Regel gesperrt sein soll.boolean
getOfSchuelerOfKursIstUngueltig
(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler dem Kurs zugeordnet ist, aber keine entsprechende Fachwahl hat.boolean
getOfSchuelerOfKursIstZugeordnet
(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler dem Kurs zugeordnet ist.boolean
getOfSchuelerOfSchieneHatKollision
(long idSchueler, long idSchiene) Liefert TRUE, falls der Schüler in der Schiene mehr als einen Kurs belegt hat.@NotNull GostBlockungsdatenManager
Liefert den zugehörigen Daten-Manager für diesen Ergebnis-Manager.@NotNull GostBlockungSchiene
getSchieneG
(long idSchiene) Liefert das zur ID zugehörigeGostBlockungSchiene
-Objekt.
Delegiert den Aufruf an den Fächer-Manager des Eltern-ObjektesGostBlockungsdatenManager
.
Wirft eine DeveloperNotificationException, falls die ID unbekannt ist.kursSchienenUpdate_01a_FUEGE_KURS_SCHIENEN_PAARE_HINZU
(@NotNull Set<GostBlockungsergebnisKursSchienenZuordnung> kursSchienenZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um Kurse in Schienen zu setzen.kursSchienenUpdate_01b_ENTFERNE_KURS_SCHIENEN_PAARE
(@NotNull Set<GostBlockungsergebnisKursSchienenZuordnung> kursSchienenZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um Kurse aus Schienen zu entfernen.kursSchienenUpdate_02a_VERSCHIEBE_KURS_VON_SCHIENE_NACH_SCHIENE
(long idKurs, long idSchieneQuelle, long idSchieneZiel) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um einen Kurs von einer Schiene zu einer anderen Schiene zu verschieben.void
Entfernt erst alle Regeln ausGostBlockungsergebnisKursSchienenZuordnungUpdate.listEntfernen
und fügt dann die neuen Regeln ausGostBlockungsergebnisKursSchienenZuordnungUpdate.listHinzuzufuegen
hinzu.kursSchuelerUpdate_01_LEERE_ALLE_KURSE
(boolean entferneAuchFixierte) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um alle Schüler aus den derzeit zugeordneten Kursen zu entfernen.kursSchuelerUpdate_01b_LEERE_KURSMENGE
(@NotNull Set<Long> kursIDs, boolean entferneAuchFixierte) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um alle Schüler aus der übergebenen Kursmenge zu entfernen.kursSchuelerUpdate_02a_ENTFERNE_SCHUELERMENGE_AUS_KURS
(@NotNull Set<Long> schuelerIDs, long idKurs, boolean entferneAuchFixierte) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um eine Schülermenge aus einem Kurs zu entfernen.kursSchuelerUpdate_02b_ENTFERNE_SCHUELERMENGE_AUS_ALLEN_KURSEN
(@NotNull Set<Long> schuelerIDs) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um eine Schülermenge aus allen Kursen entfernen.kursSchuelerUpdate_03a_FUEGE_KURS_SCHUELER_PAARE_HINZU
(@NotNull Set<GostBlockungsergebnisKursSchuelerZuordnung> kursSchuelerZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler auf Kurse zu verteilen.kursSchuelerUpdate_03b_ENTFERNE_KURS_SCHUELER_PAARE
(@NotNull Set<GostBlockungsergebnisKursSchuelerZuordnung> kursSchuelerZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler aus Kursen zu entfernen.kursSchuelerUpdate_04_BILDE_KERNGRUPPEN
(long idQuellKurs, @NotNull Set<Long> idZielKurse, boolean verschiebeFixierteDesQuellkurses, boolean inZielKursenFixieren, boolean zielKurseLeeren) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler-Kerngruppe auf mehrere Kurse zu verteilen.void
Entfernt erst alle Regeln ausGostBlockungsergebnisKursSchuelerZuordnungUpdate.listEntfernen
und fügt dann die neuen Regeln ausGostBlockungsergebnisKursSchuelerZuordnungUpdate.listHinzuzufuegen
hinzu.void
Ändert die aktuelle Sortierung von Facharten und Kursen.void
Ändert die aktuelle Sortierung von Facharten und Kursen.void
Informiert den Manager, dass sich bei mindestens einem Kurs die Lehrkraft geändert hat.void
patchOfKursSchienenAnzahl
(long idKurs, int anzahlSchienenNeu) Verändert die Schienenanzahl eines Kurses.Liefert die Map, welche der verletzten Regel-ID (long) die Beschreibung (String) zuordnet.@NotNull GostBlockungRegelUpdate
regelupdateCreate_01_KURSART_SPERRE_SCHIENEN_VON_BIS
(int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursart-Schienenmengen-Sperrung zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_02_KURS_FIXIERE_IN_SCHIENE_MARKIERT
(@NotNull Set<Long> setKursID, @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kurs-Schienen-Fixierung einer Rechtecks-Auswahl zu realisieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_02b_KURS_FIXIERE_MENGE_IN_IHREN_SCHIENEN
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmenge komplett in ihrer Lage zu fixieren.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurse komplett in ihrer Lage zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_02d_KURS_FIXIERE_IN_SCHIENE_TOGGLE
(@NotNull Set<Long> setKursID, @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Toggle-Fixierung zu realisieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_02e_KURS_FIXIERE_IN_EINER_SCHIENE
(long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um einen Kurs in einer Schiene zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_03_KURS_SPERRE_IN_SCHIENE
(@NotNull Set<Long> setKursID, @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Sperrung zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_03b_KURS_SPERRE_IN_SCHIENE_TOGGLE
(@NotNull Set<Long> setKursID, @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Toggle-Sperrung zu realisieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04_SCHUELER_FIXIEREN_IN_KURS
(@NotNull Set<Long> setSchuelerID, @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Fixierung zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04b_SCHUELER_FIXIEREN_IN_DEN_KURSEN
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen einer Kursmenge zu setzen.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler in ihren aktuellen Kursen zu fixieren.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller LK-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04e_SCHUELER_FIXIEREN_TYP_LK_DER_KURSMENGE
(@NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle LK-Schüler einer Kursmenge zu fixieren.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB3-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04f_SCHUELER_FIXIEREN_TYP_AB3_DER_KURSMENGE
(@NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB3-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller LKs und AB3-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04g_SCHUELER_FIXIEREN_TYP_LK_UND_AB3_DER_KURSMENGE
(@NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller LKs und AB3-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB4-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04h_SCHUELER_FIXIEREN_TYP_AB4_DER_KURSMENGE
(@NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB4-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04i_SCHUELER_FIXIEREN_TYP_AB_DER_KURSMENGE
(@NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB-Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller schriftlichen Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_04j_SCHUELER_FIXIEREN_TYP_SCHRIFTLICH_DER_KURSMENGE
(@NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller schriftlichen Schüler zu fixieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_05_SCHUELER_VERBIETEN_IN_KURS
(@NotNull Set<Long> setSchuelerID, @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Sperrung zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_06_KURSART_ALLEIN_IN_SCHIENEN_VON_BIS
(int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursart-Schienenmengen-Allein-Zuordnung zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_07_KURS_VERBIETEN_MIT_KURS
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurs-Kurs-Verbote der Kursmenge (alle Paarungen) zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_08_KURS_ZUSAMMEN_MIT_KURS
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurs-Kurs-Zusammen-Gebote von setKursID (alle Paarungen) zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_09_KURS_MIT_DUMMY_SUS_AUFFUELLEN
(long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Anzahl der Dummy-Schüler eines Kurses zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_10_LEHRKRAEFTE_BEACHTEN
(boolean erstellen) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um "Lehrkräfte beachten" zu aktivieren/deaktivieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_11_SCHUELER_ZUSAMMEN_MIT_SCHUELER_IN_FACH
(long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in einem Fach zusammen zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_12_SCHUELER_VERBIETEN_MIT_SCHUELER_IN_FACH
(long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in einem Fach zu verbieten.@NotNull GostBlockungRegelUpdate
regelupdateCreate_13_SCHUELER_ZUSAMMEN_MIT_SCHUELER
(long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in jedem gemeinsamen Fach zusammen zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_14_SCHUELER_VERBIETEN_MIT_SCHUELER
(long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in jedem gemeinsamen Fach zu verbieten.@NotNull GostBlockungRegelUpdate
regelupdateCreate_15_KURS_MAXIMALE_SCHUELERANZAHL
(long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die maximale Anzahl an Schülern eines Kurses zu setzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_16_SCHUELER_IGNORIEREN
(@NotNull Set<Long> setSchuelerID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermenge beim Blocken zu ignorieren.@NotNull GostBlockungRegelUpdate
regelupdateCreate_17_KURS_KURSDIFFERENZ_BEI_DER_VISUALISIERUNG_IGNORIEREN
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmenge von Kursdifferenz-Berechnungen auszuschließen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_18_FACH_KURSART_MAXIMALE_ANZAHL_PRO_SCHIENE
(long idFach, int idKursart, int maximal) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die maximale Anzahl an Kursen einer bestimmten Fachart (in jeder Schiene) zu begrenzen.@NotNull GostBlockungRegelUpdate
regelupdateCreate_19_SCHUELERMENGE_ENTFERNEN
(@NotNull Set<Long> setSchuelerID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Regeln einer Schülermenge zu entfernen.void
regelupdateExecute
(@NotNull GostBlockungRegelUpdate update) Entfernt erst alle Regeln ausGostBlockungRegelUpdate.listEntfernen
und fügt dann die neuen Regeln ausGostBlockungRegelUpdate.listHinzuzufuegen
hinzu.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_01_KURSART_SPERRE_SCHIENEN_VON_BIS
(long idRegelAlt, int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_02e_KURS_FIXIERE_IN_EINER_SCHIENE
(long idRegelAlt, long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_03_KURS_SPERRE_IN_SCHIENE
(long idRegelAlt, long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_04_SCHUELER_FIXIEREN_IN_KURS
(long idRegelAlt, long idSchueler, long idKurs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_05_SCHUELER_VERBIETEN_IN_KURS
(long idRegelAlt, long idSchueler, long idKurs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_06_KURSART_ALLEIN_IN_SCHIENEN_VON_BIS
(long idRegelAlt, int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_07_KURS_VERBIETEN_MIT_KURS
(long idRegelAlt, long idKurs1, long idKurs2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_08_KURS_ZUSAMMEN_MIT_KURS
(long idRegelAlt, long idKurs1, long idKurs2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_09_KURS_MIT_DUMMY_SUS_AUFFUELLEN
(long idRegelAlt, long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_11_SCHUELER_ZUSAMMEN_MIT_SCHUELER_IN_FACH
(long idRegelAlt, long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_12_SCHUELER_VERBIETEN_MIT_SCHUELER_IN_FACH
(long idRegelAlt, long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_13_SCHUELER_ZUSAMMEN_MIT_SCHUELER
(long idRegelAlt, long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_14_SCHUELER_VERBIETEN_MIT_SCHUELER
(long idRegelAlt, long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_15_KURS_MAXIMALE_SCHUELERANZAHL
(long idRegelAlt, long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_16_SCHUELER_IGNORIEREN
(long idRegelAlt, long idSchueler) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdatePatchByID_17_KURS_KURSDIFFERENZ_BEI_DER_VISUALISIERUNG_IGNORIEREN
(long idRegelAlt, long idKursNeu) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Regel von einem zu einem anderen Kurs zu patchen.@NotNull GostBlockungRegelUpdate
regelupdateRemove_02_KURS_FIXIERE_IN_SCHIENE_MARKIERT
(@NotNull Set<Long> setKursID, @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Fixierung zu lösen.@NotNull GostBlockungRegelUpdate
regelupdateRemove_02b_KURS_FIXIERE_MENGE_IN_IHREN_SCHIENEN
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Fixierung einer Kursmenge komplett zu lösen.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurs-Schienen-Fixierungen zu lösen.@NotNull GostBlockungRegelUpdate
regelupdateRemove_02e_KURS_FIXIERE_IN_EINER_SCHIENE
(long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kurs-Schienen-Fixierung zu lösen.@NotNull GostBlockungRegelUpdate
regelupdateRemove_03_KURS_SPERRE_IN_SCHIENE
(@NotNull Set<Long> setKursID, @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Sperrung zu lösen.@NotNull GostBlockungRegelUpdate
regelupdateRemove_04_SCHUELER_FIXIEREN_IN_KURS
(@NotNull Set<Long> setSchuelerID, @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Fixierung zu lösen.@NotNull GostBlockungRegelUpdate
regelupdateRemove_04b_SCHUELER_FIXIEREN_IN_DEN_KURSEN
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen einer Kursmenge zu lösen.@NotNull GostBlockungRegelUpdate
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen zu lösen.@NotNull GostBlockungRegelUpdate
regelupdateRemove_04d_SCHUELER_FIXIEREN_IN_DEN_KURSEN_TOGGLE
(@NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um ein Schüler-Kurs-Fixierung-Toggle zu realisieren.void
setAddKursByID
(long idKurs) Fügt den übergebenen Kurs hinzu.void
setAddSchieneByID
(long idSchiene) Fügt die übergebene Schiene hinzu.void
setMergeKurseByID
(long idKursID1keep, long idKursID2delete) Verschiebt alles SuS von pKursID2delete nach pKursID1keep und löscht dann den Kurs mit der ID beimGostBlockungsdatenManager
, anschließend in diesem Manager.void
setRemoveKurseByID
(@NotNull List<Long> idKurse) Löscht alle übergebenen Kurse.void
setRemoveSchieneByID
(long idSchiene) Löscht die übergebene Schiene.void
setSplitKurs
(@NotNull GostBlockungKurs kurs1alt, @NotNull GostBlockungKurs kurs2neu, @jakarta.validation.constraints.NotNull long[] susVon1nach2) Erzeugt einen neuen Kurs2 beimGostBlockungsdatenManager
, dann bei diesem Manager und verschiebt alle SuS des übergebenen Arrays von Kurs1 nach Kurs2.void
Baut alle Datenstrukturen neu auf.
-
Konstruktordetails
-
GostBlockungsergebnisManager
public GostBlockungsergebnisManager(@NotNull @NotNull GostBlockungsdatenManager pParent, long pGostBlockungsergebnisID) Erstellt einen leeren GostBlockungsergebnisManager in Bezug auf GostBlockungsdatenManager. Die ID des leeren Ergebnisses ist -1 und muss noch gesetzt werden.- Parameter:
pParent
- Das Eltern-Objekt. (Daten-Manager für die grundlegenden Definitionen der Blockung)pGostBlockungsergebnisID
- Die ID des Blockungsergebnisses.
-
GostBlockungsergebnisManager
public GostBlockungsergebnisManager(@NotNull @NotNull GostBlockungsdatenManager pParent, @NotNull @NotNull GostBlockungsergebnis pErgebnis) Erstellt einen neuen Manager mit den Daten aus dem übergebenen Ergebnis.- Parameter:
pParent
- Das Eltern-Objekt. (Daten-Manager für die grundlegenden Definitionen der Blockung)pErgebnis
- Das Ergebnis, welches kopiert wird.
-
-
Methodendetails
-
stateRevalidateEverything
public void stateRevalidateEverything()Baut alle Datenstrukturen neu auf. -
getAnzahlSchuelerExterne
public int getAnzahlSchuelerExterne()Liefert die Anzahl an externen SuS.- Gibt zurück:
- die Anzahl an externen SuS.
-
getAnzahlSchienen
public int getAnzahlSchienen()Liefert die Anzahl an E-Schienen.- Gibt zurück:
- die Anzahl an E-Schienen.
-
getAnzahlSchuelerDummy
public int getAnzahlSchuelerDummy()Liefert die Anzahl an Dummy-SuS.- Gibt zurück:
- die Anzahl an Dummy-SuS.
-
getBlockungsdatenID
public long getBlockungsdatenID()Liefert die Datenbank-ID der Blockungs. Das ist die ID des Elternteils.- Gibt zurück:
- die Datenbank-ID der Blockungs. Das ist die ID des Elternteils.
-
getErgebnis
Liefert das Blockungsergebnis inklusive ungültiger Schüler-Kurs-Zuordnungen.- Gibt zurück:
- das Blockungsergebnis inklusive ungültiger Schüler-Kurs-Zuordnungen.
-
getFehlermeldungen
Liefert die Menge (meistens eine) aller Fehlermeldungen.
Falls die Liste nicht leer ist, sollte die GUI den Benutzer warnen, dass die Blockung nicht vollständig geladen wurde!- Gibt zurück:
- die Menge (meistens eine) aller Fehlermeldungen.
-
getParent
Liefert den zugehörigen Daten-Manager für diesen Ergebnis-Manager.- Gibt zurück:
- den zugehörigen Daten-Manager für diesen Ergebnis-Manager.
-
getOfBewertung1WertStatic
public static int getOfBewertung1WertStatic(@NotNull @NotNull GostBlockungsergebnisBewertung bewertung) Liefert den Wert des 1. Bewertungskriteriums. Darin enthalten sind:
- Die Anzahl der Regelverletzungen.
- Die Anzahl der nicht genügend gesetzten Kurse.- Parameter:
bewertung
- die Bewertung vom Ergebnis- Gibt zurück:
- Den Wert des 1. Bewertungskriteriums.
-
getOfBewertung1Wert
public int getOfBewertung1Wert()Liefert den Wert des 1. Bewertungskriteriums. Darin enthalten sind:
- Die Anzahl der Regelverletzungen.
- Die Anzahl der nicht genügend gesetzten Kurse.- Gibt zurück:
- Den Wert des 1. Bewertungskriteriums.
-
getOfBewertung1Farbcode
public double getOfBewertung1Farbcode()Liefert eine Güte des 1. Bewertungskriteriums im Bereich [0;1], mit 0=optimal. Darin enthalten sind:
- Die Anzahl der Regelverletzungen.
- Die Anzahl der nicht genügend gesetzten Kurse.- Gibt zurück:
- Eine Güte des 1. Bewertungskriteriums im Bereich [0;1], mit 0=optimal.
-
getOfBewertung2Wert
public int getOfBewertung2Wert()Liefert den Wert des 2. Bewertungskriteriums. Darin enthalten sind:
- Die Anzahl der nicht zugeordneten Schülerfachwahlen.
- Die Anzahl der Schülerkollisionen.- Gibt zurück:
- Den Wert des 2. Bewertungskriteriums.
-
getOfBewertung2Farbcode
public double getOfBewertung2Farbcode()Liefert eine Güte des 2. Bewertungskriteriums im Bereich [0;1], mit 0=optimal. Darin enthalten sind:
- Die Anzahl der nicht zugeordneten Schülerfachwahlen.
- Die Anzahl der Schülerkollisionen.- Gibt zurück:
- Eine Güte des 2. Bewertungskriteriums im Bereich [0;1], mit 0=optimal.
-
getOfBewertung3Wert
public int getOfBewertung3Wert()Liefert den Wert des 3. Bewertungskriteriums (Kursdifferenz).- Gibt zurück:
- den Wert des 3. Bewertungskriteriums (Kursdifferenz).
-
getOfBewertung3Farbcode
public double getOfBewertung3Farbcode()Liefert eine Güte des 3. Bewertungskriteriums (Kursdifferenz) im Bereich [0;1], mit 0=optimal.- Gibt zurück:
- eine Güte des 3. Bewertungskriteriums (Kursdifferenz) im Bereich [0;1], mit 0=optimal.
-
getOfBewertung3Wert_nur_LK
public int getOfBewertung3Wert_nur_LK()Liefert den Wert des 3. Bewertungskriteriums (Kursdifferenz) nur bezogen auf die Kursart LK.- Gibt zurück:
- den Wert des 3. Bewertungskriteriums (Kursdifferenz) nur bezogen auf die Kursart LK.
-
getOfBewertung3Farbcode_nur_LK
public double getOfBewertung3Farbcode_nur_LK()Liefert eine Güte des 3. Bewertungskriteriums (Kursdifferenz, nur LK) im Bereich [0;1], mit 0=optimal.- Gibt zurück:
- eine Güte des 3. Bewertungskriteriums (Kursdifferenz, nur LK) im Bereich [0;1], mit 0=optimal.
-
getOfBewertung3Wert_nur_GK
public int getOfBewertung3Wert_nur_GK()Liefert den Wert des 3. Bewertungskriteriums (Kursdifferenz) nur bezogen auf die Kursart GK.- Gibt zurück:
- den Wert des 3. Bewertungskriteriums (Kursdifferenz) nur bezogen auf die Kursart GK.
-
getOfBewertung3Farbcode_nur_GK
public double getOfBewertung3Farbcode_nur_GK()Liefert eine Güte des 3. Bewertungskriteriums (Kursdifferenz, nur GK) im Bereich [0;1], mit 0=optimal.- Gibt zurück:
- eine Güte des 3. Bewertungskriteriums (Kursdifferenz, nur GK) im Bereich [0;1], mit 0=optimal.
-
getOfBewertung3Wert_nur_REST
public int getOfBewertung3Wert_nur_REST()Liefert den Wert des 3. Bewertungskriteriums (Kursdifferenz) nur bezogen auf Kursarten die nicht LK oder GK sind.- Gibt zurück:
- den Wert des 3. Bewertungskriteriums (Kursdifferenz) nur bezogen auf Kursarten die nicht LK oder GK sind.
-
getOfBewertung3Farbcode_nur_REST
public double getOfBewertung3Farbcode_nur_REST()Liefert eine Güte des 3. Bewertungskriteriums (Kursdifferenz, alles außer LK und GK) im Bereich [0;1], mit 0=optimal.- Gibt zurück:
- eine Güte des 3. Bewertungskriteriums (Kursdifferenz, alles außer LK und GK) im Bereich [0;1], mit 0=optimal.
-
getOfBewertung4Wert
public int getOfBewertung4Wert()Liefert den Wert des 4. Bewertungskriteriums. Darin enthalten sind:
- Die Anzahl an Kursen mit gleicher Fachart (Fach, Kursart) in einer Schiene.
Dieses Bewertungskriterium wird teilweise absichtlich verletzt, wenn z. B. Schienen erzeugt werden mit dem selben Fach (Sport-Schiene). Nichtsdestotrotz möchte man häufig nicht die selben Fächer in einer Schiene, aufgrund von Raumkapazitäten (Fachräume).- Gibt zurück:
- Den Wert des 4. Bewertungskriteriums.
-
getOfBewertung4Farbcode
public double getOfBewertung4Farbcode()Liefert eine Güte des 4. Bewertungskriteriums im Bereich [0;1], mit 0=optimal. Darin enthalten sind:
- Die Anzahl an Kursen mit gleicher Fachart (Fach, Kursart) in einer Schiene.
Dieses Bewertungskriterium wird teilweise absichtlich verletzt, wenn z. B. Schienen erzeugt werden mit dem selben Fach (Sport-Schiene). Nichtsdestotrotz möchte man häufig nicht die selben Fächer in einer Schiene, aufgrund von Raumkapazitäten (Fachräume).- Gibt zurück:
- Eine Güte des 4. Bewertungskriteriums im Bereich [0;1], mit 0=optimal.
-
getOfBewertungAnzahlNichtZugeordneterKurse
public int getOfBewertungAnzahlNichtZugeordneterKurse()Liefert die Anzahl nicht vollständig verteilter Kurse.
Ein Multikurse der über mehrere Schienen geht und gar nicht zugeteilt wurde, wird mehrfach gezählt.- Gibt zurück:
- die Anzahl nicht vollständig verteilter Kurse.
-
getOfBewertungAnzahlNichtzugeordneterFachwahlen
public int getOfBewertungAnzahlNichtzugeordneterFachwahlen()Liefert die Anzahl an Fachwahlen, die nicht zugeordnet wurden.- Gibt zurück:
- die Anzahl an Fachwahlen, die nicht zugeordnet wurden.
-
getFach
Ermittelt dasGostFach
für die angegebene ID. Delegiert den Aufruf an den Fächer-Manager des Eltern-ObjektesGostBlockungsdatenManager
.
Wirft eineDeveloperNotificationException
falls die ID unbekannt ist.- Parameter:
idFach
- Die Datenbank-ID des Faches.- Gibt zurück:
- Das
GostFach
-Objekt. - Löst aus:
DeveloperNotificationException
- falls die ID unbekannt ist.
-
getOfFachKursmenge
@NotNull public @NotNull List<GostBlockungsergebnisKurs> getOfFachKursmenge(long idFach) throws DeveloperNotificationException Liefert die Menge aller Kurse mit dem angegebenen Fach-ID.- Parameter:
idFach
- Die Datenbank-ID des Faches.- Gibt zurück:
- die Menge aller Kurse mit dem angegebenen Fach-ID.
- Löst aus:
DeveloperNotificationException
- falls die Fach-ID unbekannt ist.
-
getOfFachartKursmenge
@NotNull public @NotNull List<GostBlockungsergebnisKurs> getOfFachartKursmenge(long idFachart) throws DeveloperNotificationException Liefert die Kursmenge, die zur Fachart gehört. Die Fachart-ID wird berechnet über:GostKursart.getFachartID(long, int)
.
Hinweis: Die Kursmenge pro Fachart ist sortiert nachkursSetSortierungFachKursartNummer()
oderkursSetSortierungKursartFachNummer()
.
Hinweis: Wirft eineDeveloperNotificationException
falls die Fachart-ID unbekannt ist.- Parameter:
idFachart
- Die Fachart-ID wird berechnet über:GostKursart.getFachartID(long, int)
.- Gibt zurück:
- die Kursmenge, die zur Fachart gehört.
- Löst aus:
DeveloperNotificationException
- falls die Fachart-ID unbekannt ist.
-
getOfFachartKursdifferenz
Liefert die Kursdifferenz der Fachart und beachtet dabei Dummy-SuS von Kursen. Die Fachart-ID wird berechnet über:GostKursart.getFachartID(long, int)
. Die Methode beachtet auch Kurse mit Dummy-SuS.
Wirft eineDeveloperNotificationException
falls die Fachart-ID unbekannt ist.- Parameter:
idFachart
- Die Fachart-ID wird berechnet über:GostKursart.getFachartID(long, int)
.- Gibt zurück:
- die Kursdifferenz der Fachart und beachtet dabei Dummy-SuS von Kursen.
- Löst aus:
DeveloperNotificationException
- falls die Fachart-ID unbekannt ist.
-
getOfFachOfKursartKursdifferenz
public int getOfFachOfKursartKursdifferenz(long idFach, int idKursart) throws DeveloperNotificationException Liefert die Kursdifferenz der Fachart, übergeben als (Fach, Kursart). Die Methode beachtet auch Kurse mit Dummy-SuS.
Wirft eineDeveloperNotificationException
falls die Fachart-ID unbekannt ist.- Parameter:
idFach
- Die Datenbank-ID des Faches.idKursart
- Die ID der Kursart.- Gibt zurück:
- die Kursdifferenz der Fachart, übergeben als (Fach, Kursart).
- Löst aus:
DeveloperNotificationException
- falls die Fachart-ID unbekannt ist.
-
kursSetSortierungKursartFachNummer
public void kursSetSortierungKursartFachNummer()Ändert die aktuelle Sortierung von Facharten und Kursen.
Hinweis: Sortiert zuerst nach LK/GK, dann nach der Fachsortierung, zuletzt nach der Kursnummer. -
kursSetSortierungFachKursartNummer
public void kursSetSortierungFachKursartNummer()Ändert die aktuelle Sortierung von Facharten und Kursen.
Hinweis: Sortiert zuerst nach der Fachsortierung, dann nach LK/GK, zuletzt nach der Kursnummer. -
getOfSchuelerNameVorname
Liefert einen Schüler-String im Format: 'Nachname, Vorname'.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.- Gibt zurück:
- einen Schüler-String im Format: 'Nachname, Vorname'.
-
getOfSchuelerKursmenge
Liefert die Menge aller Kurse, die dem Schüler zugeordnet sind.
Wirft eine Exception, wenn der ID kein Schüler zugeordnet ist.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.- Gibt zurück:
- Die Menge aller Kurse, die dem Schüler zugeordnet sind.
-
getOfSchuelerKursmengeMitKollisionen
@NotNull public @NotNull Set<GostBlockungsergebnisKurs> getOfSchuelerKursmengeMitKollisionen(long idSchueler) Liefert die Menge aller Kurse des Schülers mit Kollisionen.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.- Gibt zurück:
- Die Menge aller Kurse des Schülers mit Kollisionen.
-
getOfSchuelerFachwahlmengeOhneKurszuordnung
@NotNull public @NotNull List<GostFachwahl> getOfSchuelerFachwahlmengeOhneKurszuordnung(long idSchueler) Liefert die Menge aller Fachwahlen eines Schülers, die keinem Kurs zugeordnet sind.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.- Gibt zurück:
- die Menge aller Fachwahlen eines Schülers, die keinem Kurs zugeordnet sind.
-
getOfSchuelerHatNichtwahl
public boolean getOfSchuelerHatNichtwahl(long idSchueler) Liefert TRUE, falls der Schüler mindestens eine Nichtwahl hat.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.- Gibt zurück:
- TRUE, falls der Schüler mindestens eine Nichtwahl hat.
-
getOfSchuelerHatFachwahl
public boolean getOfSchuelerHatFachwahl(long idSchueler, long idFach, int idKursart) Liefert TRUE, falls der übergebene Schüler die entsprechende Fachwahl (Fach + Kursart) hat.- Parameter:
idSchueler
- Die Datenbank.ID des Schülers.idFach
- Die Datenbank-ID des Faches der Fachwahl des Schülers.idKursart
- Die ID der Kursart der Fachwahl des Schülers.- Gibt zurück:
- TRUE, falls der übergebene Schüler die entsprechende Fachwahl (Fach + Kursart) hat.
-
getOfSchuelerHatKollision
public boolean getOfSchuelerHatKollision(long idSchueler) Liefert TRUE, falls der Schüler mindestens eine Kollision hat.
Ein Schüler, der N>1 Mal in einer Schiene ist, erzeugt N-1 Kollisionen.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.- Gibt zurück:
- TRUE, falls der Schüler mindestens eine Kollision hat.
-
getOfSchuelerAnzahlGefiltert
public int getOfSchuelerAnzahlGefiltert(long idKurs, long idFach, int idKursart, int konfliktTyp, @NotNull @NotNull String subString, Geschlecht geschlecht, GostSchriftlichkeit schriftlichkeit) Liefert die Anzahl der Schüler, die den Filterkriterien entsprechen.- Parameter:
idKurs
- falls >= 0, werden Schüler des Kurses herausgefiltert.idFach
- falls >= 0, werden Schüler mit diesem Fach herausgefiltert.idKursart
- falls >= 0 und idFach >= 0, werden Schüler mit dieser Fach/Kursart Kombination herausgefiltert.konfliktTyp
- falls 1 = mit Kollisionen, 2 = mit Nichtwahlen, 3 = mit Kollisionen und Nichtwahlen, sonst alle Schüler.subString
- falls |pSubString| > 0 werden Schüler deren Vor- oder Nachname diesen String enthält herausgefiltert.geschlecht
- falls != null, werden die Schüler mit diesemGeschlecht
herausgefiltert.schriftlichkeit
- falls != null, werden die Schüler mit dieserGostSchriftlichkeit
herausgefiltert (isKurs oder idFach/idKursart müssen definiert sein).- Gibt zurück:
- die Anzahl der Schüler, die den Filterkriterien entsprechen.
-
getOfSchuelerOfSchieneHatKollision
public boolean getOfSchuelerOfSchieneHatKollision(long idSchueler, long idSchiene) Liefert TRUE, falls der Schüler in der Schiene mehr als einen Kurs belegt hat.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- TRUE, falls der Schüler in der Schiene mehr als einen Kurs belegt hat.
-
getOfSchuelerOfFachKursart
Liefert die zu (idSchueler, idFach) die jeweilige Kursart.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idFach
- Die Datenbank-ID des Faches.- Gibt zurück:
- Die zu (idSchueler, idFach) die jeweilige Kursart.
-
getOfSchuelerOfFachZugeordneterKurs
Liefert den zu (idSchueler, idFach) passenden Kurs oder NULL.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idFach
- Die Datenbank-ID des Faches.- Gibt zurück:
- den zu (idSchueler, idFach) passenden Kurs oder NULL.
-
getOfSchuelerNeuzuordnung
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate getOfSchuelerNeuzuordnung(long idSchueler, boolean fixiereBelegteKurse) Liefert einGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, welches für den Schüler eine berechnete Neuzuordnung der Kurse beinhaltet.- Parameter:
idSchueler
- Die ID desSchueler
-Objekts.fixiereBelegteKurse
- falls TRUE, werden alle Kurse fixiert, in denen der Schüler momentan ist.- Gibt zurück:
- ein
SchuelerblockungOutput
-Objekt, welches für den Schüler eine Neuzuordnung der Kurse beinhaltet.
-
getOfSchuelerOfKursIstZugeordnet
public boolean getOfSchuelerOfKursIstZugeordnet(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler dem Kurs zugeordnet ist.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- TRUE, falls der Schüler dem Kurs zugeordnet ist.
-
getOfSchuelerOfKursIstUngueltig
public boolean getOfSchuelerOfKursIstUngueltig(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler dem Kurs zugeordnet ist, aber keine entsprechende Fachwahl hat.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- TRUE, falls der Schüler dem Kurs zugeordnet ist, aber keine entsprechende Fachwahl hat.
-
getOfSchuelerOfKursIstGesperrt
public boolean getOfSchuelerOfKursIstGesperrt(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler im Kurs via Regel gesperrt sein soll.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- TRUE, falls der Schüler im Kurs via Regel gesperrt sein soll.
-
getOfSchuelerOfKursFachwahl
Liefert die Fachwahl des Schüler passend zu den Kurs.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Fachwahl des Schüler passend zu den Kurs.
-
getOfSchuelerMengeGefiltert
@NotNull public @NotNull List<Schueler> getOfSchuelerMengeGefiltert(long idKurs, long idFach, int idKursart, int konfliktTyp, @NotNull @NotNull String subString) Liefert eine nach Kriterien gefilterte Menge aller Schüler.- Parameter:
idKurs
- falls >= 0, werden Schüler des Kurses herausgefiltert.idFach
- falls >= 0, werden Schüler mit diesem Fach herausgefiltert.idKursart
- falls >= 0 und idFach >= 0, werden Schüler mit dieser Fach/Kursart Kombination herausgefiltert.konfliktTyp
- falls 1 = mit Kollisionen, 2 = mit Nichtwahlen, 3 = mit Kollisionen und Nichtwahlen, sonst alle Schüler.subString
- falls |pSubString| > 0 werden Schüler deren Vor- oder Nachname diesen String enthält herausgefiltert.- Gibt zurück:
- eine nach Kriterien gefilterte Menge aller Schüler.
-
getOfSchuelerMengeMitAbweichendemAbijahrgang
Liefert eine Liste aller Schüler, deren Abiturjahrgang nicht dem der Blockung entspricht.
Hinweis: Das kann passieren, wenn nach der Erstellung eines Blockungsergebnisses, ein Schüler nicht versetzt wird.- Gibt zurück:
- eine Liste aller Schüler, deren Abiturjahrgang nicht dem der Blockung entspricht.
-
getOfSchuelerMapIDzuUngueltigeKurse
@NotNull public @NotNull Map<Long,Set<GostBlockungsergebnisKurs>> getOfSchuelerMapIDzuUngueltigeKurse()Liefert die Map, welche einer Schüler-ID die Menge aller ungültigen Kurse zuordnet.
Hinweis 1: Hat ein Schüler keine ungültige Kurse, dann gibt es die ID nicht.
Hinweis 2: Gibt es keine ungültigen Wahlen, so ist die Map leer.- Gibt zurück:
- Die Map, welche einer Schüler-ID die Menge aller ungültigen Kurse zuordnet.
-
getOfSchuelerOfKursHatKollision
public boolean getOfSchuelerOfKursHatKollision(long idSchueler, long idKurs) Liefert TRUE, falls der Schüler in einer Schiene des Kurses eine Kollision hat.
Die Methode geht davon aus, dass der Schüler dem Kurs zugeordnet ist.- Parameter:
idSchueler
- Die Datenbank-ID des Schülers.idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- TRUE, falls der Schüler in einer Schiene des Kurses eine Kollision hat.
-
getOfSchuelerIstZusammenMitSchuelerInFach
public boolean getOfSchuelerIstZusammenMitSchuelerInFach(long idSchueler1, long idSchueler2, long idFach) Liefert TRUE, falls beide Schüler bezogen auf das Fach gemeinsam im selben Kurs sind.- Parameter:
idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.idFach
- Die Datenbank-ID des Faches- Gibt zurück:
- TRUE, falls beide Schüler im bezogen auf das Fach gemeinsam im selben Kurs sind.
-
getOfSchuelerOfKursAnzahlZusammenWuensche
public int getOfSchuelerOfKursAnzahlZusammenWuensche(long idS1, long idKurs) Liefert die Anzahl an SuS, die mit dem Schüler im Kurs sein wollen.- Parameter:
idS1
- Die ID desSchueler
-Objekts.idKurs
- Die ID desStundenplanKurs
-Objekts.- Gibt zurück:
- die Anzahl an SuS, die mit dem Schüler im Kurs sein wollen.
-
getOfSchuelerOfKursAnzahlVerbotenWuensche
public int getOfSchuelerOfKursAnzahlVerbotenWuensche(long idS1, long idKurs) Liefert die Anzahl an SuS, die mit dem Schüler nicht im Kurs sein sollen.- Parameter:
idS1
- Die ID desSchueler
-Objekts.idKurs
- Die ID desStundenplanKurs
-Objekts.- Gibt zurück:
- die Anzahl an SuS, die mit dem Schüler nicht im Kurs sein sollen.
-
getKursG
@NotNull public @NotNull GostBlockungKurs getKursG(long idKurs) throws DeveloperNotificationException Liefert denGostBlockungKurs
zur übergebenen ID.
Delegiert den Aufruf an das Eltern-ObjektGostBlockungsdatenManager
. Wirft eine DeveloperNotificationException, falls die ID unbekannt ist.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- den
GostBlockungKurs
zur übergebenen ID. - Löst aus:
DeveloperNotificationException
- falls die ID unbekannt ist.
-
getKursE
@NotNull public @NotNull GostBlockungsergebnisKurs getKursE(long idKurs) throws DeveloperNotificationException Liefert denGostBlockungsergebnisKurs
zur übergebenen ID.
Wirft eine DeveloperNotificationException, falls die ID unbekannt ist.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- den
GostBlockungsergebnisKurs
zur übergebenen ID. - Löst aus:
DeveloperNotificationException
- falls die ID unbekannt ist.
-
getKursmenge
Gibt die Menge derGostBlockungsergebnisKurs
zurück.- Gibt zurück:
- die Menge der
GostBlockungsergebnisKurs
-
getOfKursName
Liefert den Namen des Kurses, erzeugt aus Fach, der Kursart und der Nummer, beispielsweise D-GK1.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- den Namen des Kurses, erzeugt aus Fach, der Kursart und der Nummer, beispielsweise D-GK1.
-
getOfKursOfSchieneIstZugeordnet
public boolean getOfKursOfSchieneIstZugeordnet(long idKurs, long idSchiene) Liefert TRUE, falls der Kurs der Schiene zugeordnet ist.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- TRUE, falls der Kurs der Schiene zugeordnet ist.
-
getOfKursSchuelermenge
Liefert die Menge aller Schüler-Objekte des Kurses.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Menge aller Schüler-Objekte des Kurses.
-
getOfKursSchienenmenge
@NotNull public @NotNull Set<GostBlockungsergebnisSchiene> getOfKursSchienenmenge(long idKurs) throws DeveloperNotificationException Liefert die Schienenmenge des Kurses.
Wirft eine Exception, falls der ID kein Kurs zugeordnet ist.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Schienenmenge des Kurses.
- Löst aus:
DeveloperNotificationException
- falls der ID kein Kurs zugeordnet ist.
-
getOfKursSchienenNummern
@NotNull public @jakarta.validation.constraints.NotNull int[] getOfKursSchienenNummern(long idKurs) Liefert ein Array aller Schienen-Nummern des Kurses.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- ein Array aller Schienen-Nummern des Kurses.
-
getOfKursAnzahlSchueler
public int getOfKursAnzahlSchueler(long idKurs) Liefert die Anzahl an Schülern die dem Kurs zugeordnet sind ohne Dummy SuS.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl an Schülern die dem Kurs zugeordnet sind ohne Dummy SuS.
-
getOfKursAnzahlSchuelerDummy
public int getOfKursAnzahlSchuelerDummy(long idKurs) Liefert die Anzahl an Dummy-SuS des Kurses. Dummy-SuS werden durch die Regel mit dem TypGostKursblockungRegelTyp.KURS_MIT_DUMMY_SUS_AUFFUELLEN
einem Kurs zugeordnet.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl an Dummy-SuS des Kurses.
-
getOfKursAnzahlSchuelerExterne
public int getOfKursAnzahlSchuelerExterne(long idKurs) Liefert die Anzahl externer SuS die dem Kurs zugeordnet sind.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl externer SuS die dem Kurs zugeordnet sind.
-
getOfKursAnzahlSchuelerSchriftlich
public int getOfKursAnzahlSchuelerSchriftlich(long idKurs) Liefert die Anzahl aller Schüler des Kurses mit SchriftlichkeitGostSchriftlichkeit.SCHRIFTLICH
.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl aller Schüler des Kurses mit Schriftlichkeit
GostSchriftlichkeit.SCHRIFTLICH
.
-
getOfKursAnzahlSchienenIst
public int getOfKursAnzahlSchienenIst(long idKurs) Liefert die Anzahl an Schienen in denen der Kurs gerade ist.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl an Schienen in denen der Kurs gerade ist.
-
getOfKursAnzahlSchienenSoll
public int getOfKursAnzahlSchienenSoll(long idKurs) Liefert die Anzahl an Schienen, die der Kurs haben sollte.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl an Schienen, die der Kurs haben sollte.
-
getOfKursAnzahlSchuelerAbiturLK
public int getOfKursAnzahlSchuelerAbiturLK(long idKurs) Liefert die Anzahl an Schülern, die den Kurs mit Abiturfach 1 oder 2 gewählt (also LK) haben.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl an Schülern, die den Kurs mit Abiturfach 1 oder 2 gewählt (also LK) haben.
-
getOfKursAnzahlSchuelerAbitur3
public int getOfKursAnzahlSchuelerAbitur3(long idKurs) Liefert die Anzahl an Schülern, die den Kurs mit Abiturfach 3 gewählt haben.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl an Schülern, die den Kurs mit Abiturfach 3 gewählt haben.
-
getOfKursAnzahlSchuelerAbitur4
public int getOfKursAnzahlSchuelerAbitur4(long idKurs) Liefert die Anzahl an Schülern, die den Kurs mit Abiturfach 4 gewählt haben.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Gibt zurück:
- die Anzahl an Schülern, die den Kurs mit Abiturfach 4 gewählt haben.
-
getOfKursMaxSuS
public long getOfKursMaxSuS(long idKurs) Liefert die maximale Anzahl an SuS, die in dem Kurs sein dürfen, oder 999 falls es keine Begrenzung gibt.- Parameter:
idKurs
- Die ID desStundenplanKurs
-Objekts.- Gibt zurück:
- die maximale Anzahl an SuS, die in dem Kurs sein dürfen, oder 999 falls es keine Begrenzung gibt.
-
getMappingKursIDSchuelerIDs
Liefert die Map, welche jedem Kurs seine Schülermenge zuordnet.- Gibt zurück:
- Die Map, welche jedem Kurs seine Schülermenge zuordnet.
-
getMappingKursIDSchienenmenge
@NotNull public @NotNull Map<Long,Set<GostBlockungsergebnisSchiene>> getMappingKursIDSchienenmenge()Liefert die Map, welche jedem Kurs seine Schienenmenge zuordnet.- Gibt zurück:
- Die Map, welche jedem Kurs seine Schienenmenge zuordnet.
-
regelGetMap_regelID_to_verletzungString
Liefert die Map, welche der verletzten Regel-ID (long) die Beschreibung (String) zuordnet.
Hinweis: Nur verletzte Regel-IDs sind in der KEY-Menge enthalten.- Gibt zurück:
- die Map, welche der verletzten Regel-ID (long) die Beschreibung (String) zuordnet.
-
regelupdateCreate_01_KURSART_SPERRE_SCHIENEN_VON_BIS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_01_KURSART_SPERRE_SCHIENEN_VON_BIS(int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursart-Schienenmengen-Sperrung zu setzen.
(1) Wenn ein Kurs der Kursart im Schienen-Bereich liegt und gesperrt ist, wird dies entfernt.
(2) Wenn ein Kurs der Kursart im Schienen-Bereich liegt und fixiert ist, wird dies entfernt.
(3a) Wenn die Regel in falscher von/bis-Reihenfolge existiert, wird sie entfernt.
(3b) Wenn die Regel nicht bereits existiert, wird sie hinzugefügt.- Parameter:
kursart
- Die Kursart der Kurse für welche diese Regel gilt.schienenNrVon
- Der Anfangsbereich der Schienen.schienenNrBis
- Der Endbereich der Schienen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursart-Schienenmengen-Sperrung zu setzen.
-
regelupdateCreate_02_KURS_FIXIERE_IN_SCHIENE_MARKIERT
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_02_KURS_FIXIERE_IN_SCHIENE_MARKIERT(@NotNull @NotNull Set<Long> setKursID, @NotNull @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kurs-Schienen-Fixierung einer Rechtecks-Auswahl zu realisieren.
(1) Wenn der Kurs markiert ist und eine Sperrung hat, wird die Sperrung entfernt.
(2) Wenn der Kurs markiert ist und keine Fixierung hat, wird eine Fixierung erzeugt.
(3) Fixierungen außerhalb der Kurslage werden vorsichtshalber gelöscht.- Parameter:
setKursID
- Die Menge aller Kurs-IDs.setSchienenNr
- Die Menge aller markierten Schienen-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kurs-Schienen-Fixierung einer Rechtecks-Auswahl zu realisieren.
-
regelupdateCreate_02b_KURS_FIXIERE_MENGE_IN_IHREN_SCHIENEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_02b_KURS_FIXIERE_MENGE_IN_IHREN_SCHIENEN(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmenge komplett in ihrer Lage zu fixieren.
(1) Fixierungen innerhalb der Kurslage werden hinzugefügt, falls noch nicht existend.
(2) Fixierungen außerhalb der Kurslage werden gelöscht.- Parameter:
setKursID
- Die Kursmenge, die fixiert werden soll.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursmenge komplett in ihrer Lage zu fixieren.
-
regelupdateCreate_02c_KURS_FIXIERE_ALLE_IN_IHREN_SCHIENEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_02c_KURS_FIXIERE_ALLE_IN_IHREN_SCHIENEN()Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurse komplett in ihrer Lage zu fixieren.
(1) Fixierungen innerhalb der Kurslage werden hinzugefügt, falls noch nicht existend.
(2) Fixierungen außerhalb der Kurslage werden gelöscht.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Kurse komplett in ihrer Lage zu fixieren.
-
regelupdateCreate_02d_KURS_FIXIERE_IN_SCHIENE_TOGGLE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_02d_KURS_FIXIERE_IN_SCHIENE_TOGGLE(@NotNull @NotNull Set<Long> setKursID, @NotNull @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Toggle-Fixierung zu realisieren.
(1) Wenn der Kurs im Schienen-Bereich liegt und fixiert ist, wird die Fixierung gelöst.
(2) Wenn der Kurs im Schienen-Bereich liegt und nicht fixiert ist, wird er fixiert
(3) und falls dort eine Sperrung vorliegt, dann wird die Sperrung entfernt.- Parameter:
setKursID
- Die Menge aller Kurs-IDs.setSchienenNr
- Die Menge aller Schienen-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Toggle-Fixierung zu realisieren.
-
regelupdateCreate_02e_KURS_FIXIERE_IN_EINER_SCHIENE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_02e_KURS_FIXIERE_IN_EINER_SCHIENE(long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um einen Kurs in einer Schiene zu fixieren.
(1) Wenn der Kurs in der Schiene eine Sperrung hat, wird diese entfernt.
(2) Wenn der Kurs bereits in der Schiene fixiert ist, passiert nichts weiteres.
(3) Wenn der Kurs bereits vollständig fixiert ist, werden seine alten Fixierungen entfernt.
(4) Andernfalls wird der Kurs in der Schiene fixiert.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.schienenNr
- Die Nummer der Schiene, die fixiert werden soll.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um einen Kurs in einer Schiene zu fixieren.
-
regelupdateCreate_03_KURS_SPERRE_IN_SCHIENE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_03_KURS_SPERRE_IN_SCHIENE(@NotNull @NotNull Set<Long> setKursID, @NotNull @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Sperrung zu setzen.
(1) Wenn der Kurs im Schienen-Bereich nicht gesperrt ist und keine Fixierung vorliegt, wird er gesperrt.- Parameter:
setKursID
- Die Menge aller Kurs-IDs.setSchienenNr
- Die Menge aller Schienen-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Sperrung zu setzen.
-
regelupdateCreate_03b_KURS_SPERRE_IN_SCHIENE_TOGGLE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_03b_KURS_SPERRE_IN_SCHIENE_TOGGLE(@NotNull @NotNull Set<Long> setKursID, @NotNull @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Toggle-Sperrung zu realisieren.
(1) Wenn der Kurs im Schienen-Bereich liegt und gesperrt ist, wird die Sperrung gelöst.
(2) Wenn der Kurs im Schienen-Bereich liegt und nicht gesperrt ist und keine Fixierung vorliegt, wird er gesperrt.- Parameter:
setKursID
- Die Menge aller Kurs-IDs.setSchienenNr
- Die Menge aller Schienen-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Toggle-Sperrung zu realisieren.
-
regelupdateCreate_04_SCHUELER_FIXIEREN_IN_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04_SCHUELER_FIXIEREN_IN_KURS(@NotNull @NotNull Set<Long> setSchuelerID, @NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Fixierung zu setzen.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler bereits im Kurs fixiert ist, wird dies ignoriert.
(4) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
setSchuelerID
- Die Menge der Schüler-IDs.setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Fixierung zu setzen.
-
regelupdateCreate_04b_SCHUELER_FIXIEREN_IN_DEN_KURSEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04b_SCHUELER_FIXIEREN_IN_DEN_KURSEN(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen einer Kursmenge zu setzen.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler bereits im Kurs fixiert ist, wird dies ignoriert.
(4) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen einer Kursmenge zu setzen.
-
regelupdateCreate_04c_SCHUELER_FIXIEREN_IN_ALLEN_KURSEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04c_SCHUELER_FIXIEREN_IN_ALLEN_KURSEN()Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler in ihren aktuellen Kursen zu fixieren.
Die Methode delegiert alles anregelupdateCreate_04_SCHUELER_FIXIEREN_IN_KURS(java.util.Set<java.lang.Long>, java.util.Set<java.lang.Long>)
.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Schüler in ihren aktuellen Kursen zu fixieren.
-
regelupdateCreate_04e_SCHUELER_FIXIEREN_TYP_LK
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller LK-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller LK-Schüler zu fixieren.
-
regelupdateCreate_04e_SCHUELER_FIXIEREN_TYP_LK_DER_KURSMENGE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04e_SCHUELER_FIXIEREN_TYP_LK_DER_KURSMENGE(@NotNull @NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle LK-Schüler einer Kursmenge zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
kursIDs
- Die Menge der Kurse.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle LK-Schüler einer Kursmenge zu fixieren.
-
regelupdateCreate_04f_SCHUELER_FIXIEREN_TYP_AB3
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB3-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller AB3-Schüler zu fixieren.
-
regelupdateCreate_04f_SCHUELER_FIXIEREN_TYP_AB3_DER_KURSMENGE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04f_SCHUELER_FIXIEREN_TYP_AB3_DER_KURSMENGE(@NotNull @NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB3-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
kursIDs
- Die Menge der Kurse.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller AB3-Schüler zu fixieren.
-
regelupdateCreate_04g_SCHUELER_FIXIEREN_TYP_LK_UND_AB3
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04g_SCHUELER_FIXIEREN_TYP_LK_UND_AB3()Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller LKs und AB3-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller LKs und AB3-Schüler zu fixieren.
-
regelupdateCreate_04g_SCHUELER_FIXIEREN_TYP_LK_UND_AB3_DER_KURSMENGE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04g_SCHUELER_FIXIEREN_TYP_LK_UND_AB3_DER_KURSMENGE(@NotNull @NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller LKs und AB3-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
kursIDs
- Die Menge der Kurse.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller LKs und AB3-Schüler zu fixieren.
-
regelupdateCreate_04h_SCHUELER_FIXIEREN_TYP_AB4
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB4-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller AB4-Schüler zu fixieren.
-
regelupdateCreate_04h_SCHUELER_FIXIEREN_TYP_AB4_DER_KURSMENGE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04h_SCHUELER_FIXIEREN_TYP_AB4_DER_KURSMENGE(@NotNull @NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB4-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
kursIDs
- Die Menge der Kurse.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller AB4-Schüler zu fixieren.
-
regelupdateCreate_04i_SCHUELER_FIXIEREN_TYP_AB
Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller AB-Schüler zu fixieren.
-
regelupdateCreate_04i_SCHUELER_FIXIEREN_TYP_AB_DER_KURSMENGE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04i_SCHUELER_FIXIEREN_TYP_AB_DER_KURSMENGE(@NotNull @NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller AB-Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
kursIDs
- Die Menge der Kurse.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller AB-Schüler zu fixieren.
-
regelupdateCreate_04j_SCHUELER_FIXIEREN_TYP_SCHRIFTLICH
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04j_SCHUELER_FIXIEREN_TYP_SCHRIFTLICH()Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller schriftlichen Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller schriftlichen Schüler zu fixieren.
-
regelupdateCreate_04j_SCHUELER_FIXIEREN_TYP_SCHRIFTLICH_DER_KURSMENGE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_04j_SCHUELER_FIXIEREN_TYP_SCHRIFTLICH_DER_KURSMENGE(@NotNull @NotNull Set<Long> kursIDs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Menge aller schriftlichen Schüler zu fixieren.
(1) Wenn der Schüler im Kurs gesperrt ist, wird dies entfernt.
(2) Wenn der Schüler nicht im Kurs fixiert ist, wird er fixiert.
(3) Wenn der Schüler im Nachbar-Kurs fixiert ist, wird dies entfernt.- Parameter:
kursIDs
- Die Menge der Kurse.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Menge aller schriftlichen Schüler zu fixieren.
-
regelupdateCreate_05_SCHUELER_VERBIETEN_IN_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_05_SCHUELER_VERBIETEN_IN_KURS(@NotNull @NotNull Set<Long> setSchuelerID, @NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Sperrung zu setzen.
(1) Wenn der Schüler im Kurs fixiert ist, wird die Fixierung entfernt.
(2) Wenn der Schüler nicht im Kurs gesperrt ist, wird er gesperrt.- Parameter:
setSchuelerID
- Die Menge Schüler-IDs.setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Sperrung zu setzen.
-
regelupdateCreate_06_KURSART_ALLEIN_IN_SCHIENEN_VON_BIS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_06_KURSART_ALLEIN_IN_SCHIENEN_VON_BIS(int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursart-Schienenmengen-Allein-Zuordnung zu setzen.
(1) Alle Regeln der selben Kursart werden zunächst entfernt, da zwei solcher Regeln sich widersprechen würden.
(2) Wenn eine Kursart-Fixierung im falschen Bereich liegt, wird die Fixierung entfernt.
(3) Wenn eine Kursart-Sperrung im falschen Bereich liegt, wird die Sperrung entfernt.
(4) Zuletzt wird die Regel neu erzeugt und hinzugefügt.- Parameter:
kursart
- Die Kursart der Kurse für welche diese Regel gilt.schienenNrVon
- Der Anfangsbereich der Schienen.schienenNrBis
- Der Endbereich der Schienen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursart-Schienenmengen-Allein-Zuordnung zu setzen.
-
regelupdateCreate_07_KURS_VERBIETEN_MIT_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_07_KURS_VERBIETEN_MIT_KURS(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurs-Kurs-Verbote der Kursmenge (alle Paarungen) zu setzen.
(1) Wenn Kurs A mit Kurs B zusammen (Regel 8) sein soll, wird dies entfernt.
(2) Wenn die Regel bereits existiert, aber die IDs nicht aufsteigend sind, wird die (MaxKursID, MinKursID)-Kombination entfernt.
(3) Wenn die Regel nicht existiert, wird sie hinzugefügt.- Parameter:
setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Kurs-Kurs-Verbote der Kursmenge (alle Paarungen) zu setzen.
-
regelupdateCreate_08_KURS_ZUSAMMEN_MIT_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_08_KURS_ZUSAMMEN_MIT_KURS(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurs-Kurs-Zusammen-Gebote von setKursID (alle Paarungen) zu setzen.
(1) Wenn Kurs A mit Kurs B verboten (Regel 7) sein soll, wird dies entfernt.
(2) Wenn die Regel bereits existiert, aber die IDs nicht aufsteigend sind, wird die (MaxKursID, MinKursID)-Kombination entfernt.
(3) Wenn die Regel nicht existiert, wird sie hinzugefügt.- Parameter:
setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Kurs-Kurs-Zusammen-Gebote von setKursID (alle Paarungen) zu setzen.
-
regelupdateCreate_09_KURS_MIT_DUMMY_SUS_AUFFUELLEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_09_KURS_MIT_DUMMY_SUS_AUFFUELLEN(long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Anzahl der Dummy-Schüler eines Kurses zu setzen.
(1) Wenn die Regel bereits existiert, wird sie (zunächst) entfernt.
(2) Wenn danach die Anzahl einen Wert größer 0 hat, wird die Regel hinzugefügt.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.anzahl
- Die Anzahl an Dummy-Schülern.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Anzahl der Dummy-Schüler eines Kurses zu setzen.
-
regelupdateCreate_10_LEHRKRAEFTE_BEACHTEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_10_LEHRKRAEFTE_BEACHTEN(boolean erstellen) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um "Lehrkräfte beachten" zu aktivieren/deaktivieren.
(1) Wenn erstellen==FALSE und die Regel existiert, wird sie entfernt.
(2) Wenn erstellen==TRUE und die Regel existiert nicht, wird sie erzeugt.- Parameter:
erstellen
- Falls TRUE, wird die Regel aktiviert, andernfalls deaktiviert.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um "Lehrkräfte beachten" zu aktivieren/deaktivieren.
-
regelupdateCreate_11_SCHUELER_ZUSAMMEN_MIT_SCHUELER_IN_FACH
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_11_SCHUELER_ZUSAMMEN_MIT_SCHUELER_IN_FACH(long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in einem Fach zusammen zu setzen.
(1) Wenn beide Schüler-IDs identisch sind, wird die Regel ignoriert.
(2) Wenn es eine Schüler-Schüler-Fach-Verbieten-Regel gibt, wird diese entfernt.
(3) Wenn es eine Schüler-Schüler-Verbieten-Regel gibt, wird diese entfernt.
(4) Wenn es eine Schüler-Schüler-Zusammen-Regel gibt, wird diese entfernt.
(5a) Wenn es eine Schüler-Schüler-Fach-Zusammen-Regel in falscher Schüler-ID-Reihenfolge gibt, wird sie entfernt.
(5b) Wenn es keine Schüler-Schüler-Fach-Zusammen-Regel gibt, wird sie hinzugefügt.- Parameter:
idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.idFach
- Die Datenbank-ID des Faches- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um zwei Schüler in einem Fach zusammen zu setzen.
-
regelupdateCreate_12_SCHUELER_VERBIETEN_MIT_SCHUELER_IN_FACH
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_12_SCHUELER_VERBIETEN_MIT_SCHUELER_IN_FACH(long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in einem Fach zu verbieten.
(1) Wenn beide Schüler-IDs identisch sind, wird die Regel ignoriert.
(2) Wenn es eine Schüler-Schüler-Fach-Zusammen-Regel gibt, wird diese entfernt.
(3) Wenn es eine Schüler-Schüler-Zusammen-Regel gibt, wird diese entfernt.
(4) Wenn es eine Schüler-Schüler-Verboten-Regel gibt, wird diese entfernt.
(5a) Wenn es eine Schüler-Schüler-Fach-Verboten-Regel in falscher Schüler-ID-Reihenfolge gibt, wird sie entfernt.
(5b) Wenn es keine Schüler-Schüler-Fach-Verboten-Regel gibt, wird sie hinzugefügt.- Parameter:
idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.idFach
- Die Datenbank-ID des Faches- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um zwei Schüler in einem Fach zu verbieten.
-
regelupdateCreate_13_SCHUELER_ZUSAMMEN_MIT_SCHUELER
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_13_SCHUELER_ZUSAMMEN_MIT_SCHUELER(long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in jedem gemeinsamen Fach zusammen zu setzen.
(1) Wenn es eine Schüler-Schüler-Fach-Zusammen-Regel mit den selben Schülern gibt, wird diese entfernt.
(2) Wenn es eine Schüler-Schüler-Fach-Verbieten-Regel mit den selben Schülern gibt, wird diese entfernt.
(3) Wenn es eine Schüler-Schüler-Zusammen-Regel mit den selben Schülern gibt, wird diese entfernt (aber später hinzugefügt).
(4) Wenn es eine Schüler-Schüler-Verbieten-Regel mit den selben Schülern gibt, wird diese entfernt.
(5) Wenn die Schüler-IDs gültig sind, wird nun die Schüler-Schüler-Zusammen-Regel hinzugefügt.- Parameter:
idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um zwei Schüler in jedem gemeinsamen Fach zusammen zu setzen.
-
regelupdateCreate_14_SCHUELER_VERBIETEN_MIT_SCHUELER
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_14_SCHUELER_VERBIETEN_MIT_SCHUELER(long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um zwei Schüler in jedem gemeinsamen Fach zu verbieten.
(1) Wenn es eine Schüler-Schüler-Fach-Zusammen-Regel mit den selben Schülern gibt, wird diese entfernt.
(2) Wenn es eine Schüler-Schüler-Fach-Verbieten-Regel mit den selben Schülern gibt, wird diese entfernt.
(3) Wenn es eine Schüler-Schüler-Zusammen-Regel mit den selben Schülern gibt, wird diese entfernt.
(4) Wenn es eine Schüler-Schüler-Verbieten-Regel mit den selben Schülern gibt, wird diese entfernt (aber später hinzugefügt).
(5) Wenn die Schüler-IDs gültig sind, wird nun die Schüler-Schüler-Verbieten-Regel hinzugefügt.- Parameter:
idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um zwei Schüler in jedem gemeinsamen Fach zu verbieten.
-
regelupdateCreate_15_KURS_MAXIMALE_SCHUELERANZAHL
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_15_KURS_MAXIMALE_SCHUELERANZAHL(long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die maximale Anzahl an Schülern eines Kurses zu setzen.
(1) Wenn die Regel bereits existiert, wird sie (zunächst) entfernt.
(2) Wenn danach die Anzahl einen Wert im Intervall [0;99] hat, wird die Regel hinzugefügt.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.anzahl
- Die maximale Anzahl an SuS des Kurses.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die maximale Anzahl an Schülern eines Kurses zu setzen.
-
regelupdateCreate_16_SCHUELER_IGNORIEREN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_16_SCHUELER_IGNORIEREN(@NotNull @NotNull Set<Long> setSchuelerID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermenge beim Blocken zu ignorieren.
(1) Wenn diese Regel nicht existiert, wird sie hinzugefügt.- Parameter:
setSchuelerID
- Die Menge der Schüler-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Schülermenge beim Blocken zu ignorieren.
-
regelupdateCreate_17_KURS_KURSDIFFERENZ_BEI_DER_VISUALISIERUNG_IGNORIEREN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_17_KURS_KURSDIFFERENZ_BEI_DER_VISUALISIERUNG_IGNORIEREN(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmenge von Kursdifferenz-Berechnungen auszuschließen.
(1) Wenn diese Regel nicht existiert, wird sie hinzugefügt.- Parameter:
setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursmenge von Kursdifferenz-Berechnungen auszuschließen.
-
regelupdateCreate_18_FACH_KURSART_MAXIMALE_ANZAHL_PRO_SCHIENE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_18_FACH_KURSART_MAXIMALE_ANZAHL_PRO_SCHIENE(long idFach, int idKursart, int maximal) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die maximale Anzahl an Kursen einer bestimmten Fachart (in jeder Schiene) zu begrenzen.
(1) Falls die Regel bereits existiert, wird sie zunächst entfernt.
(2) Falls der "maximal"-Wert 1 ist und es Regeln KURS_VERBIETEN_MIT_KURS bei Paaren dieser Fachart gibt, werden die Regeln entfernt.
(3) Zuletzt wird die neue Regel hinzugefügt.- Parameter:
idFach
- Die Datenbank-ID des Faches.idKursart
- Die ID der Kursart.maximal
- Die maximale Kursanzahl dieser Fachart (in jeder Schiene). Gültige Werte sind 1 bis 9.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die maximale Anzahl an Kursen einer bestimmten Fachart (in jeder Schiene) zu begrenzen.
-
regelupdateCreate_19_SCHUELERMENGE_ENTFERNEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateCreate_19_SCHUELERMENGE_ENTFERNEN(@NotNull @NotNull Set<Long> setSchuelerID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Regeln einer Schülermenge zu entfernen.- Parameter:
setSchuelerID
- Die Menge der Schüler-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Regeln einer Schülermenge zu entfernen.
-
regelupdatePatchByID_01_KURSART_SPERRE_SCHIENEN_VON_BIS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_01_KURSART_SPERRE_SCHIENEN_VON_BIS(long idRegelAlt, int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.kursart
- Die Kursart der Kurse für welche diese Regel gilt.schienenNrVon
- Der Anfangsbereich der Schienen.schienenNrBis
- Der Endbereich der Schienen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_02e_KURS_FIXIERE_IN_EINER_SCHIENE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_02e_KURS_FIXIERE_IN_EINER_SCHIENE(long idRegelAlt, long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idKurs
- Die Datenbank-ID des Kurses.schienenNr
- Die Nummer der Schiene, die fixiert werden soll.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_03_KURS_SPERRE_IN_SCHIENE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_03_KURS_SPERRE_IN_SCHIENE(long idRegelAlt, long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idKurs
- Die ID des Kurses.schienenNr
- Die Nummer der Schiene.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_04_SCHUELER_FIXIEREN_IN_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_04_SCHUELER_FIXIEREN_IN_KURS(long idRegelAlt, long idSchueler, long idKurs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idSchueler
- Die ID des Schülers.idKurs
- Die ID des Kurses.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_05_SCHUELER_VERBIETEN_IN_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_05_SCHUELER_VERBIETEN_IN_KURS(long idRegelAlt, long idSchueler, long idKurs) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idSchueler
- Die ID des Schülers.idKurs
- Die ID des Kurses.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_06_KURSART_ALLEIN_IN_SCHIENEN_VON_BIS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_06_KURSART_ALLEIN_IN_SCHIENEN_VON_BIS(long idRegelAlt, int kursart, int schienenNrVon, int schienenNrBis) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.kursart
- Die Kursart der Kurse für welche diese Regel gilt.schienenNrVon
- Der Anfangsbereich der Schienen.schienenNrBis
- Der Endbereich der Schienen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_07_KURS_VERBIETEN_MIT_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_07_KURS_VERBIETEN_MIT_KURS(long idRegelAlt, long idKurs1, long idKurs2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idKurs1
- Die ID des 1. Kurses.idKurs2
- Die ID des 2. Kurses.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_08_KURS_ZUSAMMEN_MIT_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_08_KURS_ZUSAMMEN_MIT_KURS(long idRegelAlt, long idKurs1, long idKurs2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idKurs1
- Die ID des 1. Kurses.idKurs2
- Die ID des 2. Kurses.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_09_KURS_MIT_DUMMY_SUS_AUFFUELLEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_09_KURS_MIT_DUMMY_SUS_AUFFUELLEN(long idRegelAlt, long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idKurs
- Die ID des Kurses.anzahl
- Die Anzahl an Dummy-SuS des Kurses.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_11_SCHUELER_ZUSAMMEN_MIT_SCHUELER_IN_FACH
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_11_SCHUELER_ZUSAMMEN_MIT_SCHUELER_IN_FACH(long idRegelAlt, long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.idFach
- Die Datenbank-ID des Faches- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_12_SCHUELER_VERBIETEN_MIT_SCHUELER_IN_FACH
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_12_SCHUELER_VERBIETEN_MIT_SCHUELER_IN_FACH(long idRegelAlt, long idSchueler1, long idSchueler2, long idFach) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.idFach
- Die Datenbank-ID des Faches- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_13_SCHUELER_ZUSAMMEN_MIT_SCHUELER
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_13_SCHUELER_ZUSAMMEN_MIT_SCHUELER(long idRegelAlt, long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_14_SCHUELER_VERBIETEN_MIT_SCHUELER
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_14_SCHUELER_VERBIETEN_MIT_SCHUELER(long idRegelAlt, long idSchueler1, long idSchueler2) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idSchueler1
- Die Datenbank-ID des 1. Schülers.idSchueler2
- Die Datenbank-ID des 2. Schülers.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_15_KURS_MAXIMALE_SCHUELERANZAHL
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_15_KURS_MAXIMALE_SCHUELERANZAHL(long idRegelAlt, long idKurs, int anzahl) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idKurs
- Die ID des Kurses.anzahl
- Die maximale Anzahl der SuS des Kurses.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_16_SCHUELER_IGNORIEREN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_16_SCHUELER_IGNORIEREN(long idRegelAlt, long idSchueler) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
(1) Wenn die alte Regel nicht gefunden wird, passiert nichts.
(2) Wenn eine Regel mit genau den selben Parametern bereits existiert, passiert nichts.
(3) Andernfalls wird die alte Regel entfernt und eine neue Regel hinzugefügt.- Parameter:
idRegelAlt
- Die ID der alten zu modifizierenden Regel.idSchueler
- Die ID des Schülers.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Regel dieses Typs zu patchen.
-
regelupdatePatchByID_17_KURS_KURSDIFFERENZ_BEI_DER_VISUALISIERUNG_IGNORIEREN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdatePatchByID_17_KURS_KURSDIFFERENZ_BEI_DER_VISUALISIERUNG_IGNORIEREN(long idRegelAlt, long idKursNeu) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um die Regel von einem zu einem anderen Kurs zu patchen.
(1) Wenn die alte Regel nicht existiert, passiert nichts.
(2) Wenn die neue Kurs-ID bereits existiert, passiert nichts.
(3) Wenn die alte Kurs-ID der neuen Kurs-ID gleicht, passiert nichts.
(4) Andernfalls wird die alte Regel gelöscht (idKursAlt) und eine neue Regel wird erzeugt (idKursNeu).- Parameter:
idRegelAlt
- Die Regel, die modifiziert wird.idKursNeu
- Die neue Kurs-ID deren Regel hinzugefügt werden soll.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um die Regel von einem zu einem anderen Kurs zu patchen.
-
regelupdateRemove_02_KURS_FIXIERE_IN_SCHIENE_MARKIERT
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_02_KURS_FIXIERE_IN_SCHIENE_MARKIERT(@NotNull @NotNull Set<Long> setKursID, @NotNull @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Fixierung zu lösen.
(1) Wenn der Kurs im Schienen-Bereich liegt und bereits fixiert ist, wird die Fixierung entfernt.- Parameter:
setKursID
- Die Menge aller Kurs-IDs.setSchienenNr
- Die Menge aller Schienen-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Fixierung zu lösen.
-
regelupdateRemove_02b_KURS_FIXIERE_MENGE_IN_IHREN_SCHIENEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_02b_KURS_FIXIERE_MENGE_IN_IHREN_SCHIENEN(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Fixierung einer Kursmenge komplett zu lösen.
(1) Alle Fixierungen der Kursmenge werden gelöst.- Parameter:
setKursID
- Die Kursmenge, deren Fixierungen gelöst werden sollen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Fixierung einer Kursmenge komplett zu lösen.
-
regelupdateRemove_02c_KURS_FIXIERE_ALLE_IN_IHREN_SCHIENEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_02c_KURS_FIXIERE_ALLE_IN_IHREN_SCHIENEN()Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Kurs-Schienen-Fixierungen zu lösen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Kurs-Schienen-Fixierungen zu lösen.
-
regelupdateRemove_02e_KURS_FIXIERE_IN_EINER_SCHIENE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_02e_KURS_FIXIERE_IN_EINER_SCHIENE(long idKurs, int schienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kurs-Schienen-Fixierung zu lösen.
(1) Wenn der Kurs in der Schiene fixiert ist, wird die Fixierung entfernt.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.schienenNr
- Die Nummer der Schiene, die gelöst werden soll.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kurs-Schienen-Fixierung zu lösen.
-
regelupdateRemove_03_KURS_SPERRE_IN_SCHIENE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_03_KURS_SPERRE_IN_SCHIENE(@NotNull @NotNull Set<Long> setKursID, @NotNull @NotNull Set<Integer> setSchienenNr) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Sperrung zu lösen.
(1) Wenn der Kurs in dem Schienen-Bereich gesperrt ist, wird die Sperrung entfernt.- Parameter:
setKursID
- Die Menge aller Kurs-IDs.setSchienenNr
- Die Menge aller Schienen-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Kursmengen-Schienemengen-Sperrung zu lösen.
-
regelupdateRemove_04_SCHUELER_FIXIEREN_IN_KURS
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_04_SCHUELER_FIXIEREN_IN_KURS(@NotNull @NotNull Set<Long> setSchuelerID, @NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Fixierung zu lösen.
(1) Wenn der Schüler im Kurs fixiert ist, wird die Fixierung entfernt.- Parameter:
setSchuelerID
- Die Menge der Schüler-IDs.setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um eine Schülermengen-Kursmengen-Fixierung zu lösen.
-
regelupdateRemove_04b_SCHUELER_FIXIEREN_IN_DEN_KURSEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_04b_SCHUELER_FIXIEREN_IN_DEN_KURSEN(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen einer Kursmenge zu lösen.
(1) Wenn der Schüler im Kurs fixiert ist, wird die Fixierung entfernt.- Parameter:
setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen einer Kursmenge zu lösen.
-
regelupdateRemove_04c_SCHUELER_FIXIEREN_IN_ALLEN_KURSEN
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_04c_SCHUELER_FIXIEREN_IN_ALLEN_KURSEN()Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen zu lösen.
Die Methode delegiert alles anregelupdateCreate_04_SCHUELER_FIXIEREN_IN_KURS(java.util.Set<java.lang.Long>, java.util.Set<java.lang.Long>)
.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um alle Schüler-Kurs-Fixierungen zu lösen.
-
regelupdateRemove_04d_SCHUELER_FIXIEREN_IN_DEN_KURSEN_TOGGLE
@NotNull public @NotNull GostBlockungRegelUpdate regelupdateRemove_04d_SCHUELER_FIXIEREN_IN_DEN_KURSEN_TOGGLE(@NotNull @NotNull Set<Long> setKursID) Liefert alle nötigen Veränderungen alsGostBlockungRegelUpdate
-Objekt, um ein Schüler-Kurs-Fixierung-Toggle zu realisieren.
(1) Wenn der Schüler im Kurs fixiert ist, wird die Fixierung entfernt.
(2) Wenn der Schüler im Kurs nicht fixiert ist, wird die Fixierung gesetzt.
(3) Potentielle Fixierungen in Nachbar-Kursen werden entfernt, da sie in jedem Fall falsch sind.- Parameter:
setKursID
- Die Menge der Kurs-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungRegelUpdate
-Objekt, um ein Schüler-Kurs-Fixierung-Toggle zu realisieren.
-
regelupdateExecute
Entfernt erst alle Regeln ausGostBlockungRegelUpdate.listEntfernen
und fügt dann die neuen Regeln ausGostBlockungRegelUpdate.listHinzuzufuegen
hinzu.- Parameter:
update
- DasGostBlockungRegelUpdate
-Objekt.
-
kursSchuelerUpdate_01_LEERE_ALLE_KURSE
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate kursSchuelerUpdate_01_LEERE_ALLE_KURSE(boolean entferneAuchFixierte) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um alle Schüler aus den derzeit zugeordneten Kursen zu entfernen.
(1) Wenn ein Schüler in einem Kurs ist und nicht fixiert ist, wird er entfernt.
(2) Wenn ein Schüler in einem Kurs ist und fixiert ist, wird er entfernt, falls entferneAuchFixierte==TRUE ist.- Parameter:
entferneAuchFixierte
- Falls TRUE, werden auch fixiert SuS entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um alle Schüler aus den derzeit zugeordneten Kursen zu entfernen.
-
kursSchuelerUpdate_01b_LEERE_KURSMENGE
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate kursSchuelerUpdate_01b_LEERE_KURSMENGE(@NotNull @NotNull Set<Long> kursIDs, boolean entferneAuchFixierte) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um alle Schüler aus der übergebenen Kursmenge zu entfernen.
(1) Wenn ein Schüler in einem Kurs ist und nicht fixiert ist, wird er entfernt.
(2) Wenn ein Schüler in einem Kurs ist und fixiert ist, wird er entfernt, falls entferneAuchFixierte==TRUE ist.- Parameter:
kursIDs
- Die Menge der Kurse.entferneAuchFixierte
- Falls TRUE, werden auch fixiert SuS entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um alle Schüler aus der übergebenen Kursmenge zu entfernen.
-
kursSchuelerUpdate_02a_ENTFERNE_SCHUELERMENGE_AUS_KURS
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate kursSchuelerUpdate_02a_ENTFERNE_SCHUELERMENGE_AUS_KURS(@NotNull @NotNull Set<Long> schuelerIDs, long idKurs, boolean entferneAuchFixierte) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um eine Schülermenge aus einem Kurs zu entfernen.
(1) Wenn der Schüler dem Kurs zugeordnet ist und nicht fixiert ist, wird er entfernt.
(2) Wenn der Schüler dem Kurs zugeordnet ist und fixiert ist, wird er entfernt, falls entferneAuchFixierte==TRUE ist. Auch die Fixierungs-Regel wird entfernt.- Parameter:
schuelerIDs
- Die Menge der Schüler-IDs.idKurs
- Die Datenbank-ID des Kurses aus dem die Schüler entfernt werden sollen.entferneAuchFixierte
- Falls TRUE, werden auch fixiert SuS entfernt.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um eine Schülermenge aus einem Kurs zu entfernen.
-
kursSchuelerUpdate_02b_ENTFERNE_SCHUELERMENGE_AUS_ALLEN_KURSEN
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate kursSchuelerUpdate_02b_ENTFERNE_SCHUELERMENGE_AUS_ALLEN_KURSEN(@NotNull @NotNull Set<Long> schuelerIDs) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um eine Schülermenge aus allen Kursen entfernen.
Hinweis: Es werden keine Kurs-Fixierungs-Regeln entfernt. Dafür muss die zugehörige regelupdate-Methode aufgerufen werden.- Parameter:
schuelerIDs
- Die Menge der Schüler-IDs.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um eine Schülermenge aus allen Kursen entfernen.
-
kursSchuelerUpdate_03a_FUEGE_KURS_SCHUELER_PAARE_HINZU
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate kursSchuelerUpdate_03a_FUEGE_KURS_SCHUELER_PAARE_HINZU(@NotNull @NotNull Set<GostBlockungsergebnisKursSchuelerZuordnung> kursSchuelerZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler auf Kurse zu verteilen.
(1) Wenn der Schüler nicht im Kurs ist, wird er hinzugefügt.
(2) Wenn der Schüler in einem Nachbar-Kurs ist, wird er entfernt.
Hinweis: Wenn der Schüler den Kurs gar nicht gewählt hat, wird dies trotzdem erlaubt. Denn bei einer Umwahl, kann eine Kurszuordnung ungültig sein!- Parameter:
kursSchuelerZuordnungen
- Alle Kurs-Schüler-Paare, welche hinzugefügt werden sollen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler auf Kurse zu verteilen.
-
kursSchuelerUpdate_03b_ENTFERNE_KURS_SCHUELER_PAARE
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate kursSchuelerUpdate_03b_ENTFERNE_KURS_SCHUELER_PAARE(@NotNull @NotNull Set<GostBlockungsergebnisKursSchuelerZuordnung> kursSchuelerZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler aus Kursen zu entfernen.
(1) Wenn der Schüler im Kurs ist, wird er entfernt.
(2) Falls es Schüler-Kurs-Fixierungen gibt, werden diese entfernt.- Parameter:
kursSchuelerZuordnungen
- Alle Kurs-Schüler-Paare, welche entfernt werden sollen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler aus Kursen zu entfernen.
-
kursSchuelerUpdate_04_BILDE_KERNGRUPPEN
@NotNull public @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate kursSchuelerUpdate_04_BILDE_KERNGRUPPEN(long idQuellKurs, @NotNull @NotNull Set<Long> idZielKurse, boolean verschiebeFixierteDesQuellkurses, boolean inZielKursenFixieren, boolean zielKurseLeeren) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler-Kerngruppe auf mehrere Kurse zu verteilen.
(1) Die SuS werden entsprechende der MethodekursSchuelerUpdate_03a_VERSCHIEBE_SCHUELER_ZU_KURSEN(java.util.Set<de.svws_nrw.core.data.gost.GostBlockungsergebnisKursSchuelerZuordnung>, boolean, boolean)
verschoben.
(2) Falls "zielKurseLeeren", werden alle SuS aus dem Ziel-Kurs entfernt, die nicht zur Kerngruppe gehören.- Parameter:
idQuellKurs
- Der Quell-Kurs definiert die Kerngruppe.idZielKurse
- Alle Ziel-Kurs-Schülermengen werden der Kerngruppe angeglichen.verschiebeFixierteDesQuellkurses
- Falls TRUE, dann werden Fixierungen im Quell-Kurs gelöst, andernfalls wird der Schüler nicht verschoben.inZielKursenFixieren
- Falls TRUE, wird nach der Verschiebung der Schüler im Ziel-Kurs fixiert.zielKurseLeeren
- Falls TRUE, werden alle SuS aus dem Ziel-Kurs entfernt, die nicht zur Kerngruppe gehören.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt, um Schüler auf Kurse zu verteilen mit Nebenbedingungen.
-
kursSchuelerUpdateExecute
public void kursSchuelerUpdateExecute(@NotNull @NotNull GostBlockungsergebnisKursSchuelerZuordnungUpdate update) Entfernt erst alle Regeln ausGostBlockungsergebnisKursSchuelerZuordnungUpdate.listEntfernen
und fügt dann die neuen Regeln ausGostBlockungsergebnisKursSchuelerZuordnungUpdate.listHinzuzufuegen
hinzu. Macht das selbe für die potentiell enthaltenen RegelUpdates.- Parameter:
update
- DasGostBlockungsergebnisKursSchuelerZuordnungUpdate
-Objekt.
-
kursSchienenUpdate_01a_FUEGE_KURS_SCHIENEN_PAARE_HINZU
@NotNull public @NotNull GostBlockungsergebnisKursSchienenZuordnungUpdate kursSchienenUpdate_01a_FUEGE_KURS_SCHIENEN_PAARE_HINZU(@NotNull @NotNull Set<GostBlockungsergebnisKursSchienenZuordnung> kursSchienenZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um Kurse in Schienen zu setzen.
(1) Wenn der Kurs nicht in der Schiene ist, wird er hinzugefügt.- Parameter:
kursSchienenZuordnungen
- Alle Kurs-Schienen-Paare, welche gesetzt werden sollen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um Kurse in Schienen zu setzen.
-
kursSchienenUpdate_01b_ENTFERNE_KURS_SCHIENEN_PAARE
@NotNull public @NotNull GostBlockungsergebnisKursSchienenZuordnungUpdate kursSchienenUpdate_01b_ENTFERNE_KURS_SCHIENEN_PAARE(@NotNull @NotNull Set<GostBlockungsergebnisKursSchienenZuordnung> kursSchienenZuordnungen) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um Kurse aus Schienen zu entfernen.
(1) Wenn der Kurs nicht in der Schiene ist, wird er hinzugefügt.- Parameter:
kursSchienenZuordnungen
- Alle Kurs-Schienen-Paare, welche entfernt werden sollen.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um Kurse aus Schienen zu entfernen.
-
kursSchienenUpdate_02a_VERSCHIEBE_KURS_VON_SCHIENE_NACH_SCHIENE
@NotNull public @NotNull GostBlockungsergebnisKursSchienenZuordnungUpdate kursSchienenUpdate_02a_VERSCHIEBE_KURS_VON_SCHIENE_NACH_SCHIENE(long idKurs, long idSchieneQuelle, long idSchieneZiel) Liefert alle nötigen Veränderungen alsGostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um einen Kurs von einer Schiene zu einer anderen Schiene zu verschieben.
(1) Wenn der Kurs nicht in der Quell-Schiene ist, passiert nichts.
(2) Wenn der Kurs bereits in der Ziel-Schiene ist, passiert nichts.
(3) Andernfalls, wird der Kurs aus der Quell-Schiene entfernt und der Ziel-Schiene hinzugefügt.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.idSchieneQuelle
- Die Quell-Schiene, aus der der Kurs entfernt wird.idSchieneZiel
- Die Ziel-Schiene, zu welcher der Kurs hinzugefügt wird.- Gibt zurück:
- alle nötigen Veränderungen als
GostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt, um einen Kurs von einer Schiene zu einer anderen Schiene zu verschieben.
-
kursSchienenUpdateExecute
public void kursSchienenUpdateExecute(@NotNull @NotNull GostBlockungsergebnisKursSchienenZuordnungUpdate update) Entfernt erst alle Regeln ausGostBlockungsergebnisKursSchienenZuordnungUpdate.listEntfernen
und fügt dann die neuen Regeln ausGostBlockungsergebnisKursSchienenZuordnungUpdate.listHinzuzufuegen
hinzu. Macht das selbe für die potentiell enthaltenen RegelUpdates.- Parameter:
update
- DasGostBlockungsergebnisKursSchienenZuordnungUpdate
-Objekt.
-
getSchieneG
@NotNull public @NotNull GostBlockungSchiene getSchieneG(long idSchiene) throws DeveloperNotificationException Liefert das zur ID zugehörigeGostBlockungSchiene
-Objekt.
Delegiert den Aufruf an den Fächer-Manager des Eltern-ObjektesGostBlockungsdatenManager
.
Wirft eine DeveloperNotificationException, falls die ID unbekannt ist.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- das zur ID zugehörige
GostBlockungSchiene
-Objekt. - Löst aus:
DeveloperNotificationException
- falls die ID unbekannt ist.
-
getOfSchieneIstLeer
Liefert TRUE, falls die Schiene keine Kurse enthält.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- TRUE, falls die Schiene keine Kurse enthält.
- Löst aus:
DeveloperNotificationException
- falls die Schiene nicht existiert.
-
getOfSchieneID
Liefert die ID einer Schiene mit einer bestimmten Nummer.- Parameter:
nrSchiene
- Die Nummer der Schiene.- Gibt zurück:
- die ID einer Schiene mit einer bestimmten Nummer.
- Löst aus:
DeveloperNotificationException
- falls eine solche Schiene nicht existiert.
-
getMengeAllerSchienen
Liefert die Menge aller Schienen.- Gibt zurück:
- Die Menge aller Schienen.
-
getOfSchieneAnzahlSchueler
public int getOfSchieneAnzahlSchueler(long idSchiene) Liefert die Anzahl an Schülern in der Schiene mit der übergebenen ID zurück.
Hinweis: Falls ein Schüler mehrfach in der Schiene ist, also mit Kollisionen, wird er mehrfach gezählt!- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- die Anzahl an Schülern in der Schiene mit der übergebenen ID zurück.
-
getOfSchieneHatKollision
public boolean getOfSchieneHatKollision(long idSchiene) Liefert TRUE, falls die Schiene mindestens eine Schüler-Kollision hat.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- TRUE, falls die Schiene mindestens eine Schüler-Kollision hat.
-
getOfSchieneAnzahlSchuelerMitKollisionen
public int getOfSchieneAnzahlSchuelerMitKollisionen(long idSchiene) Liefert die Anzahl an Schüler-Kollisionen der Schiene.
Hinweis Ein Schüler, der N>1 Mal in einer Schiene ist, erzeugt N-1 Kollisionen.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- die Anzahl an Schüler-Kollisionen der Schiene.
-
getOfSchieneSchuelermengeMitKollisionen
Liefert die Menge an Schüler-IDs, die in der Schiene eine Kollision haben.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- Die Menge an Schüler-IDs, die in der Schiene eine Kollision haben.
-
getOfSchieneKursmengeMitKollisionen
@NotNull public @NotNull Set<GostBlockungsergebnisKurs> getOfSchieneKursmengeMitKollisionen(long idSchiene) Liefert die Menge an Kursen, die in der Schiene eine Kollision haben.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- die Menge an Kursen, die in der Schiene eine Kollision haben.
-
getOfSchieneKursmengeSortiert
@NotNull public @NotNull List<GostBlockungsergebnisKurs> getOfSchieneKursmengeSortiert(long idSchiene) Liefert die sortierte Menge an Kursen einer bestimmten Schiene.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- die sortierte Menge an Kursen einer bestimmten Schiene.
-
getOfSchieneTooltipKurskollisionenAsData
@NotNull public @NotNull List<List<Pair<GostBlockungsergebnisKurs,Integer>>> getOfSchieneTooltipKurskollisionenAsData(long idSchiene) Liefert alle Kollisionen einer Schiene, als Liste von Liste von Kurs-Anzahl-Paaren.
Pro innerer Liste gilt: Das erste Paar ist der Kurs, welcher mit allen anderen verglichen wurde, zusammen mit der Kollisions-Summe.
Anschließend folgen alle anderen Kurse mit ihrer Kollisions-Anzahl, falls diese größer 0 ist.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- alle Kollisionen einer Schiene, als Liste von Liste von Kurs-Anzahl-Paaren.
-
getOfSchieneRemoveAllowed
Liefert TRUE, falls ein Löschen der Schiene erlaubt ist.
Kriterium: Es dürfen keine Kurse der Schiene zugeordnet sein.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- TRUE, falls ein Löschen der Schiene erlaubt ist.
- Löst aus:
DeveloperNotificationException
- Falls die Schiene nicht existiert.
-
getOfSchieneMaxKursanzahl
public int getOfSchieneMaxKursanzahl()Liefert die maximale Anzahl an Kursen, die es in einer Schiene gibt.- Gibt zurück:
- die maximale Anzahl an Kursen, die es in einer Schiene gibt.
-
getOfSchieneAnzahlSchuelerExterne
public int getOfSchieneAnzahlSchuelerExterne(long idSchiene) Liefert die Anzahl an externen SuS der Schiene.
Hinweis: Ist ein Schüler mehrfach in der Schiene (Kollision) wird er auch mehrfach gezählt.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- die Anzahl an externen SuS der Schiene.
-
getOfSchieneAnzahlSchuelerDummy
public int getOfSchieneAnzahlSchuelerDummy(long idSchiene) Liefert die Anzahl an Dummy-SuS der Schiene.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Gibt zurück:
- die Anzahl an Dummy-SuS der Schiene.
-
setAddSchieneByID
Fügt die übergebene Schiene hinzu.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Löst aus:
DeveloperNotificationException
- falls die Schiene nicht zuerst im Datenmanager hinzugefügt wurde.
-
setRemoveSchieneByID
Löscht die übergebene Schiene.- Parameter:
idSchiene
- Die Datenbank-ID der Schiene.- Löst aus:
DeveloperNotificationException
- falls die Schiene nicht zuerst beim Datenmanager entfernt wurde, oder falls die Schiene noch Kurszuordnungen hat.
-
setAddKursByID
Fügt den übergebenen Kurs hinzu.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.- Löst aus:
DeveloperNotificationException
- Falls der Kurs nicht zuerst beim Datenmanager hinzugefügt wurde.
-
setRemoveKurseByID
public void setRemoveKurseByID(@NotNull @NotNull List<Long> idKurse) throws DeveloperNotificationException Löscht alle übergebenen Kurse. Entfernt zuvor potentiell vorhandene Schülerinnen und Schüler aus dem Kurs.- Parameter:
idKurse
- Die Liste der Datenbank-IDs der Kurse.- Löst aus:
DeveloperNotificationException
- Falls mindestens einer der Kurse nicht zuerst beim Datenmanager entfernt wurde.
-
setMergeKurseByID
public void setMergeKurseByID(long idKursID1keep, long idKursID2delete) Verschiebt alles SuS von pKursID2delete nach pKursID1keep und löscht dann den Kurs mit der ID beimGostBlockungsdatenManager
, anschließend in diesem Manager.- Parameter:
idKursID1keep
- Die Datenbank-ID des Kurses, der erhalten bleibt.idKursID2delete
- Die Datenbank-ID des Kurses, der gelöscht wird.
-
setSplitKurs
public void setSplitKurs(@NotNull @NotNull GostBlockungKurs kurs1alt, @NotNull @NotNull GostBlockungKurs kurs2neu, @NotNull @jakarta.validation.constraints.NotNull long[] susVon1nach2) Erzeugt einen neuen Kurs2 beimGostBlockungsdatenManager
, dann bei diesem Manager und verschiebt alle SuS des übergebenen Arrays von Kurs1 nach Kurs2.- Parameter:
kurs1alt
- Der Kurs, der gesplittet wird.kurs2neu
- Der Kurs, der neu erzeugt wird.susVon1nach2
- Die Datenbank-IDs der Schüler, die verschoben werden sollen.
-
patchOfKursSchienenAnzahl
public void patchOfKursSchienenAnzahl(long idKurs, int anzahlSchienenNeu) throws DeveloperNotificationException Verändert die Schienenanzahl eines Kurses. Dies ist nur bei einer Blockungsvorlage erlaubt.- Parameter:
idKurs
- Die Datenbank-ID des Kurses.anzahlSchienenNeu
- Die neue Schienenanzahl des Kurses.- Löst aus:
DeveloperNotificationException
- Falls ein unerwarteter Fehler passiert.
-
patchOfKursLehrkaefteChanged
public void patchOfKursLehrkaefteChanged()Informiert den Manager, dass sich bei mindestens einem Kurs die Lehrkraft geändert hat. Führt zu einer Revalidierung der Bewertung des Ergebnisses. -
debug
Eine Logger-Ausgabe für Debug-Zwecke.- Parameter:
logger
- Ein Logger für Debug-Zwecke.
-