Mathematik.ts 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import { JavaObject, cast_java_lang_Object } from '../../../../java/lang/JavaObject';
  2. import { GostFachbereich, cast_de_nrw_schule_svws_core_types_gost_GostFachbereich } from '../../../../core/types/gost/GostFachbereich';
  3. import { AbiturFachbelegung, cast_de_nrw_schule_svws_core_data_gost_AbiturFachbelegung } from '../../../../core/data/gost/AbiturFachbelegung';
  4. import { GostBelegpruefungsArt, cast_de_nrw_schule_svws_core_abschluss_gost_GostBelegpruefungsArt } from '../../../../core/abschluss/gost/GostBelegpruefungsArt';
  5. import { GostSchriftlichkeit, cast_de_nrw_schule_svws_core_types_gost_GostSchriftlichkeit } from '../../../../core/types/gost/GostSchriftlichkeit';
  6. import { GostHalbjahr, cast_de_nrw_schule_svws_core_types_gost_GostHalbjahr } from '../../../../core/types/gost/GostHalbjahr';
  7. import { GostBelegpruefung, cast_de_nrw_schule_svws_core_abschluss_gost_GostBelegpruefung } from '../../../../core/abschluss/gost/GostBelegpruefung';
  8. import { AbiturdatenManager, cast_de_nrw_schule_svws_core_abschluss_gost_AbiturdatenManager } from '../../../../core/abschluss/gost/AbiturdatenManager';
  9. import { GostBelegungsfehler, cast_de_nrw_schule_svws_core_abschluss_gost_GostBelegungsfehler } from '../../../../core/abschluss/gost/GostBelegungsfehler';
  10. export class Mathematik extends GostBelegpruefung {
  11. private mathematik : AbiturFachbelegung | null = null;
  12. /**
  13. * Erstellt eine neue Belegprüfung für das Fach Mathematik.
  14. *
  15. * @param manager der Daten-Manager für die Abiturdaten
  16. * @param pruefungs_art die Art der durchzuführenden Prüfung (z.B. EF.1 oder GESAMT)
  17. */
  18. public constructor(manager : AbiturdatenManager, pruefungs_art : GostBelegpruefungsArt) {
  19. super(manager, pruefungs_art);
  20. }
  21. protected init() : void {
  22. this.mathematik = this.manager.getFachbelegung(GostFachbereich.MATHEMATIK);
  23. }
  24. protected pruefeEF1() : void {
  25. if ((this.mathematik === null) || !this.manager.pruefeBelegungMitSchriftlichkeitEinzeln(this.mathematik, GostSchriftlichkeit.BELIEBIG, GostHalbjahr.EF1)) {
  26. this.addFehler(GostBelegungsfehler.M_10);
  27. return;
  28. }
  29. if (!this.manager.pruefeBelegungMitSchriftlichkeitEinzeln(this.mathematik, GostSchriftlichkeit.SCHRIFTLICH, GostHalbjahr.EF1))
  30. this.addFehler(GostBelegungsfehler.M_11);
  31. }
  32. protected pruefeGesamt() : void {
  33. if (this.mathematik === null) {
  34. this.addFehler(GostBelegungsfehler.M_10);
  35. return;
  36. }
  37. if (!this.manager.pruefeBelegung(this.mathematik, GostHalbjahr.EF1, GostHalbjahr.EF2, GostHalbjahr.Q11, GostHalbjahr.Q12, GostHalbjahr.Q21, GostHalbjahr.Q22))
  38. this.addFehler(GostBelegungsfehler.M_10);
  39. if (!this.manager.pruefeBelegungMitSchriftlichkeit(this.mathematik, GostSchriftlichkeit.SCHRIFTLICH, GostHalbjahr.EF1, GostHalbjahr.EF2, GostHalbjahr.Q11, GostHalbjahr.Q12, GostHalbjahr.Q21))
  40. this.addFehler(GostBelegungsfehler.M_11);
  41. }
  42. isTranspiledInstanceOf(name : string): boolean {
  43. return ['de.nrw.schule.svws.core.abschluss.gost.belegpruefung.Mathematik', 'de.nrw.schule.svws.core.abschluss.gost.GostBelegpruefung'].includes(name);
  44. }
  45. }
  46. export function cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Mathematik(obj : unknown) : Mathematik {
  47. return obj as Mathematik;
  48. }