Klasse ReportingRepository
java.lang.Object
de.svws_nrw.module.reporting.repositories.ReportingRepository
Dieses Repository enthält neben den Stammdaten der Schule Maps, in denen Objekte wie Kataloge, Jahrgänge, Klassen, Lehrer, Schüler usw. gespeichert werden. So sollen Datenbankzugriffe minimiert werden.
Des Weiteren kann diese Klasse genutzt werden, um die Maps bereits vor der Erstellung der eigentlichen Reporting-Objekte zu füllen, beispielsweise mit Daten aus im Vorfeld durchgeführten Prüfungen bei API-Abfragen. So müssen diese Daten nicht erneut aus der Datenbank geladen werden.
Werden in anderen Klassen Daten nachgeladen, so werden diese in der Regel auch in der entsprechenden Map des Repository ergänzt.
Ebenso werden einige bereits erzeugte Reporting-Objekte hier zwischengespeichert.
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungReportingRepository
(DBEntityManager conn, ReportingParameter reportingParameter, Logger logger, LogConsumerList log) Erstellt das Repository für häufig genutzte Daten aus der Schuldatenbank, um Zugriffe darauf zu minimieren. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungStellt den aktuellen Schuljahresabschnitt der Schule aus der Datenbankverbindung zur VerfügungDer ausgewählte Schuljahresabschnitt, der für die Ausgabe der Reports ausgewählt wurdeconn()
Die Verbindung zu Datenbank.Stellt eine Map der Entlassgründe der Schule aus der Datenbankverbindung zu deren IDs zur VerfügungStellt eine Map der Förderschwerpunkt-Katalog-Einträge der Schule aus der Datenbankverbindung zu deren IDs zur VerfügungStellt eine Map der Ort-Katalog-Einträge der Schule aus der Datenbankverbindung zu deren IDs zur VerfügungStellt eine Map der Ortsteil-Katalog-Einträge der Schule aus der Datenbankverbindung zu deren IDs zur VerfügungStellt die Religionen aus dem Katalog der Schule zur Religion-ID zur VerfügungStellt die Schulen aus dem Katalog der Schulen der Schule zur Schul-ID zur VerfügungStellt die Schulformen gemäß ihrer ID aus der Historie des Core-Types zur VerfügungStellt die Telefonnummer-Arten zu ihrer ID zur Verfügung.klasse
(long idKlasse) Liefert ein ReportingKlasse-Objekt basierend auf der gegebenen Klassen-ID.Erzeugt und sortiert eine Liste von ReportingKlassen-Objekten basierend auf den übergebenen Klassen-IDs.lehrer
(long idLehrer) Gibt ein ReportingLehrer-Objekt für die angegebene Lehrer-ID zurück.Diese Methode erstellt eine Liste von ReportingLehrer-Objekten basierend auf den übergebenen Lehrerkürzeln (IDs).log()
Die Liste, die Einträge aus dem Logger sammelt.logger()
Logger, der den Ablauf protokolliert und Fehlerdaten sammelt.Stellt die Daten aller bereits abgerufenen Leistungsdaten zur Schüler-, Lernabschnitts- und Leistungsdaten-ID zur Verfügung.Stellt die Daten aller bereits abgerufenen Lernabschnitte zur Schüler-, Schuljahresabschnitt, Wechselnummer und Lernabschnitts-ID zur Verfügung.Stellt die Stammdaten von bereits abgerufenen Erziehern über eine Map zur Schüler-ID zur VerfügungStellt alle Fächer der Schule als DTOs zur Fach-ID zur Verfügung.Stellt die Daten der Abiturjahrgänge über eine Map zum Abiturjahr zur Verfügung.Stellt die Fächer der Abiturjahrgänge über eine Map zum Abiturjahr zur Verfügung.Stellt die Beratungsdaten zur GOSt von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung.Stellt die für die Beratungsdaten zur GOSt relevanten Abiturdaten von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung.Stellt die Abiturdaten in der GOSt von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung.Stellt die Stammdaten der Jahrgänge über eine Map zur Jahrgangs-ID zur VerfügungStellt alle Klassen in den Schuljahresabschnitten über eine Map zur Klassen-ID zur Verfügung.mapKurse()
Stellt alle Kurse in den Schuljahresabschnitten über eine Map zur Kurs-ID zur Verfügung.Stellt die Stammdaten von bereits abgerufenen Lehrkräften über eine Map zur Lehrer-ID zur Verfügung.Stellt alle Erzieherarten über eine Map zur Erzieherart-ID zur VerfügungStellt die Liste aller Schüler über eine Map zur Schüler-ID zur VerfügungStellt die Schulbesuchsdaten von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur VerfügungStellt die Sprachbelegungen von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur VerfügungStellt die Stammdaten von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur VerfügungStellt die Listen aller Telefonkontakte pro Schüler für alle Schüler über eine Map zur Schüler-ID zur VerfügungStellt die Liste aller Schuljahresabschnitte über eine Map zur Schulabschnitts-ID zur VerfügungEinstellungen und Daten zum Steuern der Report-Generierung.schueler
(long idSchueler) Holt die Reporting-Daten eines Schülers basierend auf der gegebenen ID.Liefert eine Liste vonReportingSchueler
-Objekten basierend auf einer gegebenen Liste von Schüler-IDs.schuljahresabschnitt
(int schuljahr, int abschnitt) Stellt den angeforderten Schuljahresabschnitt der Schule aus der Datenbankverbindung zur Verfügungschuljahresabschnitt
(long id) Stellt den angeforderten Schuljahresabschnitt der Schule aus der Datenbankverbindung zur VerfügungStellt eine sortierte Liste aller Schuljahresabschnitte der Schule aus der Datenbankverbindung zur VerfügungStellt die Stammdaten der Schule aus der Datenbankverbindung zur Verfügungstundenplan
(long idStundenplan) Ermittelt den zur übergebenen ID gehörigen Stundenplan und gibt ihn zurück.stundenplan
(String datum) Ermittelt den zum übergebenen Datum gehörigen Stundenplan und gibt ihn zurück.Stelle eine Liste aller Stundenplandefinitionen der Schule zur Verfügung, sortiert nach Schuljahresabschnitt und Gültigkeitsbeginn.stundenplanManager
(long idStundenplan) Ermittelt den zur übergebenen ID passenden StundenplanManager zurück.
-
Konstruktordetails
-
ReportingRepository
public ReportingRepository(DBEntityManager conn, ReportingParameter reportingParameter, Logger logger, LogConsumerList log) throws ApiOperationException Erstellt das Repository für häufig genutzte Daten aus der Schuldatenbank, um Zugriffe darauf zu minimieren. Ebenso werden einzelne Reporting-Objekte hier zwischengespeichert.- Parameter:
conn
- Die Verbindung zur Datenbank.reportingParameter
- Einstellungen und Daten zum Steuern der Report-Generierung.logger
- Logger, der den Ablauf protokolliert und Fehlerdaten sammelt.log
- Die Liste, die Einträge aus dem Logger sammelt.- Löst aus:
ApiOperationException
- Im Fehlerfall wird eine ApiOperationException ausgelöst und Log-Daten zusammen mit dieser zurückgegeben.
-
-
Methodendetails
-
conn
Die Verbindung zu Datenbank.- Gibt zurück:
- Inhalt des Feldes conn
-
log
Die Liste, die Einträge aus dem Logger sammelt.- Gibt zurück:
- Inhalt des Feldes log
-
logger
Logger, der den Ablauf protokolliert und Fehlerdaten sammelt.- Gibt zurück:
- Inhalt des Feldes logger
-
reportingParameter
Einstellungen und Daten zum Steuern der Report-Generierung.- Gibt zurück:
- Inhalt des Feldes reportingParameter
-
schulstammdaten
Stellt die Stammdaten der Schule aus der Datenbankverbindung zur Verfügung- Gibt zurück:
- Stammdaten der Schule
-
schuljahresabschnitte
Stellt eine sortierte Liste aller Schuljahresabschnitte der Schule aus der Datenbankverbindung zur Verfügung- Gibt zurück:
- Alle Schuljahresabschnitte der Schule
-
schuljahresabschnitt
Stellt den angeforderten Schuljahresabschnitt der Schule aus der Datenbankverbindung zur Verfügung- Parameter:
id
- Die ID des angeforderten Schuljahresabschnitts- Gibt zurück:
- Schuljahresabschnitt der Schule zur ID
-
schuljahresabschnitt
Stellt den angeforderten Schuljahresabschnitt der Schule aus der Datenbankverbindung zur Verfügung- Parameter:
schuljahr
- Das Schuljahr des angeforderten Schuljahresabschnittsabschnitt
- Der Abschnitt des angeforderten Schuljahresabschnitts- Gibt zurück:
- Schuljahresabschnitt der Schule zu den Parametern oder null, wenn der Abschnitt nicht existiert.
-
aktuellerSchuljahresabschnitt
Stellt den aktuellen Schuljahresabschnitt der Schule aus der Datenbankverbindung zur Verfügung- Gibt zurück:
- Aktueller Schuljahresabschnitt der Schule
-
auswahlSchuljahresabschnitt
Der ausgewählte Schuljahresabschnitt, der für die Ausgabe der Reports ausgewählt wurde- Gibt zurück:
- Schuljahresabschnitt der Auswahl für den Druck
-
katalogEntlassgruende
Stellt eine Map der Entlassgründe der Schule aus der Datenbankverbindung zu deren IDs zur Verfügung- Gibt zurück:
- Map der Entlassgründe
-
katalogFoerderschwerpunkte
Stellt eine Map der Förderschwerpunkt-Katalog-Einträge der Schule aus der Datenbankverbindung zu deren IDs zur Verfügung- Gibt zurück:
- Map der Förderschwerpunkt-Katalog-Einträge
-
katalogOrte
Stellt eine Map der Ort-Katalog-Einträge der Schule aus der Datenbankverbindung zu deren IDs zur Verfügung- Gibt zurück:
- Map der Ort-Katalog-Einträge
-
katalogOrtsteile
Stellt eine Map der Ortsteil-Katalog-Einträge der Schule aus der Datenbankverbindung zu deren IDs zur Verfügung- Gibt zurück:
- Map der Ortsteil-Katalog-Einträge
-
katalogReligionen
Stellt die Religionen aus dem Katalog der Schule zur Religion-ID zur Verfügung- Gibt zurück:
- Map der Religionen-Katalog-Einträge
-
katalogSchulen
Stellt die Schulen aus dem Katalog der Schulen der Schule zur Schul-ID zur Verfügung- Gibt zurück:
- Map der Schul-Katalog-Einträge
-
katalogSchulformen
Stellt die Schulformen gemäß ihrer ID aus der Historie des Core-Types zur Verfügung- Gibt zurück:
- Map der Schulform-Einträge
-
katalogTelefonnummerArten
Stellt die Telefonnummer-Arten zu ihrer ID zur Verfügung.- Gibt zurück:
- Map der Telefonnummer-Arten
-
mapAlleLeistungsdaten
Stellt die Daten aller bereits abgerufenen Leistungsdaten zur Schüler-, Lernabschnitts- und Leistungsdaten-ID zur Verfügung.- Gibt zurück:
- Map der Daten aller bereits abgerufenen Lernabschnitte.
-
mapAlleLernabschnittsdaten
Stellt die Daten aller bereits abgerufenen Lernabschnitte zur Schüler-, Schuljahresabschnitt, Wechselnummer und Lernabschnitts-ID zur Verfügung.- Gibt zurück:
- Map der Daten aller bereits abgerufenen Lernabschnitte.
-
mapErzieherStammdaten
Stellt die Stammdaten von bereits abgerufenen Erziehern über eine Map zur Schüler-ID zur Verfügung- Gibt zurück:
- Inhalt des Feldes mapErzieherStammdaten
-
mapReportingErzieherarten
Stellt alle Erzieherarten über eine Map zur Erzieherart-ID zur Verfügung- Gibt zurück:
- Inhalt des Feldes mapReportingErzieherarten
-
mapFaecher
Stellt alle Fächer der Schule als DTOs zur Fach-ID zur Verfügung. Die Reporting-Fächer-Objekte sind in den Schuljahresabschnitten abrufbar.- Gibt zurück:
- Map der Fächer-DTO
-
mapGostAbiturjahrgangDaten
Stellt die Daten der Abiturjahrgänge über eine Map zum Abiturjahr zur Verfügung.- Gibt zurück:
- Map der Daten zu den Abiturjahrgängen
-
mapGostAbiturjahrgangFaecher
Stellt die Fächer der Abiturjahrgänge über eine Map zum Abiturjahr zur Verfügung.- Gibt zurück:
- Map der Fächer zu den Abiturjahrgängen
-
mapGostBeratungsdaten
Stellt die Beratungsdaten zur GOSt von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung.- Gibt zurück:
- Map mit GOSt-Beratungsdaten der Schüler
-
mapGostBeratungsdatenAbiturdaten
Stellt die für die Beratungsdaten zur GOSt relevanten Abiturdaten von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung.- Gibt zurück:
- Inhalt des Feldes mapGostBeratungsdatenAbiturdaten
-
mapGostSchuelerAbiturdaten
Stellt die Abiturdaten in der GOSt von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung.- Gibt zurück:
- Map mit GOSt-Abiturdaten der Schüler
-
mapJahrgaenge
Stellt die Stammdaten der Jahrgänge über eine Map zur Jahrgangs-ID zur Verfügung- Gibt zurück:
- Map der Stammdaten der Jahrgänge.
-
mapKlassen
Stellt alle Klassen in den Schuljahresabschnitten über eine Map zur Klassen-ID zur Verfügung.- Gibt zurück:
- Map der Stammdaten der Klassen.
-
mapKurse
Stellt alle Kurse in den Schuljahresabschnitten über eine Map zur Kurs-ID zur Verfügung.- Gibt zurück:
- Map der Stammdaten der Kurse.
-
mapLehrerStammdaten
Stellt die Stammdaten von bereits abgerufenen Lehrkräften über eine Map zur Lehrer-ID zur Verfügung.- Gibt zurück:
- Map der Stammdaten von bereits abgerufenen Lehrkräften
-
mapSchuelerSchulbesuchsdaten
Stellt die Schulbesuchsdaten von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung- Gibt zurück:
- Map der Schulbesuchsdaten von bereits abgerufenen Schülern
-
mapSchuelerStammdaten
Stellt die Stammdaten von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung- Gibt zurück:
- Map der Stammdaten von bereits abgerufenen Schülern
-
mapSchueler
Stellt die Liste aller Schüler über eine Map zur Schüler-ID zur Verfügung- Gibt zurück:
- Inhalt des Feldes mapSchueler
-
mapSchuelerTelefonkontakte
Stellt die Listen aller Telefonkontakte pro Schüler für alle Schüler über eine Map zur Schüler-ID zur Verfügung- Gibt zurück:
- Inhalt des Feldes mapSchuelerTelefonkontakte
-
mapSchuelerSprachbelegungen
Stellt die Sprachbelegungen von bereits abgerufenen Schülern über eine Map zur Schüler-ID zur Verfügung- Gibt zurück:
- Inhalt des Feldes mapSchuelerSprachbelegungen
-
mapSchuljahresabschnitte
Stellt die Liste aller Schuljahresabschnitte über eine Map zur Schulabschnitts-ID zur Verfügung- Gibt zurück:
- Inhalt des Feldes mapSchuljahresabschnitte
-
stundenplandefinitionen
Stelle eine Liste aller Stundenplandefinitionen der Schule zur Verfügung, sortiert nach Schuljahresabschnitt und Gültigkeitsbeginn.- Gibt zurück:
- Inhalt des Feldes stundenplandefinitionen
-
klasse
Liefert ein ReportingKlasse-Objekt basierend auf der gegebenen Klassen-ID. Wenn die ID negativ ist, wird null zurückgegeben. Ansonsten wird eine ProxyReportingKlasse erstellt und in der Map gespeichert, falls für die ID noch kein Eintrag existiert.- Parameter:
idKlasse
- Die eindeutige ID der Klasse- Gibt zurück:
- Ein ReportingKlassen-Objekt für die gegebene Klassen-ID oder null, falls die ID negativ ist
-
klassen
Erzeugt und sortiert eine Liste von ReportingKlassen-Objekten basierend auf den übergebenen Klassen-IDs. Falls eine Klasse bereits existiert, wird er aus einem internen Cache abgerufen.- Parameter:
idsKlassen
- Eine Liste von Long-Werten, die die IDs der Klassen repräsentieren, für die ReportingKlasse-Objekte erstellt werden sollen. Null- oder negative Werte in der Liste werden ignoriert.- Gibt zurück:
- Eine sortierte Liste von ReportingKlasse-Objekten basierend auf dem Klassenkürzel.
-
lehrer
Gibt ein ReportingLehrer-Objekt für die angegebene Lehrer-ID zurück. Falls die Stammdaten des Lehrers nicht im Cache vorhanden sind, werden sie aus der Datenbank geladen.- Parameter:
idLehrer
- Die eindeutige ID des Lehrers, für den das ReportingLehrer-Objekt erstellt werden soll. Die ID muss größer oder gleich 0 sein.- Gibt zurück:
- Das ReportingLehrer-Objekt, falls Stammdaten gefunden wurden, oder null, wenn der Lehrer nicht existiert oder ein Fehler beim Laden der Stammdaten aufgetreten ist.
-
lehrer
Diese Methode erstellt eine Liste von ReportingLehrer-Objekten basierend auf den übergebenen Lehrerkürzeln (IDs). Fehlende Stammdaten werden bei Bedarf nachgeladen und zur weiteren Verarbeitung genutzt.- Parameter:
idsLehrer
- Eine Liste der IDs der gewünschten Lehrer. Nullwerte oder IDs kleiner 0 werden ignoriert.- Gibt zurück:
- Eine gemäß den konfigurierten Reporting-Parametern sortierte Liste von ReportingLehrer-Objekten.
-
schueler
Holt die Reporting-Daten eines Schülers basierend auf der gegebenen ID. Falls die Schülerdaten nicht im lokalen Cache enthalten sind, werden sie aus der Datenbank abgerufen und im Cache gespeichert. Tritt ein Fehler beim Abrufen auf, wird null zurückgegeben.- Parameter:
idSchueler
- die ID des Schülers, dessen Reporting-Daten abgerufen werden sollen (muss positiv oder 0 sein, andernfalls wird null zurückgegeben).- Gibt zurück:
- ein ReportingSchueler-Objekt für den gegebenen Schüler, falls die Daten erfolgreich abgerufen werden konnten; sonst null.
-
schueler
Liefert eine Liste vonReportingSchueler
-Objekten basierend auf einer gegebenen Liste von Schüler-IDs. Diese Methode überprüft, ob die benötigten Stammdaten für die angegebenen Schüler-IDs bereits im Speicher vorhanden sind, und lädt diese gegebenenfalls aus der Datenbank nach. Anschließend werden entsprechendeReportingSchueler
-Objekte erstellt und zurückgegeben.- Parameter:
idsSchueler
- Eine Liste von Schüler-IDs, für dieReportingSchueler
-Objekte erstellt und/oder zurückgegeben werden sollen; null oder eine leere Liste führt zu einer Rückgabe einer leeren Liste.- Gibt zurück:
- Eine Liste von
ReportingSchueler
-Objekten, sortiert gemäß den vordefinierten oder standardmäßigen Sortierparametern, sofern definiert. Wenn keine Schüler gefunden werden, wird eine leere Liste zurückgegeben.
-
stundenplan
Ermittelt den zum übergebenen Datum gehörigen Stundenplan und gibt ihn zurück.- Parameter:
datum
- Das Datum im Format yyyy-mm-dd, dessen Stundenplan bestimmt werden soll.- Gibt zurück:
- Der Stundenplan zum Datum, wenn er gefunden wird, sonst null.
-
stundenplan
Ermittelt den zur übergebenen ID gehörigen Stundenplan und gibt ihn zurück.- Parameter:
idStundenplan
- Die ID des Stundenplans- Gibt zurück:
- Der Stundenplan zur ID, wenn er gefunden wird, sonst null.
-
stundenplanManager
Ermittelt den zur übergebenen ID passenden StundenplanManager zurück.- Parameter:
idStundenplan
- Die ID des Stundenplans- Gibt zurück:
- Der StundenplanManager zur ID, wenn er gefunden wird, sonst null.
-