"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Sport = exports.Sport = void 0;
const GostFachbereich_1 = require("../../../../core/types/gost/GostFachbereich");
const GostHalbjahr_1 = require("../../../../core/types/gost/GostHalbjahr");
const GostBelegpruefung_1 = require("../../../../core/abschluss/gost/GostBelegpruefung");
const Vector_1 = require("../../../../java/util/Vector");
const GostBelegungsfehler_1 = require("../../../../core/abschluss/gost/GostBelegungsfehler");
class Sport extends GostBelegpruefung_1.GostBelegpruefung {
    sport = new Vector_1.Vector();
    /**
     * Erstellt eine neue Belegprüfung für das Fach Sport.
     *
     * @param manager         der Daten-Manager für die Abiturdaten
     * @param pruefungs_art   die Art der durchzuführenden Prüfung (z.B. EF.1 oder GESAMT)
     */
    constructor(manager, pruefungs_art) {
        super(manager, pruefungs_art);
    }
    init() {
        this.sport = this.manager.getFachbelegungen(GostFachbereich_1.GostFachbereich.SPORT);
    }
    pruefeEF1() {
        if ((this.sport === null) || (!this.manager.pruefeBelegungExistiertEinzeln(this.sport, GostHalbjahr_1.GostHalbjahr.EF1))) {
            this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.SP_10);
            return;
        }
    }
    pruefeGesamt() {
        if ((this.sport === null) || (!this.manager.pruefeBelegungExistiert(this.sport, GostHalbjahr_1.GostHalbjahr.EF1, GostHalbjahr_1.GostHalbjahr.EF2, GostHalbjahr_1.GostHalbjahr.Q11, GostHalbjahr_1.GostHalbjahr.Q12, GostHalbjahr_1.GostHalbjahr.Q21, GostHalbjahr_1.GostHalbjahr.Q22)))
            this.addFehler(GostBelegungsfehler_1.GostBelegungsfehler.SP_10);
    }
    isTranspiledInstanceOf(name) {
        return ['de.nrw.schule.svws.core.abschluss.gost.GostBelegpruefung', 'de.nrw.schule.svws.core.abschluss.gost.belegpruefung.Sport'].includes(name);
    }
}
exports.Sport = Sport;
function cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Sport(obj) {
    return obj;
}
exports.cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Sport = cast_de_nrw_schule_svws_core_abschluss_gost_belegpruefung_Sport;
//# sourceMappingURL=Sport.js.map