Allgemeines.js 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Allgemeines = exports.Allgemeines = void 0;
  4. const GostFachbereich_1 = require("../../../../core/types/gost/GostFachbereich");
  5. const GostAbiturFach_1 = require("../../../../core/types/gost/GostAbiturFach");
  6. const GostHalbjahr_1 = require("../../../../core/types/gost/GostHalbjahr");
  7. const GostSchriftlichkeit_1 = require("../../../../core/types/gost/GostSchriftlichkeit");
  8. const GostBelegpruefung_1 = require("../../../../core/abschluss/gost/GostBelegpruefung");
  9. const GostBelegungsfehler_1 = require("../../../../core/abschluss/gost/GostBelegungsfehler");
  10. class Allgemeines extends GostBelegpruefung_1.GostBelegpruefung {
  11. /**
  12. * Erstellt eine neue allgemeine Belegprüfung.
  13. *
  14. * @param manager der Daten-Manager für die Abiturdaten
  15. * @param pruefungs_art die Art der durchzuführenden Prüfung (z.B. EF.1 oder GESAMT)
  16. */
  17. constructor(manager, pruefungs_art) {
  18. super(manager, pruefungs_art);
  19. }
  20. init() {
  21. }
  22. pruefeEF1() {
  23. if (this.manager.zaehleBelegungInHalbjahren(this.manager.getFachbelegungen(GostFachbereich_1.GostFachbereich.RELIGION), GostHalbjahr_1.GostHalbjahr.EF1) > 1)
  24. this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.IGF_10);
  25. if (this.manager.hatDoppelteFachbelegungInHalbjahr(GostHalbjahr_1.GostHalbjahr.EF1))
  26. this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.IGF_10);
  27. }
  28. pruefeGesamt() {
  29. let alleFachbelegungen = this.manager.getFachbelegungen();
  30. for (let i = 0; i < alleFachbelegungen.size(); i++) {
  31. let fachbelegung = alleFachbelegungen.get(i);
  32. if (!this.manager.istBelegtSeitEF(fachbelegung))
  33. this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.E1BEL_10);
  34. }
  35. for (let i = 0; i < alleFachbelegungen.size(); i++) {
  36. let fachbelegung = alleFachbelegungen.get(i);
  37. let abiturFach = GostAbiturFach_1.GostAbiturFach.fromID(fachbelegung.abiturFach);
  38. if (abiturFach !== null)
  39. continue;
  40. if (this.manager.pruefeBelegungMitSchriftlichkeitEinzeln(fachbelegung, GostSchriftlichkeit_1.GostSchriftlichkeit.SCHRIFTLICH, GostHalbjahr_1.GostHalbjahr.Q22)) {
  41. this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.ABI_16);
  42. break;
  43. }
  44. }
  45. for (let halbjahr of GostHalbjahr_1.GostHalbjahr.values()) {
  46. if (this.manager.zaehleBelegungInHalbjahren(this.manager.getFachbelegungen(GostFachbereich_1.GostFachbereich.RELIGION), halbjahr) > 1)
  47. this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.IGF_10);
  48. }
  49. if (this.manager.hatDoppelteFachbelegung(GostHalbjahr_1.GostHalbjahr.EF1, GostHalbjahr_1.GostHalbjahr.EF2, GostHalbjahr_1.GostHalbjahr.Q11, GostHalbjahr_1.GostHalbjahr.Q12, GostHalbjahr_1.GostHalbjahr.Q21, GostHalbjahr_1.GostHalbjahr.Q22))
  50. this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.IGF_10);
  51. }
  52. isTranspiledInstanceOf(name) {
  53. return ['de.nrw.schule.svws.core.abschluss.gost.belegpruefung.Allgemeines', 'de.nrw.schule.svws.core.abschluss.gost.GostBelegpruefung'].includes(name);
  54. }
  55. }
  56. exports.Allgemeines = Allgemeines;
  57. function cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Allgemeines(obj) {
  58. return obj;
  59. }
  60. exports.cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Allgemeines = cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Allgemeines;
  61. //# sourceMappingURL=Allgemeines.js.map