AbschlussManagerBerufsbildend.ts 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. import { JavaObject, cast_java_lang_Object } from '../../java/lang/JavaObject';
  2. import { JavaBoolean, cast_java_lang_Boolean } from '../../java/lang/JavaBoolean';
  3. import { Abschluss, cast_de_nrw_schule_svws_core_types_Abschluss } from '../../core/types/Abschluss';
  4. import { BKAnlageAFach, cast_de_nrw_schule_svws_core_abschluss_bk_a_BKAnlageAFach } from '../../core/abschluss/bk/a/BKAnlageAFach';
  5. import { AbschlussErgebnisBerufsbildend, cast_de_nrw_schule_svws_core_data_abschluss_AbschlussErgebnisBerufsbildend } from '../../core/data/abschluss/AbschlussErgebnisBerufsbildend';
  6. import { JavaDouble, cast_java_lang_Double } from '../../java/lang/JavaDouble';
  7. import { BKAnlageAFaecher, cast_de_nrw_schule_svws_core_abschluss_bk_a_BKAnlageAFaecher } from '../../core/abschluss/bk/a/BKAnlageAFaecher';
  8. export class AbschlussManagerBerufsbildend extends JavaObject {
  9. public constructor() {
  10. super();
  11. }
  12. /**
  13. * Erzeugt ein Ergebnis der Abschlussberechnung unter Angabe, ob dieser erworben
  14. * wurde. Die Liste der Nachprüfungsfächer ist leer und ein Log ist nicht zugeordnet.
  15. *
  16. * @param hatBSA ist der Berufsschulabschluss erreicht
  17. * @param note Note des Abschlusses
  18. * @param hatBA ist der Berufsabschluss erreicht
  19. * @param abschlussAllgemeinbildend der allgemeinbildende Abschluss
  20. *
  21. * @return das Ergebnis der Abschlussberechnung
  22. */
  23. public static getErgebnis(hatBSA : boolean, note : number, hatBA : Boolean | null, abschlussAllgemeinbildend : Abschluss | null) : AbschlussErgebnisBerufsbildend {
  24. let ergebnis : AbschlussErgebnisBerufsbildend = new AbschlussErgebnisBerufsbildend();
  25. ergebnis.hatBSA = hatBSA;
  26. ergebnis.note = note;
  27. ergebnis.hatBA = hatBA;
  28. ergebnis.abschlussAllgemeinbildend = (abschlussAllgemeinbildend === null) ? null : abschlussAllgemeinbildend.toString();
  29. ergebnis.log = null;
  30. return ergebnis;
  31. }
  32. /**
  33. * Berechnet den Notendurchschnitt aller Fächer
  34. *
  35. * @param abschluss_faecher die Fächer für die Abschlussberechnung
  36. *
  37. * @return der Notendurchschnitt oder NaN im Fehlerfall
  38. */
  39. public static getDurchschnitt(abschluss_faecher : BKAnlageAFaecher) : number {
  40. if ((abschluss_faecher.faecher === null) || (abschluss_faecher.faecher.size() === 0))
  41. return NaN;
  42. let sum : number = 0;
  43. for (let fach of abschluss_faecher.faecher) {
  44. sum += fach.note;
  45. }
  46. return (sum as number) / abschluss_faecher.faecher.size();
  47. }
  48. /**
  49. * Berechnet die Anzahl der Defizite
  50. *
  51. * @param abschluss_faecher die Fächer für die Abschlussberechnung
  52. *
  53. * @return die Anzahl der Defizite oder -1 im Fehlerfall
  54. */
  55. public static getAnzahlDefizite(abschluss_faecher : BKAnlageAFaecher) : number {
  56. if ((abschluss_faecher.faecher === null) || (abschluss_faecher.faecher.size() === 0))
  57. return -1;
  58. let sum : number = 0;
  59. for (let fach of abschluss_faecher.faecher) {
  60. if (fach.note >= 5)
  61. sum++;
  62. }
  63. return sum;
  64. }
  65. /**
  66. * Berechnet die Anzahl der Note Ungenügend
  67. *
  68. * @param abschluss_faecher die Fächer für die Abschlussberechnung
  69. *
  70. * @return die Anzahl der Note Ungenügend oder -1 im Fehlerfall
  71. */
  72. public static getAnzahlUngenuegend(abschluss_faecher : BKAnlageAFaecher) : number {
  73. if ((abschluss_faecher.faecher === null) || (abschluss_faecher.faecher.size() === 0))
  74. return -1;
  75. let sum : number = 0;
  76. for (let fach of abschluss_faecher.faecher) {
  77. if (fach.note >= 6)
  78. sum++;
  79. }
  80. return sum;
  81. }
  82. isTranspiledInstanceOf(name : string): boolean {
  83. return ['de.nrw.schule.svws.core.abschluss.AbschlussManagerBerufsbildend'].includes(name);
  84. }
  85. }
  86. export function cast_de_nrw_schule_svws_core_abschluss_AbschlussManagerBerufsbildend(obj : unknown) : AbschlussManagerBerufsbildend {
  87. return obj as AbschlussManagerBerufsbildend;
  88. }