GostLeistungen.ts 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. import { JavaObject, cast_java_lang_Object } from '../../../java/lang/JavaObject';
  2. import { JavaInteger, cast_java_lang_Integer } from '../../../java/lang/JavaInteger';
  3. import { GostLeistungenFachwahl, cast_de_nrw_schule_svws_core_data_gost_GostLeistungenFachwahl } from '../../../core/data/gost/GostLeistungenFachwahl';
  4. import { JavaString, cast_java_lang_String } from '../../../java/lang/JavaString';
  5. import { JavaBoolean, cast_java_lang_Boolean } from '../../../java/lang/JavaBoolean';
  6. import { Vector, cast_java_util_Vector } from '../../../java/util/Vector';
  7. import { Sprachendaten, cast_de_nrw_schule_svws_core_data_Sprachendaten } from '../../../core/data/Sprachendaten';
  8. export class GostLeistungen extends JavaObject {
  9. public id : number = 0;
  10. public aktuellesSchuljahr : Number | null = null;
  11. public aktuellerJahrgang : String | null = null;
  12. public sprachendaten : Sprachendaten | null = null;
  13. public bilingualeSprache : String | null = null;
  14. public projektkursThema : String | null = null;
  15. public projektkursLeitfach1Kuerzel : String | null = null;
  16. public projektkursLeitfach2Kuerzel : String | null = null;
  17. public readonly bewertetesHalbjahr : Array<boolean> = Array(6).fill(false);
  18. public readonly faecher : Vector<GostLeistungenFachwahl> = new Vector();
  19. public constructor() {
  20. super();
  21. }
  22. isTranspiledInstanceOf(name : string): boolean {
  23. return ['de.nrw.schule.svws.core.data.gost.GostLeistungen'].includes(name);
  24. }
  25. public static transpilerFromJSON(json : string): GostLeistungen {
  26. const obj = JSON.parse(json);
  27. const result = new GostLeistungen();
  28. if (typeof obj.id === "undefined")
  29. throw new Error('invalid json format, missing attribute id');
  30. result.id = obj.id;
  31. result.aktuellesSchuljahr = typeof obj.aktuellesSchuljahr === "undefined" ? null : obj.aktuellesSchuljahr;
  32. result.aktuellerJahrgang = typeof obj.aktuellerJahrgang === "undefined" ? null : obj.aktuellerJahrgang;
  33. result.sprachendaten = typeof obj.sprachendaten === "undefined" ? null : Sprachendaten.transpilerFromJSON(JSON.stringify(obj.sprachendaten));
  34. result.bilingualeSprache = typeof obj.bilingualeSprache === "undefined" ? null : obj.bilingualeSprache;
  35. result.projektkursThema = typeof obj.projektkursThema === "undefined" ? null : obj.projektkursThema;
  36. result.projektkursLeitfach1Kuerzel = typeof obj.projektkursLeitfach1Kuerzel === "undefined" ? null : obj.projektkursLeitfach1Kuerzel;
  37. result.projektkursLeitfach2Kuerzel = typeof obj.projektkursLeitfach2Kuerzel === "undefined" ? null : obj.projektkursLeitfach2Kuerzel;
  38. for (let i : number = 0; i < obj.bewertetesHalbjahr.length; i++) {
  39. result.bewertetesHalbjahr[i] = obj.bewertetesHalbjahr[i];
  40. }
  41. if (!!obj.faecher) {
  42. for (let elem of obj.faecher) {
  43. result.faecher?.add(GostLeistungenFachwahl.transpilerFromJSON(JSON.stringify(elem)));
  44. }
  45. }
  46. return result;
  47. }
  48. public static transpilerToJSON(obj : GostLeistungen) : string {
  49. let result = '{';
  50. result += '"id" : ' + obj.id + ',';
  51. result += '"aktuellesSchuljahr" : ' + ((!obj.aktuellesSchuljahr) ? 'null' : obj.aktuellesSchuljahr.valueOf()) + ',';
  52. result += '"aktuellerJahrgang" : ' + ((!obj.aktuellerJahrgang) ? 'null' : '"' + obj.aktuellerJahrgang.valueOf() + '"') + ',';
  53. result += '"sprachendaten" : ' + ((!obj.sprachendaten) ? 'null' : Sprachendaten.transpilerToJSON(obj.sprachendaten)) + ',';
  54. result += '"bilingualeSprache" : ' + ((!obj.bilingualeSprache) ? 'null' : '"' + obj.bilingualeSprache.valueOf() + '"') + ',';
  55. result += '"projektkursThema" : ' + ((!obj.projektkursThema) ? 'null' : '"' + obj.projektkursThema.valueOf() + '"') + ',';
  56. result += '"projektkursLeitfach1Kuerzel" : ' + ((!obj.projektkursLeitfach1Kuerzel) ? 'null' : '"' + obj.projektkursLeitfach1Kuerzel.valueOf() + '"') + ',';
  57. result += '"projektkursLeitfach2Kuerzel" : ' + ((!obj.projektkursLeitfach2Kuerzel) ? 'null' : '"' + obj.projektkursLeitfach2Kuerzel.valueOf() + '"') + ',';
  58. if (!obj.bewertetesHalbjahr) {
  59. result += '[]';
  60. } else {
  61. result += '[ ';
  62. for (let i : number = 0; i < obj.bewertetesHalbjahr.length; i++) {
  63. let elem = obj.bewertetesHalbjahr[i];
  64. result += JSON.stringify(elem);
  65. if (i < obj.bewertetesHalbjahr.length - 1)
  66. result += ',';
  67. }
  68. result += ' ]' + ',';
  69. }
  70. if (!obj.faecher) {
  71. result += '[]';
  72. } else {
  73. result += '[ ';
  74. for (let i : number = 0; i < obj.faecher.size(); i++) {
  75. let elem = obj.faecher.get(i);
  76. result += GostLeistungenFachwahl.transpilerToJSON(elem);
  77. if (i < obj.faecher.size() - 1)
  78. result += ',';
  79. }
  80. result += ' ]' + ',';
  81. }
  82. result = result.slice(0, -1);
  83. result += '}';
  84. return result;
  85. }
  86. public static transpilerToJSONPatch(obj : Partial<GostLeistungen>) : string {
  87. let result = '{';
  88. if (typeof obj.id !== "undefined") {
  89. result += '"id" : ' + obj.id + ',';
  90. }
  91. if (typeof obj.aktuellesSchuljahr !== "undefined") {
  92. result += '"aktuellesSchuljahr" : ' + ((!obj.aktuellesSchuljahr) ? 'null' : obj.aktuellesSchuljahr.valueOf()) + ',';
  93. }
  94. if (typeof obj.aktuellerJahrgang !== "undefined") {
  95. result += '"aktuellerJahrgang" : ' + ((!obj.aktuellerJahrgang) ? 'null' : '"' + obj.aktuellerJahrgang.valueOf() + '"') + ',';
  96. }
  97. if (typeof obj.sprachendaten !== "undefined") {
  98. result += '"sprachendaten" : ' + ((!obj.sprachendaten) ? 'null' : Sprachendaten.transpilerToJSON(obj.sprachendaten)) + ',';
  99. }
  100. if (typeof obj.bilingualeSprache !== "undefined") {
  101. result += '"bilingualeSprache" : ' + ((!obj.bilingualeSprache) ? 'null' : '"' + obj.bilingualeSprache.valueOf() + '"') + ',';
  102. }
  103. if (typeof obj.projektkursThema !== "undefined") {
  104. result += '"projektkursThema" : ' + ((!obj.projektkursThema) ? 'null' : '"' + obj.projektkursThema.valueOf() + '"') + ',';
  105. }
  106. if (typeof obj.projektkursLeitfach1Kuerzel !== "undefined") {
  107. result += '"projektkursLeitfach1Kuerzel" : ' + ((!obj.projektkursLeitfach1Kuerzel) ? 'null' : '"' + obj.projektkursLeitfach1Kuerzel.valueOf() + '"') + ',';
  108. }
  109. if (typeof obj.projektkursLeitfach2Kuerzel !== "undefined") {
  110. result += '"projektkursLeitfach2Kuerzel" : ' + ((!obj.projektkursLeitfach2Kuerzel) ? 'null' : '"' + obj.projektkursLeitfach2Kuerzel.valueOf() + '"') + ',';
  111. }
  112. if (typeof obj.bewertetesHalbjahr !== "undefined") {
  113. let a = obj.bewertetesHalbjahr;
  114. if (!a) {
  115. result += '[]';
  116. } else {
  117. result += '[ ';
  118. for (let i : number = 0; i < a.length; i++) {
  119. let elem = a[i];
  120. result += JSON.stringify(elem);
  121. if (i < a.length - 1)
  122. result += ',';
  123. }
  124. result += ' ]' + ',';
  125. }
  126. }
  127. if (typeof obj.faecher !== "undefined") {
  128. if (!obj.faecher) {
  129. result += '[]';
  130. } else {
  131. result += '[ ';
  132. for (let i : number = 0; i < obj.faecher.size(); i++) {
  133. let elem = obj.faecher.get(i);
  134. result += GostLeistungenFachwahl.transpilerToJSON(elem);
  135. if (i < obj.faecher.size() - 1)
  136. result += ',';
  137. }
  138. result += ' ]' + ',';
  139. }
  140. }
  141. result = result.slice(0, -1);
  142. result += '}';
  143. return result;
  144. }
  145. }
  146. export function cast_de_nrw_schule_svws_core_data_gost_GostLeistungen(obj : unknown) : GostLeistungen {
  147. return obj as GostLeistungen;
  148. }