ENMDaten.ts 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473
  1. import { JavaObject, cast_java_lang_Object } from '../../../java/lang/JavaObject';
  2. import { ENMKlasse, cast_de_nrw_schule_svws_core_data_enm_ENMKlasse } from '../../../core/data/enm/ENMKlasse';
  3. import { ENMTeilleistungsart, cast_de_nrw_schule_svws_core_data_enm_ENMTeilleistungsart } from '../../../core/data/enm/ENMTeilleistungsart';
  4. import { ENMFach, cast_de_nrw_schule_svws_core_data_enm_ENMFach } from '../../../core/data/enm/ENMFach';
  5. import { ENMJahrgang, cast_de_nrw_schule_svws_core_data_enm_ENMJahrgang } from '../../../core/data/enm/ENMJahrgang';
  6. import { ENMLerngruppe, cast_de_nrw_schule_svws_core_data_enm_ENMLerngruppe } from '../../../core/data/enm/ENMLerngruppe';
  7. import { ENMLehrer, cast_de_nrw_schule_svws_core_data_enm_ENMLehrer } from '../../../core/data/enm/ENMLehrer';
  8. import { ENMSchueler, cast_de_nrw_schule_svws_core_data_enm_ENMSchueler } from '../../../core/data/enm/ENMSchueler';
  9. import { JavaString, cast_java_lang_String } from '../../../java/lang/JavaString';
  10. import { ENMNote, cast_de_nrw_schule_svws_core_data_enm_ENMNote } from '../../../core/data/enm/ENMNote';
  11. import { Vector, cast_java_util_Vector } from '../../../java/util/Vector';
  12. import { ENMFoerderschwerpunkt, cast_de_nrw_schule_svws_core_data_enm_ENMFoerderschwerpunkt } from '../../../core/data/enm/ENMFoerderschwerpunkt';
  13. import { ENMFloskelgruppe, cast_de_nrw_schule_svws_core_data_enm_ENMFloskelgruppe } from '../../../core/data/enm/ENMFloskelgruppe';
  14. export class ENMDaten extends JavaObject {
  15. public enmRevision : number = -1;
  16. public schuljahr : number = 0;
  17. public anzahlAbschnitte : number = 0;
  18. public aktuellerAbschnitt : number = 0;
  19. public publicKey : String | null = null;
  20. public lehrerID : number = 0;
  21. public fehlstundenEingabe : boolean = false;
  22. public fehlstundenSIFachbezogen : boolean = false;
  23. public fehlstundenSIIFachbezogen : boolean = false;
  24. public schulform : String | null = null;
  25. public mailadresse : String | null = null;
  26. public noten : Vector<ENMNote> = new Vector();
  27. public foerderschwerpunkte : Vector<ENMFoerderschwerpunkt> = new Vector();
  28. public jahrgaenge : Vector<ENMJahrgang> = new Vector();
  29. public klassen : Vector<ENMKlasse> = new Vector();
  30. public floskelgruppen : Vector<ENMFloskelgruppe> = new Vector();
  31. public lehrer : Vector<ENMLehrer> = new Vector();
  32. public faecher : Vector<ENMFach> = new Vector();
  33. public teilleistungsarten : Vector<ENMTeilleistungsart> = new Vector();
  34. public lerngruppen : Vector<ENMLerngruppe> = new Vector();
  35. public schueler : Vector<ENMSchueler> = new Vector();
  36. public constructor() {
  37. super();
  38. }
  39. isTranspiledInstanceOf(name : string): boolean {
  40. return ['de.nrw.schule.svws.core.data.enm.ENMDaten'].includes(name);
  41. }
  42. public static transpilerFromJSON(json : string): ENMDaten {
  43. const obj = JSON.parse(json);
  44. const result = new ENMDaten();
  45. if (typeof obj.enmRevision === "undefined")
  46. throw new Error('invalid json format, missing attribute enmRevision');
  47. result.enmRevision = obj.enmRevision;
  48. if (typeof obj.schuljahr === "undefined")
  49. throw new Error('invalid json format, missing attribute schuljahr');
  50. result.schuljahr = obj.schuljahr;
  51. if (typeof obj.anzahlAbschnitte === "undefined")
  52. throw new Error('invalid json format, missing attribute anzahlAbschnitte');
  53. result.anzahlAbschnitte = obj.anzahlAbschnitte;
  54. if (typeof obj.aktuellerAbschnitt === "undefined")
  55. throw new Error('invalid json format, missing attribute aktuellerAbschnitt');
  56. result.aktuellerAbschnitt = obj.aktuellerAbschnitt;
  57. result.publicKey = typeof obj.publicKey === "undefined" ? null : obj.publicKey;
  58. if (typeof obj.lehrerID === "undefined")
  59. throw new Error('invalid json format, missing attribute lehrerID');
  60. result.lehrerID = obj.lehrerID;
  61. if (typeof obj.fehlstundenEingabe === "undefined")
  62. throw new Error('invalid json format, missing attribute fehlstundenEingabe');
  63. result.fehlstundenEingabe = obj.fehlstundenEingabe;
  64. if (typeof obj.fehlstundenSIFachbezogen === "undefined")
  65. throw new Error('invalid json format, missing attribute fehlstundenSIFachbezogen');
  66. result.fehlstundenSIFachbezogen = obj.fehlstundenSIFachbezogen;
  67. if (typeof obj.fehlstundenSIIFachbezogen === "undefined")
  68. throw new Error('invalid json format, missing attribute fehlstundenSIIFachbezogen');
  69. result.fehlstundenSIIFachbezogen = obj.fehlstundenSIIFachbezogen;
  70. result.schulform = typeof obj.schulform === "undefined" ? null : obj.schulform;
  71. result.mailadresse = typeof obj.mailadresse === "undefined" ? null : obj.mailadresse;
  72. if (!!obj.noten) {
  73. for (let elem of obj.noten) {
  74. result.noten?.add(ENMNote.transpilerFromJSON(JSON.stringify(elem)));
  75. }
  76. }
  77. if (!!obj.foerderschwerpunkte) {
  78. for (let elem of obj.foerderschwerpunkte) {
  79. result.foerderschwerpunkte?.add(ENMFoerderschwerpunkt.transpilerFromJSON(JSON.stringify(elem)));
  80. }
  81. }
  82. if (!!obj.jahrgaenge) {
  83. for (let elem of obj.jahrgaenge) {
  84. result.jahrgaenge?.add(ENMJahrgang.transpilerFromJSON(JSON.stringify(elem)));
  85. }
  86. }
  87. if (!!obj.klassen) {
  88. for (let elem of obj.klassen) {
  89. result.klassen?.add(ENMKlasse.transpilerFromJSON(JSON.stringify(elem)));
  90. }
  91. }
  92. if (!!obj.floskelgruppen) {
  93. for (let elem of obj.floskelgruppen) {
  94. result.floskelgruppen?.add(ENMFloskelgruppe.transpilerFromJSON(JSON.stringify(elem)));
  95. }
  96. }
  97. if (!!obj.lehrer) {
  98. for (let elem of obj.lehrer) {
  99. result.lehrer?.add(ENMLehrer.transpilerFromJSON(JSON.stringify(elem)));
  100. }
  101. }
  102. if (!!obj.faecher) {
  103. for (let elem of obj.faecher) {
  104. result.faecher?.add(ENMFach.transpilerFromJSON(JSON.stringify(elem)));
  105. }
  106. }
  107. if (!!obj.teilleistungsarten) {
  108. for (let elem of obj.teilleistungsarten) {
  109. result.teilleistungsarten?.add(ENMTeilleistungsart.transpilerFromJSON(JSON.stringify(elem)));
  110. }
  111. }
  112. if (!!obj.lerngruppen) {
  113. for (let elem of obj.lerngruppen) {
  114. result.lerngruppen?.add(ENMLerngruppe.transpilerFromJSON(JSON.stringify(elem)));
  115. }
  116. }
  117. if (!!obj.schueler) {
  118. for (let elem of obj.schueler) {
  119. result.schueler?.add(ENMSchueler.transpilerFromJSON(JSON.stringify(elem)));
  120. }
  121. }
  122. return result;
  123. }
  124. public static transpilerToJSON(obj : ENMDaten) : string {
  125. let result = '{';
  126. result += '"enmRevision" : ' + obj.enmRevision + ',';
  127. result += '"schuljahr" : ' + obj.schuljahr + ',';
  128. result += '"anzahlAbschnitte" : ' + obj.anzahlAbschnitte + ',';
  129. result += '"aktuellerAbschnitt" : ' + obj.aktuellerAbschnitt + ',';
  130. result += '"publicKey" : ' + ((!obj.publicKey) ? 'null' : '"' + obj.publicKey.valueOf() + '"') + ',';
  131. result += '"lehrerID" : ' + obj.lehrerID + ',';
  132. result += '"fehlstundenEingabe" : ' + obj.fehlstundenEingabe + ',';
  133. result += '"fehlstundenSIFachbezogen" : ' + obj.fehlstundenSIFachbezogen + ',';
  134. result += '"fehlstundenSIIFachbezogen" : ' + obj.fehlstundenSIIFachbezogen + ',';
  135. result += '"schulform" : ' + ((!obj.schulform) ? 'null' : '"' + obj.schulform.valueOf() + '"') + ',';
  136. result += '"mailadresse" : ' + ((!obj.mailadresse) ? 'null' : '"' + obj.mailadresse.valueOf() + '"') + ',';
  137. if (!obj.noten) {
  138. result += '[]';
  139. } else {
  140. result += '[ ';
  141. for (let i : number = 0; i < obj.noten.size(); i++) {
  142. let elem = obj.noten.get(i);
  143. result += ENMNote.transpilerToJSON(elem);
  144. if (i < obj.noten.size() - 1)
  145. result += ',';
  146. }
  147. result += ' ]' + ',';
  148. }
  149. if (!obj.foerderschwerpunkte) {
  150. result += '[]';
  151. } else {
  152. result += '[ ';
  153. for (let i : number = 0; i < obj.foerderschwerpunkte.size(); i++) {
  154. let elem = obj.foerderschwerpunkte.get(i);
  155. result += ENMFoerderschwerpunkt.transpilerToJSON(elem);
  156. if (i < obj.foerderschwerpunkte.size() - 1)
  157. result += ',';
  158. }
  159. result += ' ]' + ',';
  160. }
  161. if (!obj.jahrgaenge) {
  162. result += '[]';
  163. } else {
  164. result += '[ ';
  165. for (let i : number = 0; i < obj.jahrgaenge.size(); i++) {
  166. let elem = obj.jahrgaenge.get(i);
  167. result += ENMJahrgang.transpilerToJSON(elem);
  168. if (i < obj.jahrgaenge.size() - 1)
  169. result += ',';
  170. }
  171. result += ' ]' + ',';
  172. }
  173. if (!obj.klassen) {
  174. result += '[]';
  175. } else {
  176. result += '[ ';
  177. for (let i : number = 0; i < obj.klassen.size(); i++) {
  178. let elem = obj.klassen.get(i);
  179. result += ENMKlasse.transpilerToJSON(elem);
  180. if (i < obj.klassen.size() - 1)
  181. result += ',';
  182. }
  183. result += ' ]' + ',';
  184. }
  185. if (!obj.floskelgruppen) {
  186. result += '[]';
  187. } else {
  188. result += '[ ';
  189. for (let i : number = 0; i < obj.floskelgruppen.size(); i++) {
  190. let elem = obj.floskelgruppen.get(i);
  191. result += ENMFloskelgruppe.transpilerToJSON(elem);
  192. if (i < obj.floskelgruppen.size() - 1)
  193. result += ',';
  194. }
  195. result += ' ]' + ',';
  196. }
  197. if (!obj.lehrer) {
  198. result += '[]';
  199. } else {
  200. result += '[ ';
  201. for (let i : number = 0; i < obj.lehrer.size(); i++) {
  202. let elem = obj.lehrer.get(i);
  203. result += ENMLehrer.transpilerToJSON(elem);
  204. if (i < obj.lehrer.size() - 1)
  205. result += ',';
  206. }
  207. result += ' ]' + ',';
  208. }
  209. if (!obj.faecher) {
  210. result += '[]';
  211. } else {
  212. result += '[ ';
  213. for (let i : number = 0; i < obj.faecher.size(); i++) {
  214. let elem = obj.faecher.get(i);
  215. result += ENMFach.transpilerToJSON(elem);
  216. if (i < obj.faecher.size() - 1)
  217. result += ',';
  218. }
  219. result += ' ]' + ',';
  220. }
  221. if (!obj.teilleistungsarten) {
  222. result += '[]';
  223. } else {
  224. result += '[ ';
  225. for (let i : number = 0; i < obj.teilleistungsarten.size(); i++) {
  226. let elem = obj.teilleistungsarten.get(i);
  227. result += ENMTeilleistungsart.transpilerToJSON(elem);
  228. if (i < obj.teilleistungsarten.size() - 1)
  229. result += ',';
  230. }
  231. result += ' ]' + ',';
  232. }
  233. if (!obj.lerngruppen) {
  234. result += '[]';
  235. } else {
  236. result += '[ ';
  237. for (let i : number = 0; i < obj.lerngruppen.size(); i++) {
  238. let elem = obj.lerngruppen.get(i);
  239. result += ENMLerngruppe.transpilerToJSON(elem);
  240. if (i < obj.lerngruppen.size() - 1)
  241. result += ',';
  242. }
  243. result += ' ]' + ',';
  244. }
  245. if (!obj.schueler) {
  246. result += '[]';
  247. } else {
  248. result += '[ ';
  249. for (let i : number = 0; i < obj.schueler.size(); i++) {
  250. let elem = obj.schueler.get(i);
  251. result += ENMSchueler.transpilerToJSON(elem);
  252. if (i < obj.schueler.size() - 1)
  253. result += ',';
  254. }
  255. result += ' ]' + ',';
  256. }
  257. result = result.slice(0, -1);
  258. result += '}';
  259. return result;
  260. }
  261. public static transpilerToJSONPatch(obj : Partial<ENMDaten>) : string {
  262. let result = '{';
  263. if (typeof obj.enmRevision !== "undefined") {
  264. result += '"enmRevision" : ' + obj.enmRevision + ',';
  265. }
  266. if (typeof obj.schuljahr !== "undefined") {
  267. result += '"schuljahr" : ' + obj.schuljahr + ',';
  268. }
  269. if (typeof obj.anzahlAbschnitte !== "undefined") {
  270. result += '"anzahlAbschnitte" : ' + obj.anzahlAbschnitte + ',';
  271. }
  272. if (typeof obj.aktuellerAbschnitt !== "undefined") {
  273. result += '"aktuellerAbschnitt" : ' + obj.aktuellerAbschnitt + ',';
  274. }
  275. if (typeof obj.publicKey !== "undefined") {
  276. result += '"publicKey" : ' + ((!obj.publicKey) ? 'null' : '"' + obj.publicKey.valueOf() + '"') + ',';
  277. }
  278. if (typeof obj.lehrerID !== "undefined") {
  279. result += '"lehrerID" : ' + obj.lehrerID + ',';
  280. }
  281. if (typeof obj.fehlstundenEingabe !== "undefined") {
  282. result += '"fehlstundenEingabe" : ' + obj.fehlstundenEingabe + ',';
  283. }
  284. if (typeof obj.fehlstundenSIFachbezogen !== "undefined") {
  285. result += '"fehlstundenSIFachbezogen" : ' + obj.fehlstundenSIFachbezogen + ',';
  286. }
  287. if (typeof obj.fehlstundenSIIFachbezogen !== "undefined") {
  288. result += '"fehlstundenSIIFachbezogen" : ' + obj.fehlstundenSIIFachbezogen + ',';
  289. }
  290. if (typeof obj.schulform !== "undefined") {
  291. result += '"schulform" : ' + ((!obj.schulform) ? 'null' : '"' + obj.schulform.valueOf() + '"') + ',';
  292. }
  293. if (typeof obj.mailadresse !== "undefined") {
  294. result += '"mailadresse" : ' + ((!obj.mailadresse) ? 'null' : '"' + obj.mailadresse.valueOf() + '"') + ',';
  295. }
  296. if (typeof obj.noten !== "undefined") {
  297. if (!obj.noten) {
  298. result += '[]';
  299. } else {
  300. result += '[ ';
  301. for (let i : number = 0; i < obj.noten.size(); i++) {
  302. let elem = obj.noten.get(i);
  303. result += ENMNote.transpilerToJSON(elem);
  304. if (i < obj.noten.size() - 1)
  305. result += ',';
  306. }
  307. result += ' ]' + ',';
  308. }
  309. }
  310. if (typeof obj.foerderschwerpunkte !== "undefined") {
  311. if (!obj.foerderschwerpunkte) {
  312. result += '[]';
  313. } else {
  314. result += '[ ';
  315. for (let i : number = 0; i < obj.foerderschwerpunkte.size(); i++) {
  316. let elem = obj.foerderschwerpunkte.get(i);
  317. result += ENMFoerderschwerpunkt.transpilerToJSON(elem);
  318. if (i < obj.foerderschwerpunkte.size() - 1)
  319. result += ',';
  320. }
  321. result += ' ]' + ',';
  322. }
  323. }
  324. if (typeof obj.jahrgaenge !== "undefined") {
  325. if (!obj.jahrgaenge) {
  326. result += '[]';
  327. } else {
  328. result += '[ ';
  329. for (let i : number = 0; i < obj.jahrgaenge.size(); i++) {
  330. let elem = obj.jahrgaenge.get(i);
  331. result += ENMJahrgang.transpilerToJSON(elem);
  332. if (i < obj.jahrgaenge.size() - 1)
  333. result += ',';
  334. }
  335. result += ' ]' + ',';
  336. }
  337. }
  338. if (typeof obj.klassen !== "undefined") {
  339. if (!obj.klassen) {
  340. result += '[]';
  341. } else {
  342. result += '[ ';
  343. for (let i : number = 0; i < obj.klassen.size(); i++) {
  344. let elem = obj.klassen.get(i);
  345. result += ENMKlasse.transpilerToJSON(elem);
  346. if (i < obj.klassen.size() - 1)
  347. result += ',';
  348. }
  349. result += ' ]' + ',';
  350. }
  351. }
  352. if (typeof obj.floskelgruppen !== "undefined") {
  353. if (!obj.floskelgruppen) {
  354. result += '[]';
  355. } else {
  356. result += '[ ';
  357. for (let i : number = 0; i < obj.floskelgruppen.size(); i++) {
  358. let elem = obj.floskelgruppen.get(i);
  359. result += ENMFloskelgruppe.transpilerToJSON(elem);
  360. if (i < obj.floskelgruppen.size() - 1)
  361. result += ',';
  362. }
  363. result += ' ]' + ',';
  364. }
  365. }
  366. if (typeof obj.lehrer !== "undefined") {
  367. if (!obj.lehrer) {
  368. result += '[]';
  369. } else {
  370. result += '[ ';
  371. for (let i : number = 0; i < obj.lehrer.size(); i++) {
  372. let elem = obj.lehrer.get(i);
  373. result += ENMLehrer.transpilerToJSON(elem);
  374. if (i < obj.lehrer.size() - 1)
  375. result += ',';
  376. }
  377. result += ' ]' + ',';
  378. }
  379. }
  380. if (typeof obj.faecher !== "undefined") {
  381. if (!obj.faecher) {
  382. result += '[]';
  383. } else {
  384. result += '[ ';
  385. for (let i : number = 0; i < obj.faecher.size(); i++) {
  386. let elem = obj.faecher.get(i);
  387. result += ENMFach.transpilerToJSON(elem);
  388. if (i < obj.faecher.size() - 1)
  389. result += ',';
  390. }
  391. result += ' ]' + ',';
  392. }
  393. }
  394. if (typeof obj.teilleistungsarten !== "undefined") {
  395. if (!obj.teilleistungsarten) {
  396. result += '[]';
  397. } else {
  398. result += '[ ';
  399. for (let i : number = 0; i < obj.teilleistungsarten.size(); i++) {
  400. let elem = obj.teilleistungsarten.get(i);
  401. result += ENMTeilleistungsart.transpilerToJSON(elem);
  402. if (i < obj.teilleistungsarten.size() - 1)
  403. result += ',';
  404. }
  405. result += ' ]' + ',';
  406. }
  407. }
  408. if (typeof obj.lerngruppen !== "undefined") {
  409. if (!obj.lerngruppen) {
  410. result += '[]';
  411. } else {
  412. result += '[ ';
  413. for (let i : number = 0; i < obj.lerngruppen.size(); i++) {
  414. let elem = obj.lerngruppen.get(i);
  415. result += ENMLerngruppe.transpilerToJSON(elem);
  416. if (i < obj.lerngruppen.size() - 1)
  417. result += ',';
  418. }
  419. result += ' ]' + ',';
  420. }
  421. }
  422. if (typeof obj.schueler !== "undefined") {
  423. if (!obj.schueler) {
  424. result += '[]';
  425. } else {
  426. result += '[ ';
  427. for (let i : number = 0; i < obj.schueler.size(); i++) {
  428. let elem = obj.schueler.get(i);
  429. result += ENMSchueler.transpilerToJSON(elem);
  430. if (i < obj.schueler.size() - 1)
  431. result += ',';
  432. }
  433. result += ' ]' + ',';
  434. }
  435. }
  436. result = result.slice(0, -1);
  437. result += '}';
  438. return result;
  439. }
  440. }
  441. export function cast_de_nrw_schule_svws_core_data_enm_ENMDaten(obj : unknown) : ENMDaten {
  442. return obj as ENMDaten;
  443. }