import { JavaObject } from '../../../java/lang/JavaObject'; import { ENMLeistung } from '../../../core/data/enm/ENMLeistung'; import { ENMFach } from '../../../core/data/enm/ENMFach'; import { Schulform } from '../../../asd/types/schule/Schulform'; import { Geschlecht } from '../../../asd/types/Geschlecht'; import { ENMKlasse } from '../../../core/data/enm/ENMKlasse'; import { ENMTeilleistungsart } from '../../../core/data/enm/ENMTeilleistungsart'; import { ENMJahrgang } from '../../../core/data/enm/ENMJahrgang'; import { ENMLerngruppe } from '../../../core/data/enm/ENMLerngruppe'; import { ENMSchuelerAnkreuzkompetenz } from '../../../core/data/enm/ENMSchuelerAnkreuzkompetenz'; import { ENMLehrer } from '../../../core/data/enm/ENMLehrer'; import { ENMSchueler } from '../../../core/data/enm/ENMSchueler'; import { ENMAnkreuzkompetenz } from '../../../core/data/enm/ENMAnkreuzkompetenz'; import { ENMDaten } from '../../../core/data/enm/ENMDaten'; import { Class } from '../../../java/lang/Class'; export declare class ENMDatenManager extends JavaObject { /** * Die ENM-Daten, die von diesem Daten-Manager verwaltet werden. */ readonly daten: ENMDaten; /** * Temporäre Map für das Befüllen der ENMLehrer-Vektors. */ private readonly mapLehrer; /** * Temporäre Map für das Befüllen des ENMSchueler-Vektors. */ private readonly mapSchueler; /** * Temporäre Map für das Befüllen des ENMFach-Vektors. */ private readonly mapFaecher; /** * Temporäre Map für das Befüllen des ENMFach-Vektors. */ private readonly mapFaecherByKuerzel; /** * Temporäre Map für das Befüllen des ENMJahrgang-Vektors. */ private readonly mapJahrgaenge; /** * Temporäre Map für das Befüllen des ENMKlasse-Vektors. */ private readonly mapKlassen; /** * Temporäre Map für das Befüllen des ENMTeilleistungsarten-Vektors. */ private readonly mapTeilleistungsarten; /** * Temporäre Map für das Befüllen des ENMAnkreuzkompetenz-Vektors. */ private readonly mapAnkreuzkompetenzen; /** * Zählt die Id der Lerngruppe hoch. */ private lerngruppenIDZaehler; /** * Temporäre Map für die Lerngruppen. */ private readonly mapLerngruppen; /** * Erzeugt einen neuen ENM-Daten-Manager mit leeren ENM-Daten. * * @param lehrerID die ID des Lehrers für welchen die ENM-Daten erzeugt werden oder null für alle Lehrer */ constructor(lehrerID: number | null); /** * Erzeugt einen neuen ENM-Daten-Manager für die übergebenen Daten. * * @param daten die ENM-Daten */ constructor(daten: ENMDaten); /** * Setzt die grundlegenden Daten zur Schule und zu dem Schuljahresabschnitts für welchen * die ENM-Daten generiert wurden. * * @param schulnummer die Schulnummer * @param schuljahr das Schuljahr * @param anzahlAbschnitte die Anzahl der Abschnitte an der Schule (2: Halbjahrsmodus, 4: Quartalsmodus) * @param abschnitt die Nummer des Abschnittes im Schuljahr * @param publicKey der öffentlichen Schlüssel, welcher für die Verschlüsselung und den * Rückversand der Datei genutzt werden soll * @param fehlstundenEingabe gibt an, ob die Fehlstunden-Eingabe durch das externe Notenmodul erlaubt ist * oder nicht * @param fehlstundenSIFachbezogen gibt an, ob die Fehlstunden für die Sekundarstufe I fachbezogen eingetragen * werden oder nicht * @param fehlstundenSIIFachbezogen gibt an, ob die Fehlstunden für die Sekundarstufe II fachbezogen eingetragen * werden oder nicht * @param schulform das Kürzel der Schulform der Schule * @param mailadresse gibt die Mailadresse an, an welche die verschlüsselte Datei zurückgesendet werden soll (z.B. mail@schule.nrw.de) */ setSchuldaten(schulnummer: number, schuljahr: number, anzahlAbschnitte: number, abschnitt: number, publicKey: string | null, fehlstundenEingabe: boolean, fehlstundenSIFachbezogen: boolean, fehlstundenSIIFachbezogen: boolean, schulform: string, mailadresse: string | null): void; /** * Setzt die Informationen zu den Texten der einzelnen Kompetenzstufen für Ankreuzkompetenzen. * * @param stufe1 der Text für die Stufe 1 * @param stufe2 der Text für die Stufe 2 * @param stufe3 der Text für die Stufe 3 * @param stufe4 der Text für die Stufe 4 * @param stufe5 der Text für die Stufe 5 * @param sonstige der Text für die frei definierbare Zeugnisrubrik "Sonstiges" */ setAnkreuzkompetenzenStufen(stufe1: string | null, stufe2: string | null, stufe3: string | null, stufe4: string | null, stufe5: string | null, sonstige: string | null): void; /** * Fügt alle Noten des Core-Type {@link Note} zu dem Noten-Katalog der ENM-Datei hinzu. * * @param schuljahr das Schuljahr, für welches die ENM-Datei erzeugt wird */ addNoten(schuljahr: number): void; /** * Fügt alle Förderschwerpunkte des Core-Type {@link Foerderschwerpunkt} zu dem * Förderschwerpunkt-Katalog der ENM-Datei hinzu. * * @param schuljahr das Schuljahr, für welches die ENM-Datei erzeugt wird * @param schulform die Schulform, für welche die zulässigen Förderschwerpunkte * zurückgegeben werden */ addFoerderschwerpunkte(schuljahr: number, schulform: Schulform): void; /** * Fügt einen Lehrer hinzu und überprüft dabei, ob der Lehrer schon in der Liste vorhanden ist. * * @param id die eindeutige ID des Lehrers * @param kuerzel das Kürzel des Lehrers * @param nachname der Nachname des Lehrers * @param vorname der Vorname des Lehrers * @param geschlecht das Geschlecht des Lehrers * @param eMailDienstlich die Dienst-Email-Adresse des Lehrers * @param passwordHash der Password-Hash des Lehrer-Kennwortes für das Notenmodul * @param tsPasswordHash der Zeitstempel, wann der Password-Hash zuletzt geändert wurde * * @return true, falls der Lehrer hinzugefügt wurde, ansonsten false */ addLehrer(id: number, kuerzel: string | null, nachname: string | null, vorname: string | null, geschlecht: Geschlecht, eMailDienstlich: string | null, passwordHash: string, tsPasswordHash: string | null): boolean; /** * Fügt einen Schueler hinzu und überprüft dabei, ob der Schueler schon in der Liste vorhanden ist. * * @param id die ID des Schülers in der SVWS-DB * @param jahrgangID die ID des aktuellen Jahrgangs, in dem sich der Schüler befindet * @param klasseID die ID der aktuellen Klasse, in der sich der Schüler befindet * @param nachname der Nachname des Schülers (z.B. Mustermann) * @param vorname der Vorname des Schülers (z.B. Max) * @param geschlecht das Geschlecht des Schülers * @param bilingualeSprache gibt an, ob sich der Schüler aktuell im bilingualen Bildungsgang befindet * (wenn ja, z.B. F) oder nicht (null) * @param istZieldifferent gibt an, ob der Schüler Ziel-different unterrichtet wird * @param istDaZFoerderung gibt an, ob der Schüler Deutsch-Förderung mit Deutsch als Zweitsprache (DaZ) * bekommt (Seiteneinsteiger, z.B. Flüchtlingskinder) * * @return true, falls der Schueler hinzugefügt wurde, ansonsten false */ addSchueler(id: number, jahrgangID: number, klasseID: number, nachname: string | null, vorname: string | null, geschlecht: Geschlecht, bilingualeSprache: string | null, istZieldifferent: boolean, istDaZFoerderung: boolean): boolean; /** * Fügt ein Fach hinzu und überprüft dabei, ob das Fach schon in der Liste vorhanden ist. * * @param id die eindeutige ID des Faches * @param kuerzel das Kürzel des Faches, wie es im Rahmen der amtlichen Schulstatistik verwendet wird. (z.B. D) * @param kuerzelAnzeige das Kürzel des Faches, wie es im Rahmen der Schule benannt wird und angezeigt werden soll. (z.B. D) * @param sortierung die Reihenfolge des Faches bei der Sortierung der Fächer. (z.B. 37) * @param istFremdsprache gibt an, ob es sich bei dem Fach um eine Fremdsprache handelt oder nicht * * @return true, falls das Fach hinzugefügt wurde, ansonsten false */ addFach(id: number, kuerzel: string, kuerzelAnzeige: string, sortierung: number, istFremdsprache: boolean): boolean; /** * Fügt einen Jahrgang hinzu und überprüft dabei, ob der Jahrgang schon in der Liste vorhanden ist. * * @param id die eindeutige ID des Jahrganges * @param kuerzel das Kürzel des Jahrgangs, wie es im Rahmen der amtlichen Schulstatistik verwendet wird. (z.B. EF) * @param kuerzelAnzeige das Kürzel des Jahrgangs, wie es im Rahmen der Schule benannt wird und angezeigt werden soll. (z.B. EF) * @param beschreibung die textuelle Bezeichnung des Jahrgangs. (z.B. Einführungsphase) * @param stufe die Stufe des Jahrgangs. (z.B. PR, SI, nur Berufskolleg: SII, Berufskolleg Anlage D und GOSt: SII-1, SII-2, SII-3) * @param sortierung die Reihenfolge des Jahrgangs bei der Sortierung der Jahrgänge. (z.B. 8) * * @return true, falls der Jahrgang hinzugefügt wurde, ansonsten false */ addJahrgang(id: number, kuerzel: string | null, kuerzelAnzeige: string | null, beschreibung: string | null, stufe: string | null, sortierung: number): boolean; /** * Fügt eine Klasse hinzu und überprüft dabei, ob die Klasse schon in der Liste vorhanden ist. * * @param id die eindeutige ID der Klasse * @param kuerzel das Kürzel der Klasse, wie es im Rahmen der amtlichen Schulstatistik verwendet wird. (z.B. EF) * @param kuerzelAnzeige das Kürzel der Klasse, wie es im Rahmen der Schule benannt wird und angezeigt werden soll. (z.B. EF) * @param idJahrgang die ID des Jahrgangs oder null bei jahrgangsübergreifenden Klassen * @param sortierung die Reihenfolge der Klasse bei der Sortierung der Klassen. (z.B. 8) * * @return true, falls die Klasse hinzugefügt wurde, ansonsten false */ addKlasse(id: number, kuerzel: string | null, kuerzelAnzeige: string | null, idJahrgang: number | null, sortierung: number): boolean; /** * Fügt eine Teilleistungsart hinzu und überprüft dabei, ob die Art schon in der Liste vorhanden ist. * * @param id die eindeutige ID der Teilleistungsart * @param bezeichnung die Bezeichnung der Teilleistungsart * @param sortierung die Reihenfolge der Art bei der Sortierung der Arten. (z.B. 8) * @param gewichtung die Gewichtung der Art * * @return true, falls der Jahrgang hinzugefügt wurde, ansonsten false */ addTeilleistungsart(id: number, bezeichnung: string | null, sortierung: number, gewichtung: number): boolean; /** * Fügt eine Ankreuzkompetenz zum Katalog hinzu und überprüft dabei, ob sie schon in der Liste vorhanden ist. * * @param id die eindeutige ID der Ankreuzkompetenz * @param istFachkompetenz gibt an, on es sich um eine Fach-bezogene Ankreuzkompetenz handelt oder nicht * @param fachID die ID des Faches * @param jahrgang der ASD-Jahrgang, dem die Ankreuzkompetenz zugeordnet ist * @param text der Text der Ankreuzkompetenz * @param sortierung die Reihenfolge der Ankreuzkompetenzen * * @return true, falls die Ankreuzkompetenz hinzugefügt wurde, ansonsten false */ addAnkreuzkompetenz(id: number, istFachkompetenz: boolean, fachID: number | null, jahrgang: string, text: string, sortierung: number): boolean; /** * Liefert das ENM-Lehrer-Objekt für die angegebene Lehrer-ID zurück, * sofern die Lehrer über die Methode {@link ENMDatenManager#addLehrer(long, String, String, String, Geschlecht, String, String, String)} * hinzugefügt wurden. * * @param id die ID des Lehrers * * @return das ENM-Lehrer-Objekt */ getLehrer(id: number): ENMLehrer | null; /** * Liefert das ENM-Schüler-Objekt für die angegebene Schüler-ID zurück, * sofern die Schüler über die Methode {@link ENMDatenManager#addSchueler(long, long, long, String, String, Geschlecht, String, boolean, boolean)} * hinzugefügt wurden. * * @param id die ID des Schülers * * @return das ENM-Schüler-Objekt */ getSchueler(id: number): ENMSchueler | null; /** * Liefert das ENM-Fächer-Objekt für die angegebene Fächer-ID zurück, * sofern die Fächer über die Methode {@link ENMDatenManager#addFach(long, String, String, int, boolean)} * hinzugefügt wurden. * * @param id die ID des Faches * * @return das ENM-Fächer-Objekt */ getFach(id: number): ENMFach | null; /** * Liefert das ENM-Fächer-Objekt für das angegebene Fächer-Kürzel zurück, * sofern die Fächer über die Methode {@link ENMDatenManager#addFach(long, String, String, int, boolean)} * hinzugefügt wurden. * * @param kuerzel das Kürzel des Faches * * @return das ENM-Fächer-Objekt */ getFachByKuerzel(kuerzel: string): ENMFach | null; /** * Liefert das ENM-Jahrgänge-Objekt für die angegebene Jahrgangs-ID zurück, * sofern die Jahrgänge über die Methode {@link ENMDatenManager#addJahrgang(long, String, String, String, String, int)} * hinzugefügt wurden. * * @param id die ID des Jahrgangs * * @return das ENM-Jahrgänge-Objekt */ getJahrgang(id: number): ENMJahrgang | null; /** * Liefert das ENM-Klassen-Objekt für die angegebene Klassen-ID zurück, * sofern die Klassen über die Methode {@link ENMDatenManager#addKlasse(long, String, String, Long, int)} * hinzugefügt wurden. * * @param id die ID der Klasse * * @return das ENM-Klassen-Objekt */ getKlasse(id: number): ENMKlasse | null; /** * Liefert das ENM-Teilleistungsart-Objekt für die angegebene Teilleistungsart-ID zurück, * sofern die Teilleistungsart hinzugefügt wurde. * * @param id die ID der Teilleistungsart * * @return das ENM-Teilleistungsart-Objekt */ getTeilleistungsart(id: number): ENMTeilleistungsart | null; /** * Liefert das ENMAnkreuzkompetenz-Objekt für die angegebene Ankreuzkompetenz-ID zurück, * sofern die Ankreuzkompetenz hinzugefügt wurde. * * @param id die ID der Ankreuzkompetenz * * @return das ENMAnkreuzkompetenz-Objekt */ getAnkreuzkompetenz(id: number): ENMAnkreuzkompetenz | null; /** * Fügt eine neue Lerngruppe mit den angegebenen Parametern hinzu, falls sie noch nicht existiert. Die strID ist dabei * eine temporäre ID, die nur bei der Erstellung von ENMLerngruppen auf Serverseite genutzt wird. * * @param strID die temporäre ID der Lerngruppe, um festzustellen, ob es diese Lerngruppe bereits gibt. * @param kID die ID der Lerngruppe (Klasse oder Kurs) in der SVWS-DB * @param fachID die ID des Faches der Lerngruppe. * @param kursartID gibt die ID der Kursart an. Ist dieser Wert null, so handelt es sich um Klassen-Unterricht * @param bezeichnung die Bezeichnung der Lerngruppe (z.B. D-GK4) * @param kursartKuerzel das Kürzel der (allgemeinen) Kursart (z.B. GK) * @param bilingualeSprache das einstellige Kürzel der bilingualen Sprache, sofern es sich um eine bilinguale * Lerngruppe handelt. (z.B. F) * @param wochenstunden die Anzahl der Wochenstunden, falls es sich um einen Kurs handelt. */ addLerngruppe(strID: string, kID: number, fachID: number, kursartID: number | null, bezeichnung: string | null, kursartKuerzel: string | null, bilingualeSprache: string | null, wochenstunden: number): void; /** * Liefert die Lerngruppe mit der übergebenen (temporären) ID zurück. * * @param strID die temporäre ID der Lerngruppe, um festzustellen, ob es diese Lerngruppe bereits gibt. * * @return die Lerngruppe */ getLerngruppe(strID: string): ENMLerngruppe | null; /** * Fügt die Klassenlehrer zu der List der Klassenlehrer bei einem Schüler hinzu * * @param schueler der Schüler * @param klassenlehrerIDs die IDs der Klassenlehrer */ addSchuelerKlassenlehrer(schueler: ENMSchueler, ...klassenlehrerIDs: Array): void; /** * Fügt eine Sprache mit den übergebenen Informationen zu der Sprachenfolge eines Schülers hinzu. * * @param schueler der Schüler * @param sprache das Kürzel der Sprache, bereinigt von dem Jahrgang, in dem die Sprache eingesetzt hat * @param fachID die ID des Faches * @param fachKuerzel das Kürzel des Faches * @param reihenfolge die Reihenfolge des Faches in der Sprachenfolge (Beispiel 1) * @param belegungVonJahrgang die Information, ab welchem Jahrgang die Sprache belegt wurde (Beispiel 5) * @param belegungVonAbschnitt die Information, ab welchem Abschnitt in dem Jahrgang die Sprache belegt wurde (Beispiel 1) * @param belegungBisJahrgang die Information, bis zu welchem Jahrgang die Sprache belegt wurde (Beispiel 12), sofern die Sprache bereits abgeschlossen ist * @param belegungBisAbschnitt die Information, bis zu welchem Abschnitt in dem Jahrgang die Sprache belegt wurde (Beispiel 2), sofern die Sprache bereits abgeschlossen ist * @param referenzniveau die Bezeichnung des Sprachreferenzniveaus, welches bisher erreicht wurde (z.B. B2/C1) * @param belegungSekI die Mindest-Dauer der Belegung in der Sekundarstufe I gemäß den Stufen im Core-Type SprachBelegungSekI (z.B. 0, 2, 4, 6) */ addSchuelerSprachenfolge(schueler: ENMSchueler, sprache: string | null, fachID: number, fachKuerzel: string | null, reihenfolge: number, belegungVonJahrgang: number, belegungVonAbschnitt: number, belegungBisJahrgang: number | null, belegungBisAbschnitt: number | null, referenzniveau: string | null, belegungSekI: number | null): void; /** * Fügt die Leistungsdaten mit den übergebenen Informationen zu den Leistungsdaten eines Schülers hinzu * * @param schueler der Schüler * @param id die ID der Schüler-Ankreuzkompetenz in der SVWS-DB (z.B. 307956) * @param kompetenzID die Katalog-ID der Ankreuzkompetenz * @param stufen die Information der Zuweisung zu den einzelnen Kompetenzstufen (Ein boolean-Array mit genau 5 Elementen) * @param tsStufe der Zeitstempel der letzten Änderung an der Zuweisung der Kompetenzstufen * * @return die neue ENM-Leistung */ addSchuelerAnkreuzkompetenz(schueler: ENMSchueler, id: number, kompetenzID: number | null, stufen: Array, tsStufe: string | null): ENMSchuelerAnkreuzkompetenz; /** * Fügt die Leistungsdaten mit den übergebenen Informationen zu den Leistungsdaten eines Schülers hinzu * * @param schueler der Schüler * @param leistungID die ID der Leistungsdaten des Schülers in der SVWS-DB (z.B. 307956) * @param lerngruppenID die eindeutige ID der Lerngruppe, der der Schüler zugeordnet ist. * (Klasse oder Kurs wird erst in der Lerngruppe unterschieden!) * @param note das Kürzel der Note, die vergeben wurde * @param tsNote der Zeitstempe der letzten Änderung an der Note * @param noteQuartal das Kürzel der Quartal-Note, die vergeben wurde * @param tsNoteQuartal der Zeitstempe der letzten Änderung an der Quartal-Note * @param istSchriftlich gibt an, ob das Fach schriftlich belegt wurde oder nicht * @param abiturfach gibt an, ob es sich um ein Abitufach handelt (1,2,3 oder 4) oder nicht (null) * @param fehlstundenFach gibt die Anzahl der gesamten Fehlstunden an, sofern diese fachbezogen ermittel werden * @param tsFehlstundenFach der Zeitstempel der letzten Änderung an den gesamten Fehlstunden, sofern * diese fachbezogen ermittel werden * @param fehlstundenUnentschuldigtFach gibt die Anzahl der unentschuldigten Fehlstunden an, sofern diese fachbezogen ermittel werden * @param tsFehlstundenUnentschuldigtFach der Zeitstempel der letzten Änderung an den unentschuldigten Fehlstunden, * sofern diese fachbezogen ermittel werden * @param fachbezogeneBemerkungen die fachbezogenen Bemerkungen bzw. das Thema bei Projektkursen * @param tsFachbezogeneBemerkungen der Zeitstempel der letzten Änderung an den fachbezogenen Bemerkungen * @param neueZuweisungKursart die Kurszuweisung, die auf dem Zeugnis erscheinen soll für den nächsten Kursabschnitt * (z.B. E oder G-Kurs, z.B. an der Gesamtschule) * @param istGemahnt gibt an, ob ein Fach gemahnt wurde oder nicht * @param tsIstGemahnt der Zeitstempel der letzten Änderung an der Angabe, ob ein Fach gemahnt wurde oder nicht * @param mahndatum das Mahndatum bei erfolgter Mahnung * * @return die neue ENM-Leistung */ addSchuelerLeistungsdaten(schueler: ENMSchueler, leistungID: number, lerngruppenID: number, note: string | null, tsNote: string | null, noteQuartal: string | null, tsNoteQuartal: string | null, istSchriftlich: boolean, abiturfach: number | null, fehlstundenFach: number | null, tsFehlstundenFach: string | null, fehlstundenUnentschuldigtFach: number | null, tsFehlstundenUnentschuldigtFach: string | null, fachbezogeneBemerkungen: string | null, tsFachbezogeneBemerkungen: string | null, neueZuweisungKursart: string | null, istGemahnt: boolean, tsIstGemahnt: string | null, mahndatum: string | null): ENMLeistung; /** * Fügt die Teilleistung mit den übergebenen Angaben zu übergebenen Leistungsdaten * eines Schülers hinzu. * * @param leistung die Leistungsdaten eines Schülers * @param id die ID der Teilleistung * @param artID die ID der Art von Teileistungen * @param tsArtID der Zeitstempel der letzten Änderung an der Teilleistungsart * @param datum das Datum, welches dem Erbringen der Teilleistung zuzuordnen ist (z.B. Klausurdatum) * @param tsDatum der Zeitstempel der letzten Änderung an dem Datum * @param bemerkung ggf. eine Bemerkung zu der Teilleistung * @param tsBemerkung der Zeitstempel der letzten Änderung an der Bemerkung * @param note das Notenkürzel, welches der Teilleistung zuzuordnen ist. * @param tsNote der Zeitstempel der letzten Änderung an der Note */ addSchuelerTeilleistung(leistung: ENMLeistung, id: number, artID: number, tsArtID: string | null, datum: string | null, tsDatum: string | null, bemerkung: string | null, tsBemerkung: string | null, note: string | null, tsNote: string | null): void; transpilerCanonicalName(): string; isTranspiledInstanceOf(name: string): boolean; static class: Class; } export declare function cast_de_svws_nrw_core_utils_enm_ENMDatenManager(obj: unknown): ENMDatenManager; //# sourceMappingURL=ENMDatenManager.d.ts.map