ApiServer.js 160 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.ApiServer = void 0;
  4. const BaseApi_1 = require("../api/BaseApi");
  5. const Abiturdaten_1 = require("../core/data/gost/Abiturdaten");
  6. const BenutzerListeEintrag_1 = require("../core/data/benutzer/BenutzerListeEintrag");
  7. const BetriebListeEintrag_1 = require("../core/data/betrieb/BetriebListeEintrag");
  8. const BetriebStammdaten_1 = require("../core/data/betrieb/BetriebStammdaten");
  9. const DBSchemaListeEintrag_1 = require("../core/data/db/DBSchemaListeEintrag");
  10. const ENMDaten_1 = require("../core/data/enm/ENMDaten");
  11. const Erzieherart_1 = require("../core/data/erzieher/Erzieherart");
  12. const ErzieherListeEintrag_1 = require("../core/data/erzieher/ErzieherListeEintrag");
  13. const ErzieherStammdaten_1 = require("../core/data/erzieher/ErzieherStammdaten");
  14. const FachDaten_1 = require("../core/data/fach/FachDaten");
  15. const FaecherListeEintrag_1 = require("../core/data/fach/FaecherListeEintrag");
  16. const GEAbschlussFaecher_1 = require("../core/data/abschluss/GEAbschlussFaecher");
  17. const GostBelegpruefungErgebnis_1 = require("../core/abschluss/gost/GostBelegpruefungErgebnis");
  18. const GostBlockungKurs_1 = require("../core/data/gost/GostBlockungKurs");
  19. const GostBlockungListeneintrag_1 = require("../core/data/gost/GostBlockungListeneintrag");
  20. const GostBlockungRegel_1 = require("../core/data/gost/GostBlockungRegel");
  21. const GostBlockungSchiene_1 = require("../core/data/gost/GostBlockungSchiene");
  22. const GostBlockungsdaten_1 = require("../core/data/gost/GostBlockungsdaten");
  23. const GostFach_1 = require("../core/data/gost/GostFach");
  24. const GostJahrgang_1 = require("../core/data/gost/GostJahrgang");
  25. const GostJahrgangsdaten_1 = require("../core/data/gost/GostJahrgangsdaten");
  26. const GostLeistungen_1 = require("../core/data/gost/GostLeistungen");
  27. const GostSchuelerFachwahl_1 = require("../core/data/gost/GostSchuelerFachwahl");
  28. const GostStatistikFachwahl_1 = require("../core/data/gost/GostStatistikFachwahl");
  29. const JahrgangsDaten_1 = require("../core/data/jahrgang/JahrgangsDaten");
  30. const JahrgangsListeEintrag_1 = require("../core/data/jahrgang/JahrgangsListeEintrag");
  31. const KatalogEintrag_1 = require("../core/data/kataloge/KatalogEintrag");
  32. const KatalogEintragStrassen_1 = require("../core/data/kataloge/KatalogEintragStrassen");
  33. const KlassenDaten_1 = require("../core/data/klassen/KlassenDaten");
  34. const KlassenListeEintrag_1 = require("../core/data/klassen/KlassenListeEintrag");
  35. const KursDaten_1 = require("../core/data/kurse/KursDaten");
  36. const KursListeEintrag_1 = require("../core/data/kurse/KursListeEintrag");
  37. const LehrerKatalogAbgangsgrundEintrag_1 = require("../core/data/lehrer/LehrerKatalogAbgangsgrundEintrag");
  38. const LehrerKatalogAnrechnungsgrundEintrag_1 = require("../core/data/lehrer/LehrerKatalogAnrechnungsgrundEintrag");
  39. const LehrerKatalogBeschaeftigungsartEintrag_1 = require("../core/data/lehrer/LehrerKatalogBeschaeftigungsartEintrag");
  40. const LehrerKatalogEinsatzstatusEintrag_1 = require("../core/data/lehrer/LehrerKatalogEinsatzstatusEintrag");
  41. const LehrerKatalogFachrichtungAnerkennungEintrag_1 = require("../core/data/lehrer/LehrerKatalogFachrichtungAnerkennungEintrag");
  42. const LehrerKatalogFachrichtungEintrag_1 = require("../core/data/lehrer/LehrerKatalogFachrichtungEintrag");
  43. const LehrerKatalogLehramtAnerkennungEintrag_1 = require("../core/data/lehrer/LehrerKatalogLehramtAnerkennungEintrag");
  44. const LehrerKatalogLehramtEintrag_1 = require("../core/data/lehrer/LehrerKatalogLehramtEintrag");
  45. const LehrerKatalogLehrbefaehigungAnerkennungEintrag_1 = require("../core/data/lehrer/LehrerKatalogLehrbefaehigungAnerkennungEintrag");
  46. const LehrerKatalogLehrbefaehigungEintrag_1 = require("../core/data/lehrer/LehrerKatalogLehrbefaehigungEintrag");
  47. const LehrerKatalogLeitungsfunktionEintrag_1 = require("../core/data/lehrer/LehrerKatalogLeitungsfunktionEintrag");
  48. const LehrerKatalogMehrleistungsartEintrag_1 = require("../core/data/lehrer/LehrerKatalogMehrleistungsartEintrag");
  49. const LehrerKatalogMinderleistungsartEintrag_1 = require("../core/data/lehrer/LehrerKatalogMinderleistungsartEintrag");
  50. const LehrerKatalogRechtsverhaeltnisEintrag_1 = require("../core/data/lehrer/LehrerKatalogRechtsverhaeltnisEintrag");
  51. const LehrerKatalogZugangsgrundEintrag_1 = require("../core/data/lehrer/LehrerKatalogZugangsgrundEintrag");
  52. const LehrerListeEintrag_1 = require("../core/data/lehrer/LehrerListeEintrag");
  53. const LehrerPersonaldaten_1 = require("../core/data/lehrer/LehrerPersonaldaten");
  54. const LehrerStammdaten_1 = require("../core/data/lehrer/LehrerStammdaten");
  55. const NationalitaetKatalogEintrag_1 = require("../core/data/kataloge/NationalitaetKatalogEintrag");
  56. const OrtKatalogEintrag_1 = require("../core/data/kataloge/OrtKatalogEintrag");
  57. const OrtsteilKatalogEintrag_1 = require("../core/data/kataloge/OrtsteilKatalogEintrag");
  58. const ReligionKatalogEintrag_1 = require("../core/data/kataloge/ReligionKatalogEintrag");
  59. const SchuelerBetriebsdaten_1 = require("../core/data/schueler/SchuelerBetriebsdaten");
  60. const SchuelerLernabschnittListeEintrag_1 = require("../core/data/schueler/SchuelerLernabschnittListeEintrag");
  61. const SchuelerLernabschnittsdaten_1 = require("../core/data/schueler/SchuelerLernabschnittsdaten");
  62. const SchuelerListeEintrag_1 = require("../core/data/schueler/SchuelerListeEintrag");
  63. const SchuelerSchulbesuchsdaten_1 = require("../core/data/schueler/SchuelerSchulbesuchsdaten");
  64. const SchuelerStammdaten_1 = require("../core/data/schueler/SchuelerStammdaten");
  65. const SchuleStammdaten_1 = require("../core/data/schule/SchuleStammdaten");
  66. const Vector_1 = require("../java/util/Vector");
  67. class ApiServer extends BaseApi_1.BaseApi {
  68. /**
  69. *
  70. * Erstellt eine neue API mit der übergebenen Konfiguration.
  71. *
  72. * @param {string} url - die URL des Servers: Alle Pfadangaben sind relativ zu dieser URL
  73. * @param {string} username - der Benutzername für den API-Zugriff
  74. * @param {string} password - das Kennwort des Benutzers für den API-Zugriff
  75. */
  76. constructor(url, username, password) {
  77. super(url, username, password);
  78. }
  79. /**
  80. * Implementierung der GET-Methode getConfigCertificate für den Zugriff auf die URL https://{hostname}/config/certificate
  81. *
  82. * Gibt das Zertifikat des Server zurück.
  83. *
  84. * Mögliche HTTP-Antworten:
  85. * Code 200: Das Zertifikat des Servers
  86. * - Mime-Type: text/plain
  87. * - Rückgabe-Typ: String
  88. * Code 500: Das Zertifikat wurde nicht gefunden
  89. *
  90. * @returns Das Zertifikat des Servers
  91. */
  92. async getConfigCertificate() {
  93. let path = "/config/certificate";
  94. const text = await super.getText(path);
  95. return String(text);
  96. }
  97. /**
  98. * Implementierung der GET-Methode getConfigCertificateBase64 für den Zugriff auf die URL https://{hostname}/config/certificate_base64
  99. *
  100. * Gibt das Zertifikat des Server in Base64-Kodierung zurück.
  101. *
  102. * Mögliche HTTP-Antworten:
  103. * Code 200: Das Base-64-kodierte Zertifikat des Servers
  104. * - Mime-Type: text/plain
  105. * - Rückgabe-Typ: String
  106. * Code 500: Das Zertifikat wurde nicht gefunden
  107. *
  108. * @returns Das Base-64-kodierte Zertifikat des Servers
  109. */
  110. async getConfigCertificateBase64() {
  111. let path = "/config/certificate_base64";
  112. const text = await super.getText(path);
  113. return String(text);
  114. }
  115. /**
  116. * Implementierung der GET-Methode getConfigDBSchemata für den Zugriff auf die URL https://{hostname}/config/db/schemata
  117. *
  118. * Gibt eine sortierte Übersicht von allen konfigurierten DB-Schemata zurück.
  119. *
  120. * Mögliche HTTP-Antworten:
  121. * Code 200: Eine Liste von DB-Schema-Listen-Einträgen
  122. * - Mime-Type: application/json
  123. * - Rückgabe-Typ: List<DBSchemaListeEintrag>
  124. *
  125. * @returns Eine Liste von DB-Schema-Listen-Einträgen
  126. */
  127. async getConfigDBSchemata() {
  128. let path = "/config/db/schemata";
  129. const result = await super.getJSON(path);
  130. const obj = JSON.parse(result);
  131. let ret = new Vector_1.Vector();
  132. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(DBSchemaListeEintrag_1.DBSchemaListeEintrag.transpilerFromJSON(text)); });
  133. return ret;
  134. }
  135. /**
  136. * Implementierung der GET-Methode getConfigPublicKeyBase64 für den Zugriff auf die URL https://{hostname}/config/publickey_base64
  137. *
  138. * Gibt den öffentlichen Schlüssel des Server in Base64-Kodierung zurück.
  139. *
  140. * Mögliche HTTP-Antworten:
  141. * Code 200: Der Base-64-kodierte, öffentliche Schlüssel des Servers
  142. * - Mime-Type: text/plain
  143. * - Rückgabe-Typ: String
  144. * Code 500: Der öffentliche Schlüssel wurde nicht gefunden
  145. *
  146. * @returns Der Base-64-kodierte, öffentliche Schlüssel des Servers
  147. */
  148. async getConfigPublicKeyBase64() {
  149. let path = "/config/publickey_base64";
  150. const text = await super.getText(path);
  151. return String(text);
  152. }
  153. /**
  154. * Implementierung der GET-Methode getBenutzerliste für den Zugriff auf die URL https://{hostname}/db/{schema}/benutzer/
  155. *
  156. * Erstellt eine Liste aller Benutzer unter Angabe.Es wird geprüft, ob der SVWS-Benutzer die notwendige Administrator-Berechtigung besitzt.
  157. *
  158. * Mögliche HTTP-Antworten:
  159. * Code 200: Eine Liste von Benutzer-Einträgen
  160. * - Mime-Type: application/json
  161. * - Rückgabe-Typ: List<BenutzerListeEintrag>
  162. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten anzusehen.
  163. * Code 404: Keine Schüler-Einträge gefunden
  164. *
  165. * @param {string} schema - der Pfad-Parameter schema
  166. *
  167. * @returns Eine Liste von Benutzer-Einträgen
  168. */
  169. async getBenutzerliste(schema) {
  170. let path = "/db/{schema}/benutzer/"
  171. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  172. const result = await super.getJSON(path);
  173. const obj = JSON.parse(result);
  174. let ret = new Vector_1.Vector();
  175. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(BenutzerListeEintrag_1.BenutzerListeEintrag.transpilerFromJSON(text)); });
  176. return ret;
  177. }
  178. /**
  179. * Implementierung der GET-Methode getBetriebe für den Zugriff auf die URL https://{hostname}/db/{schema}/betriebe/
  180. *
  181. * Erstellt eine Liste aller in der Datenbank vorhandenen Betriebe unter Angabe der ID, der Betriebsart , des Betriebnamens, Kontaktdaten, ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Betriebsdaten besitzt.
  182. *
  183. * Mögliche HTTP-Antworten:
  184. * Code 200: Eine Liste von Betrieb-Listen-Einträgen
  185. * - Mime-Type: application/json
  186. * - Rückgabe-Typ: List<BetriebListeEintrag>
  187. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Betriebdaten anzusehen.
  188. * Code 404: Keine Betrieb-Einträge gefunden
  189. *
  190. * @param {string} schema - der Pfad-Parameter schema
  191. *
  192. * @returns Eine Liste von Betrieb-Listen-Einträgen
  193. */
  194. async getBetriebe(schema) {
  195. let path = "/db/{schema}/betriebe/"
  196. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  197. const result = await super.getJSON(path);
  198. const obj = JSON.parse(result);
  199. let ret = new Vector_1.Vector();
  200. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(BetriebListeEintrag_1.BetriebListeEintrag.transpilerFromJSON(text)); });
  201. return ret;
  202. }
  203. /**
  204. * Implementierung der PATCH-Methode patchSchuelerBetriebsdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/betriebe/{id : \d+}/betrieb
  205. *
  206. * Passt die Schüler-Betriebsdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Schülerbetreibsdaten besitzt.
  207. *
  208. * Mögliche HTTP-Antworten:
  209. * Code 200: Der Patch wurde erfolgreich in die Schüler-Betriebsdaten integriert.
  210. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  211. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten zu ändern.
  212. * Code 404: Kein Schülerbetrieb-Eintrag mit der angegebenen ID gefunden
  213. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  214. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  215. *
  216. * @param {SchuelerBetriebsdaten} data - der Request-Body für die HTTP-Methode
  217. * @param {string} schema - der Pfad-Parameter schema
  218. * @param {number} id - der Pfad-Parameter id
  219. */
  220. async patchSchuelerBetriebsdaten(data, schema, id) {
  221. let path = "/db/{schema}/betriebe/{id : \d+}/betrieb"
  222. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  223. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  224. let body = SchuelerBetriebsdaten_1.SchuelerBetriebsdaten.transpilerToJSONPatch(data);
  225. return super.patchJSON(path, body);
  226. }
  227. /**
  228. * Implementierung der GET-Methode getSchuelerBetriebsdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/betriebe/{id : \d+}/betrieb
  229. *
  230. * Liest die Daten des Schülerbetriebs zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen vom Schülerbetriebbesitzt.
  231. *
  232. * Mögliche HTTP-Antworten:
  233. * Code 200: Stammdaten des Schülerbetriebs.
  234. * - Mime-Type: application/json
  235. * - Rückgabe-Typ: List<SchuelerBetriebsdaten>
  236. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerbetreibe anzusehen.
  237. * Code 404: Kein Schülerbetrieb gefunden
  238. *
  239. * @param {string} schema - der Pfad-Parameter schema
  240. * @param {number} id - der Pfad-Parameter id
  241. *
  242. * @returns Stammdaten des Schülerbetriebs.
  243. */
  244. async getSchuelerBetriebsdaten(schema, id) {
  245. let path = "/db/{schema}/betriebe/{id : \d+}/betrieb"
  246. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  247. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  248. const result = await super.getJSON(path);
  249. const obj = JSON.parse(result);
  250. let ret = new Vector_1.Vector();
  251. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(SchuelerBetriebsdaten_1.SchuelerBetriebsdaten.transpilerFromJSON(text)); });
  252. return ret;
  253. }
  254. /**
  255. * Implementierung der GET-Methode getBetriebStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/betriebe/{id : \d+}/stammdaten
  256. *
  257. * Liest die Stammdaten des Betriebs zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schülerdaten besitzt.
  258. *
  259. * Mögliche HTTP-Antworten:
  260. * Code 200: Die Stammdaten eines Betriebs
  261. * - Mime-Type: application/json
  262. * - Rückgabe-Typ: BetriebStammdaten
  263. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Betriebsdaten anzusehen.
  264. * Code 404: Kein Betrieb-Eintrag mit der angegebenen ID gefunden
  265. *
  266. * @param {string} schema - der Pfad-Parameter schema
  267. * @param {number} id - der Pfad-Parameter id
  268. *
  269. * @returns Die Stammdaten eines Betriebs
  270. */
  271. async getBetriebStammdaten(schema, id) {
  272. let path = "/db/{schema}/betriebe/{id : \d+}/stammdaten"
  273. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  274. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  275. const result = await super.getJSON(path);
  276. const text = result;
  277. return BetriebStammdaten_1.BetriebStammdaten.transpilerFromJSON(text);
  278. }
  279. /**
  280. * Implementierung der PATCH-Methode patchBetriebStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/betriebe/{id : \d+}/stammdaten
  281. *
  282. * Passt die Betrieb-Stammdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Erzieherdaten besitzt.
  283. *
  284. * Mögliche HTTP-Antworten:
  285. * Code 200: Der Patch wurde erfolgreich in die Betrieb-Stammdaten integriert.
  286. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  287. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Betriebdaten zu ändern.
  288. * Code 404: Kein Betrieb-Eintrag mit der angegebenen ID gefunden
  289. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  290. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  291. *
  292. * @param {BetriebStammdaten} data - der Request-Body für die HTTP-Methode
  293. * @param {string} schema - der Pfad-Parameter schema
  294. * @param {number} id - der Pfad-Parameter id
  295. */
  296. async patchBetriebStammdaten(data, schema, id) {
  297. let path = "/db/{schema}/betriebe/{id : \d+}/stammdaten"
  298. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  299. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  300. let body = BetriebStammdaten_1.BetriebStammdaten.transpilerToJSONPatch(data);
  301. return super.patchJSON(path, body);
  302. }
  303. /**
  304. * Implementierung der PUT-Methode setClientConfigGlobalKey für den Zugriff auf die URL https://{hostname}/db/{schema}/client/config/{app}/global/{key}
  305. *
  306. * Schreibt den Konfigurationseintrag der angegebenen Anwendung für den angebenen Schlüsselwert in die globale Konfiguration. Dabei wird geprüft, ob der angemeldete Benutzer administrative Rechte hat.
  307. *
  308. * Mögliche HTTP-Antworten:
  309. * Code 200: Der Konfigurationseintrag wurde erfolgreich geschrieben
  310. *
  311. * @param {String} data - der Request-Body für die HTTP-Methode
  312. * @param {string} schema - der Pfad-Parameter schema
  313. * @param {string} app - der Pfad-Parameter app
  314. * @param {string} key - der Pfad-Parameter key
  315. */
  316. async setClientConfigGlobalKey(data, schema, app, key) {
  317. let path = "/db/{schema}/client/config/{app}/global/{key}"
  318. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  319. .replace(/{app\s*(:[^}]+)?}/g, app)
  320. .replace(/{key\s*(:[^}]+)?}/g, key);
  321. let body = JSON.stringify(data);
  322. return super.putJSON(path, body);
  323. }
  324. /**
  325. * Implementierung der GET-Methode getClientConfigUserKey für den Zugriff auf die URL https://{hostname}/db/{schema}/client/config/{app}/user/{key}
  326. *
  327. * Liest den Schlüsselwert aus der Konfiguration für den Client aus. Ist sowohl ein globaler als auch eine benutzerspezifischer Konfigurationseintrag unter den Name vorhanden,so wird der benutzerspezifische Eintrag zurückgegeben. Die benutzerspezifische Konfiguration kann somit globale Einstellungen 'überschreiben'. Ist kein Wert vorhanden, so wird ein leerer String zurückgegeben.
  328. *
  329. * Mögliche HTTP-Antworten:
  330. * Code 200: Der Wert des Konfigurationseintrags
  331. * - Mime-Type: application/json
  332. * - Rückgabe-Typ: String
  333. *
  334. * @param {string} schema - der Pfad-Parameter schema
  335. * @param {string} app - der Pfad-Parameter app
  336. * @param {string} key - der Pfad-Parameter key
  337. *
  338. * @returns Der Wert des Konfigurationseintrags
  339. */
  340. async getClientConfigUserKey(schema, app, key) {
  341. let path = "/db/{schema}/client/config/{app}/user/{key}"
  342. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  343. .replace(/{app\s*(:[^}]+)?}/g, app)
  344. .replace(/{key\s*(:[^}]+)?}/g, key);
  345. const result = await super.getJSON(path);
  346. const text = result;
  347. return JSON.parse(text).toString();
  348. }
  349. /**
  350. * Implementierung der PUT-Methode setClientConfigUserKey für den Zugriff auf die URL https://{hostname}/db/{schema}/client/config/{app}/user/{key}
  351. *
  352. * Schreibt den Konfigurationseintrag der angegebenen Anwendung für den angebenen Schlüsselwert in die benutzerspezifische Konfiguration.
  353. *
  354. * Mögliche HTTP-Antworten:
  355. * Code 200: Der Konfigurationseintrag wurde erfolgreich geschrieben
  356. *
  357. * @param {String} data - der Request-Body für die HTTP-Methode
  358. * @param {string} schema - der Pfad-Parameter schema
  359. * @param {string} app - der Pfad-Parameter app
  360. * @param {string} key - der Pfad-Parameter key
  361. */
  362. async setClientConfigUserKey(data, schema, app, key) {
  363. let path = "/db/{schema}/client/config/{app}/user/{key}"
  364. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  365. .replace(/{app\s*(:[^}]+)?}/g, app)
  366. .replace(/{key\s*(:[^}]+)?}/g, key);
  367. let body = JSON.stringify(data);
  368. return super.putJSON(path, body);
  369. }
  370. /**
  371. * Implementierung der GET-Methode getLehrerENMDaten für den Zugriff auf die URL https://{hostname}/db/{schema}/enm/lehrer/{id : \d+}
  372. *
  373. * Liest die Daten des Externen Notenmoduls (ENM) des Lehrers zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen der Notendaten besitzt.
  374. *
  375. * Mögliche HTTP-Antworten:
  376. * Code 200: Die Daten des Externen Notenmoduls (ENM) des Lehrers
  377. * - Mime-Type: application/json
  378. * - Rückgabe-Typ: ENMDaten
  379. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Daten des ENM auszulesen.
  380. * Code 404: Kein Lehrer-Eintrag mit der angegebenen ID gefunden
  381. *
  382. * @param {string} schema - der Pfad-Parameter schema
  383. * @param {number} id - der Pfad-Parameter id
  384. *
  385. * @returns Die Daten des Externen Notenmoduls (ENM) des Lehrers
  386. */
  387. async getLehrerENMDaten(schema, id) {
  388. let path = "/db/{schema}/enm/lehrer/{id : \d+}"
  389. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  390. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  391. const result = await super.getJSON(path);
  392. const text = result;
  393. return ENMDaten_1.ENMDaten.transpilerFromJSON(text);
  394. }
  395. /**
  396. * Implementierung der GET-Methode getErzieher für den Zugriff auf die URL https://{hostname}/db/{schema}/erzieher/
  397. *
  398. * Erstellt eine Liste aller in der Datenbank vorhandenen Erzieher unter Angabe der ID, des Kürzels, des Vor- und Nachnamens, Erzieherart, Kontaktdaten, ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Erzieherdaten besitzt.
  399. *
  400. * Mögliche HTTP-Antworten:
  401. * Code 200: Eine Liste von Erzieher-Listen-Einträgen
  402. * - Mime-Type: application/json
  403. * - Rückgabe-Typ: List<ErzieherListeEintrag>
  404. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Erzieherdaten anzusehen.
  405. * Code 404: Keine Erzieher-Einträge gefunden
  406. *
  407. * @param {string} schema - der Pfad-Parameter schema
  408. *
  409. * @returns Eine Liste von Erzieher-Listen-Einträgen
  410. */
  411. async getErzieher(schema) {
  412. let path = "/db/{schema}/erzieher/"
  413. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  414. const result = await super.getJSON(path);
  415. const obj = JSON.parse(result);
  416. let ret = new Vector_1.Vector();
  417. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(ErzieherListeEintrag_1.ErzieherListeEintrag.transpilerFromJSON(text)); });
  418. return ret;
  419. }
  420. /**
  421. * Implementierung der GET-Methode getErzieherStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/erzieher/{id : \d+}/stammdaten
  422. *
  423. * Liest die Stammdaten des Erziehers zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Erzieherdaten besitzt.
  424. *
  425. * Mögliche HTTP-Antworten:
  426. * Code 200: Die Stammdaten des Erziehers
  427. * - Mime-Type: application/json
  428. * - Rückgabe-Typ: ErzieherStammdaten
  429. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Erzieherdaten anzusehen.
  430. * Code 404: Kein Erzieher-Eintrag mit der angegebenen ID gefunden
  431. *
  432. * @param {string} schema - der Pfad-Parameter schema
  433. * @param {number} id - der Pfad-Parameter id
  434. *
  435. * @returns Die Stammdaten des Erziehers
  436. */
  437. async getErzieherStammdaten(schema, id) {
  438. let path = "/db/{schema}/erzieher/{id : \d+}/stammdaten"
  439. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  440. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  441. const result = await super.getJSON(path);
  442. const text = result;
  443. return ErzieherStammdaten_1.ErzieherStammdaten.transpilerFromJSON(text);
  444. }
  445. /**
  446. * Implementierung der PATCH-Methode patchErzieherStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/erzieher/{id : \d+}/stammdaten
  447. *
  448. * Passt die Erzieher-Stammdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Erzieherdaten besitzt.
  449. *
  450. * Mögliche HTTP-Antworten:
  451. * Code 200: Der Patch wurde erfolgreich in die Erzieher-Stammdaten integriert.
  452. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  453. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Erzieherdaten zu ändern.
  454. * Code 404: Kein Erzieher-Eintrag mit der angegebenen ID gefunden
  455. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  456. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  457. *
  458. * @param {ErzieherStammdaten} data - der Request-Body für die HTTP-Methode
  459. * @param {string} schema - der Pfad-Parameter schema
  460. * @param {number} id - der Pfad-Parameter id
  461. */
  462. async patchErzieherStammdaten(data, schema, id) {
  463. let path = "/db/{schema}/erzieher/{id : \d+}/stammdaten"
  464. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  465. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  466. let body = ErzieherStammdaten_1.ErzieherStammdaten.transpilerToJSONPatch(data);
  467. return super.patchJSON(path, body);
  468. }
  469. /**
  470. * Implementierung der GET-Methode getErzieherArten für den Zugriff auf die URL https://{hostname}/db/{schema}/erzieher/arten
  471. *
  472. * Erstellt eine Liste aller in der Datenbank vorhandenen Erzieherarten unter Angabe der ID, der Beschreibung, Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogdaten besitzt.
  473. *
  474. * Mögliche HTTP-Antworten:
  475. * Code 200: Eine Liste von Erzieherarten
  476. * - Mime-Type: application/json
  477. * - Rückgabe-Typ: List<Erzieherart>
  478. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalogdaten anzusehen.
  479. * Code 404: Keine Erzieherart-Einträge gefunden
  480. *
  481. * @param {string} schema - der Pfad-Parameter schema
  482. *
  483. * @returns Eine Liste von Erzieherarten
  484. */
  485. async getErzieherArten(schema) {
  486. let path = "/db/{schema}/erzieher/arten"
  487. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  488. const result = await super.getJSON(path);
  489. const obj = JSON.parse(result);
  490. let ret = new Vector_1.Vector();
  491. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(Erzieherart_1.Erzieherart.transpilerFromJSON(text)); });
  492. return ret;
  493. }
  494. /**
  495. * Implementierung der GET-Methode getFaecher für den Zugriff auf die URL https://{hostname}/db/{schema}/faecher/
  496. *
  497. * Erstellt eine Liste aller in der Datenbank vorhanden Fächer unter Angabe der ID, des Kürzels, des verwendeten Statistik-Kürzels, der Bezeichnung des Faches, ob es ein Fach der Oberstufe ist, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Fächerdaten besitzt.
  498. *
  499. * Mögliche HTTP-Antworten:
  500. * Code 200: Eine Liste von Fächer-Listen-Einträgen
  501. * - Mime-Type: application/json
  502. * - Rückgabe-Typ: List<FaecherListeEintrag>
  503. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fächerdaten anzusehen.
  504. * Code 404: Keine Fächer-Einträge gefunden
  505. *
  506. * @param {string} schema - der Pfad-Parameter schema
  507. *
  508. * @returns Eine Liste von Fächer-Listen-Einträgen
  509. */
  510. async getFaecher(schema) {
  511. let path = "/db/{schema}/faecher/"
  512. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  513. const result = await super.getJSON(path);
  514. const obj = JSON.parse(result);
  515. let ret = new Vector_1.Vector();
  516. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(FaecherListeEintrag_1.FaecherListeEintrag.transpilerFromJSON(text)); });
  517. return ret;
  518. }
  519. /**
  520. * Implementierung der GET-Methode getFach für den Zugriff auf die URL https://{hostname}/db/{schema}/faecher/{id : \d+}
  521. *
  522. * Liest die Daten des Faches zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Fächerdaten besitzt.
  523. *
  524. * Mögliche HTTP-Antworten:
  525. * Code 200: Die Daten des Faches
  526. * - Mime-Type: application/json
  527. * - Rückgabe-Typ: FachDaten
  528. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fächerdaten anzusehen.
  529. * Code 404: Kein Fach-Eintrag mit der angegebenen ID gefunden
  530. *
  531. * @param {string} schema - der Pfad-Parameter schema
  532. * @param {number} id - der Pfad-Parameter id
  533. *
  534. * @returns Die Daten des Faches
  535. */
  536. async getFach(schema, id) {
  537. let path = "/db/{schema}/faecher/{id : \d+}"
  538. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  539. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  540. const result = await super.getJSON(path);
  541. const text = result;
  542. return FachDaten_1.FachDaten.transpilerFromJSON(text);
  543. }
  544. /**
  545. * Implementierung der GET-Methode getGesamtschuleSchuelerPrognoseLeistungsdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/gesamtschule/schueler/{id : \d+}/prognose_leistungsdaten
  546. *
  547. * Liest die Leistungsdaten des aktuellen Lernabschnittes in Bezug auf die Prognose- bzw. Abschlussberechnung in der Sek I der Gesamtschule des Schülers mit der angegebene ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Leistungsdaten besitzt.
  548. *
  549. * Mögliche HTTP-Antworten:
  550. * Code 200: Die Leistungsdaten des Schülers
  551. * - Mime-Type: application/json
  552. * - Rückgabe-Typ: GEAbschlussFaecher
  553. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Leistungsdaten anzusehen.
  554. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  555. *
  556. * @param {string} schema - der Pfad-Parameter schema
  557. * @param {number} id - der Pfad-Parameter id
  558. *
  559. * @returns Die Leistungsdaten des Schülers
  560. */
  561. async getGesamtschuleSchuelerPrognoseLeistungsdaten(schema, id) {
  562. let path = "/db/{schema}/gesamtschule/schueler/{id : \d+}/prognose_leistungsdaten"
  563. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  564. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  565. const result = await super.getJSON(path);
  566. const text = result;
  567. return GEAbschlussFaecher_1.GEAbschlussFaecher.transpilerFromJSON(text);
  568. }
  569. /**
  570. * Implementierung der GET-Methode getGesamtschuleSchuelerPrognosLeistungsdatenFuerAbschnitt für den Zugriff auf die URL https://{hostname}/db/{schema}/gesamtschule/schueler/{id : \d+}/prognose_leistungsdaten/abschnitt/{abschnittID : \d+}
  571. *
  572. * Liest die Leistungsdaten des angegebenen Lernabschnittes in Bezug auf die Prognose- bzw. Abschlussberechnung in der Sek I der Gesamtschule des Schülers mit der angegebene ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Leistungsdaten besitzt.
  573. *
  574. * Mögliche HTTP-Antworten:
  575. * Code 200: Die Leistungsdaten des Schülers
  576. * - Mime-Type: application/json
  577. * - Rückgabe-Typ: GEAbschlussFaecher
  578. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Leistungsdaten anzusehen.
  579. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  580. *
  581. * @param {string} schema - der Pfad-Parameter schema
  582. * @param {number} id - der Pfad-Parameter id
  583. * @param {number} abschnittID - der Pfad-Parameter abschnittID
  584. *
  585. * @returns Die Leistungsdaten des Schülers
  586. */
  587. async getGesamtschuleSchuelerPrognosLeistungsdatenFuerAbschnitt(schema, id, abschnittID) {
  588. let path = "/db/{schema}/gesamtschule/schueler/{id : \d+}/prognose_leistungsdaten/abschnitt/{abschnittID : \d+}"
  589. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  590. .replace(/{id\s*(:[^}]+)?}/g, id.toString())
  591. .replace(/{abschnittID\s*(:[^}]+)?}/g, abschnittID.toString());
  592. const result = await super.getJSON(path);
  593. const text = result;
  594. return GEAbschlussFaecher_1.GEAbschlussFaecher.transpilerFromJSON(text);
  595. }
  596. /**
  597. * Implementierung der POST-Methode getGostAbiturBelegpruefungEF1 für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abitur/belegpruefung/EF1
  598. *
  599. * Prüft anhand der übergeben Abiturdaten, ob die Belegung in den Abiturdaten korrekt ist oder nicht. Es werden ggf. auch Belegungsfehler und Hinweise zur Belegung zurückgegeben.
  600. *
  601. * Mögliche HTTP-Antworten:
  602. * Code 200: Das Ergebnis der Belegprüfung, ggf. mit Belegungsfehlern
  603. * - Mime-Type: application/json
  604. * - Rückgabe-Typ: GostBelegpruefungErgebnis
  605. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Belegprüfung durchzuführen.
  606. * Code 404: Es wurden keine Fächerdaten zur gymnasialen Oberstufe gefunden
  607. *
  608. * @param {Abiturdaten} data - der Request-Body für die HTTP-Methode
  609. * @param {string} schema - der Pfad-Parameter schema
  610. *
  611. * @returns Das Ergebnis der Belegprüfung, ggf. mit Belegungsfehlern
  612. */
  613. async getGostAbiturBelegpruefungEF1(data, schema) {
  614. let path = "/db/{schema}/gost/abitur/belegpruefung/EF1"
  615. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  616. let body = Abiturdaten_1.Abiturdaten.transpilerToJSON(data);
  617. const result = await super.postJSON(path, body);
  618. const text = result;
  619. return GostBelegpruefungErgebnis_1.GostBelegpruefungErgebnis.transpilerFromJSON(text);
  620. }
  621. /**
  622. * Implementierung der POST-Methode getGostAbiturBelegpruefungGesamt für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abitur/belegpruefung/gesamt
  623. *
  624. * Prüft anhand der übergeben Abiturdaten, ob die Belegung in den Abiturdaten korrekt ist oder nicht. Es werden ggf. auch Belegungsfehler und Hinweise zur Belegung zurückgegeben.
  625. *
  626. * Mögliche HTTP-Antworten:
  627. * Code 200: Das Ergebnis der Belegprüfung, ggf. mit Belegungsfehlern
  628. * - Mime-Type: application/json
  629. * - Rückgabe-Typ: GostBelegpruefungErgebnis
  630. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Belegprüfung durchzuführen.
  631. * Code 404: Es wurden keine Fächerdaten zur gymnasialen Oberstufe gefunden
  632. *
  633. * @param {Abiturdaten} data - der Request-Body für die HTTP-Methode
  634. * @param {string} schema - der Pfad-Parameter schema
  635. *
  636. * @returns Das Ergebnis der Belegprüfung, ggf. mit Belegungsfehlern
  637. */
  638. async getGostAbiturBelegpruefungGesamt(data, schema) {
  639. let path = "/db/{schema}/gost/abitur/belegpruefung/gesamt"
  640. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  641. let body = Abiturdaten_1.Abiturdaten.transpilerToJSON(data);
  642. const result = await super.postJSON(path, body);
  643. const text = result;
  644. return GostBelegpruefungErgebnis_1.GostBelegpruefungErgebnis.transpilerFromJSON(text);
  645. }
  646. /**
  647. * Implementierung der GET-Methode getGostAbiturjahrgaenge für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgaenge
  648. *
  649. * Liefert eine Liste aller Abiturjahrgänge, welche in der Datenbank für die Laufbahnplanung angelegt sind.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen von Kataloginformationen besitzt.
  650. *
  651. * Mögliche HTTP-Antworten:
  652. * Code 200: Die Liste der Abiturjahrgänge.
  653. * - Mime-Type: application/json
  654. * - Rückgabe-Typ: List<GostJahrgang>
  655. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Liste der Abiturjahrgänge auszulesen.
  656. * Code 404: Kein Abiturjahrgang gefunden oder keine gymnasiale Oberstufe bei der Schulform vorhanden
  657. *
  658. * @param {string} schema - der Pfad-Parameter schema
  659. *
  660. * @returns Die Liste der Abiturjahrgänge.
  661. */
  662. async getGostAbiturjahrgaenge(schema) {
  663. let path = "/db/{schema}/gost/abiturjahrgaenge"
  664. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  665. const result = await super.getJSON(path);
  666. const obj = JSON.parse(result);
  667. let ret = new Vector_1.Vector();
  668. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(GostJahrgang_1.GostJahrgang.transpilerFromJSON(text)); });
  669. return ret;
  670. }
  671. /**
  672. * Implementierung der GET-Methode getGostAbiturjahrgang für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}
  673. *
  674. * Liest die Grunddaten des Jahrgangs der gymnasialen Oberstufe zu dem Jahr, in welchem der Jahrgang Abitur machen wird, aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Jahrgangsinformationen besitzt.
  675. *
  676. * Mögliche HTTP-Antworten:
  677. * Code 200: Die Grunddaten des Jahrgangs der gymnasialen Oberstufe
  678. * - Mime-Type: application/json
  679. * - Rückgabe-Typ: GostJahrgangsdaten
  680. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Grunddaten der Gymnasialen Oberstufe anzusehen.
  681. * Code 404: Kein Eintrag für einen Jahrgang der gymnasialen Oberstufe mit dem angegebenen Abiturjahr gefunden
  682. *
  683. * @param {string} schema - der Pfad-Parameter schema
  684. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  685. *
  686. * @returns Die Grunddaten des Jahrgangs der gymnasialen Oberstufe
  687. */
  688. async getGostAbiturjahrgang(schema, abiturjahr) {
  689. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}"
  690. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  691. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString());
  692. const result = await super.getJSON(path);
  693. const text = result;
  694. return GostJahrgangsdaten_1.GostJahrgangsdaten.transpilerFromJSON(text);
  695. }
  696. /**
  697. * Implementierung der PATCH-Methode patchGostAbiturjahrgang für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}
  698. *
  699. * Passt die Daten des Jahrganges der gymnasialen Oberstufe zu dem Jahr an, in welchem der Jahrgang Abitur machen wird. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen der Jahrgangsinformationen besitzt.
  700. *
  701. * Mögliche HTTP-Antworten:
  702. * Code 200: Der Patch wurde erfolgreich in die Jahrgangsdaten integriert.
  703. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  704. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Jahrgangsdaten zu ändern.
  705. * Code 404: Kein Abiturjahrgangs-Eintrag mit der angegebenen ID gefunden
  706. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  707. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  708. *
  709. * @param {GostJahrgangsdaten} data - der Request-Body für die HTTP-Methode
  710. * @param {string} schema - der Pfad-Parameter schema
  711. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  712. */
  713. async patchGostAbiturjahrgang(data, schema, abiturjahr) {
  714. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}"
  715. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  716. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString());
  717. let body = GostJahrgangsdaten_1.GostJahrgangsdaten.transpilerToJSONPatch(data);
  718. return super.patchJSON(path, body);
  719. }
  720. /**
  721. * Implementierung der GET-Methode getGostAbiturjahrgangBlockungsliste für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/{halbjahr : \d+}/blockungen
  722. *
  723. * Erstellt eine Liste aller in der Datenbank vorhanden Blockungen der gymnasialen Oberstufe, welche für den angebenen Abitur-Jahrgang und das angegebene Halbjahr festgelegt wurden.. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Blockungsdaten besitzt.
  724. *
  725. * Mögliche HTTP-Antworten:
  726. * Code 200: Eine Liste von Blockungs-Listen-Einträgen
  727. * - Mime-Type: application/json
  728. * - Rückgabe-Typ: List<GostBlockungListeneintrag>
  729. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Blockungsdaten anzusehen.
  730. * Code 404: Keine Blockungs-Einträge gefunden oder keine gymnasiale Oberstufe bei der Schulform vorhanden
  731. *
  732. * @param {string} schema - der Pfad-Parameter schema
  733. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  734. * @param {number} halbjahr - der Pfad-Parameter halbjahr
  735. *
  736. * @returns Eine Liste von Blockungs-Listen-Einträgen
  737. */
  738. async getGostAbiturjahrgangBlockungsliste(schema, abiturjahr, halbjahr) {
  739. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/{halbjahr : \d+}/blockungen"
  740. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  741. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString())
  742. .replace(/{halbjahr\s*(:[^}]+)?}/g, halbjahr.toString());
  743. const result = await super.getJSON(path);
  744. const obj = JSON.parse(result);
  745. let ret = new Vector_1.Vector();
  746. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(GostBlockungListeneintrag_1.GostBlockungListeneintrag.transpilerFromJSON(text)); });
  747. return ret;
  748. }
  749. /**
  750. * Implementierung der POST-Methode createGostAbiturjahrgangBlockung für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/{halbjahr : \d+}/blockungen/new/{name}
  751. *
  752. * Erstellt eine neue Blockung und gibt die ID dieser Blockung zurück.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Erstellen der Fachwahlen besitzt.
  753. *
  754. * Mögliche HTTP-Antworten:
  755. * Code 200: Die Blockung wurde erfolgreich angelegt.
  756. * - Mime-Type: application/json
  757. * - Rückgabe-Typ: Long
  758. * Code 403: Der SVWS-Benutzer hat keine Rechte, um eine Blockung anzulegen.
  759. * Code 404: Keine Fachwahlinformationen zum Anlegen einer Blockung gefunden
  760. * Code 409: Die übergebenen Daten (Anzahl der Schienen) sind fehlerhaft, da eine Rahmenbedingung nicht erfüllt wurde
  761. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  762. *
  763. * @param {Integer} data - der Request-Body für die HTTP-Methode
  764. * @param {string} schema - der Pfad-Parameter schema
  765. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  766. * @param {number} halbjahr - der Pfad-Parameter halbjahr
  767. * @param {string} name - der Pfad-Parameter name
  768. *
  769. * @returns Die Blockung wurde erfolgreich angelegt.
  770. */
  771. async createGostAbiturjahrgangBlockung(data, schema, abiturjahr, halbjahr, name) {
  772. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/{halbjahr : \d+}/blockungen/new/{name}"
  773. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  774. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString())
  775. .replace(/{halbjahr\s*(:[^}]+)?}/g, halbjahr.toString())
  776. .replace(/{name\s*(:[^}]+)?}/g, name);
  777. let body = JSON.stringify(data);
  778. const result = await super.postJSON(path, body);
  779. const text = result;
  780. return parseFloat(JSON.parse(text));
  781. }
  782. /**
  783. * Implementierung der GET-Methode getGostAbiturjahrgangFach für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/fach/{id : \d+}
  784. *
  785. * Liefert die Informationen bezüglich eines Abiturjahrgangs der gymnasialen Oberstufe zu dem Fach mit der angegebenen ID. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Fachinformationen besitzt.
  786. *
  787. * Mögliche HTTP-Antworten:
  788. * Code 200: Die Daten des Faches bezüglich eines Abiturjahrgangs der gymnasialen Oberstufe
  789. * - Mime-Type: application/json
  790. * - Rückgabe-Typ: GostFach
  791. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Fachinformationen der Gymnasialen Oberstufe anzusehen.
  792. * Code 404: Kein Eintrag für das Fach der gymnasialen Oberstufe mit der angegebenen ID gefunden
  793. *
  794. * @param {string} schema - der Pfad-Parameter schema
  795. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  796. * @param {number} id - der Pfad-Parameter id
  797. *
  798. * @returns Die Daten des Faches bezüglich eines Abiturjahrgangs der gymnasialen Oberstufe
  799. */
  800. async getGostAbiturjahrgangFach(schema, abiturjahr, id) {
  801. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/fach/{id : \d+}"
  802. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  803. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString())
  804. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  805. const result = await super.getJSON(path);
  806. const text = result;
  807. return GostFach_1.GostFach.transpilerFromJSON(text);
  808. }
  809. /**
  810. * Implementierung der PATCH-Methode patchGostAbiturjahrgangFach für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/fach/{id : \d+}
  811. *
  812. * Passt die Daten eines Faches in Bezug auf den Abiturjahrgang der Gymnasiale Oberstufe an. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen der Fachinformationen besitzt.
  813. *
  814. * Mögliche HTTP-Antworten:
  815. * Code 200: Der Patch wurde erfolgreich in die Fachinformationen integriert.
  816. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  817. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fachdaten zu ändern.
  818. * Code 404: Kein Fach-Eintrag mit der angegebenen ID gefunden
  819. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  820. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  821. *
  822. * @param {GostFach} data - der Request-Body für die HTTP-Methode
  823. * @param {string} schema - der Pfad-Parameter schema
  824. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  825. * @param {number} id - der Pfad-Parameter id
  826. */
  827. async patchGostAbiturjahrgangFach(data, schema, abiturjahr, id) {
  828. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/fach/{id : \d+}"
  829. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  830. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString())
  831. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  832. let body = GostFach_1.GostFach.transpilerToJSONPatch(data);
  833. return super.patchJSON(path, body);
  834. }
  835. /**
  836. * Implementierung der GET-Methode getGostAbiturjahrgangFachwahlen für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/fachwahlen
  837. *
  838. * Erstellt eine Liste aller in der Datenbank für den angebenen Abitur-Jahrgang vorhanden Fachwahlen der gymnasialen Oberstufe. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Fächerdaten besitzt.
  839. *
  840. * Mögliche HTTP-Antworten:
  841. * Code 200: Eine Liste der Fachwahlen
  842. * - Mime-Type: application/json
  843. * - Rückgabe-Typ: List<GostStatistikFachwahl>
  844. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fachwahlen anzusehen.
  845. * Code 404: Keine Fachwahlen gefunden oder keine gymnasiale Oberstufe bei der Schulform vorhanden
  846. *
  847. * @param {string} schema - der Pfad-Parameter schema
  848. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  849. *
  850. * @returns Eine Liste der Fachwahlen
  851. */
  852. async getGostAbiturjahrgangFachwahlen(schema, abiturjahr) {
  853. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/fachwahlen"
  854. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  855. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString());
  856. const result = await super.getJSON(path);
  857. const obj = JSON.parse(result);
  858. let ret = new Vector_1.Vector();
  859. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(GostStatistikFachwahl_1.GostStatistikFachwahl.transpilerFromJSON(text)); });
  860. return ret;
  861. }
  862. /**
  863. * Implementierung der GET-Methode getGostAbiturjahrgangFaecher für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/faecher
  864. *
  865. * Erstellt eine Liste aller in der Datenbank vorhanden Fächer der gymnasialen Oberstufe, welche für den angebenen Abitur-Jahrgang festgelegt wurden.. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Fächerdaten besitzt.
  866. *
  867. * Mögliche HTTP-Antworten:
  868. * Code 200: Eine Liste von Fächer-Listen-Einträgen
  869. * - Mime-Type: application/json
  870. * - Rückgabe-Typ: List<GostFach>
  871. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fächerdaten anzusehen.
  872. * Code 404: Keine Fächer-Einträge gefunden oder keine gymnasiale Oberstufe bei der Schulform vorhanden
  873. *
  874. * @param {string} schema - der Pfad-Parameter schema
  875. * @param {number} abiturjahr - der Pfad-Parameter abiturjahr
  876. *
  877. * @returns Eine Liste von Fächer-Listen-Einträgen
  878. */
  879. async getGostAbiturjahrgangFaecher(schema, abiturjahr) {
  880. let path = "/db/{schema}/gost/abiturjahrgang/{abiturjahr : \d+}/faecher"
  881. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  882. .replace(/{abiturjahr\s*(:[^}]+)?}/g, abiturjahr.toString());
  883. const result = await super.getJSON(path);
  884. const obj = JSON.parse(result);
  885. let ret = new Vector_1.Vector();
  886. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(GostFach_1.GostFach.transpilerFromJSON(text)); });
  887. return ret;
  888. }
  889. /**
  890. * Implementierung der POST-Methode createGostAbiturjahrgang für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/abiturjahrgang/new/{jahrgangid}
  891. *
  892. * Erstellt einen neuen Abiturjahrgang und gibt das Abiturjahr zurück.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Erstellen eine Abiturjahrgangs besitzt.
  893. *
  894. * Mögliche HTTP-Antworten:
  895. * Code 200: Der Abiturjahrgang wurde erfolgreich angelegt.
  896. * - Mime-Type: application/json
  897. * - Rückgabe-Typ: Integer
  898. * Code 403: Der SVWS-Benutzer hat keine Rechte, um einen Abiturjahrgang anzulegen.
  899. * Code 404: Keine Daten beim angegebenen Jahrgang gefunden, um einen Abiturjahrgang anzulegen
  900. * Code 409: Der Abiturjahrgang existiert bereits
  901. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  902. *
  903. * @param {string} schema - der Pfad-Parameter schema
  904. * @param {number} jahrgangid - der Pfad-Parameter jahrgangid
  905. *
  906. * @returns Der Abiturjahrgang wurde erfolgreich angelegt.
  907. */
  908. async createGostAbiturjahrgang(schema, jahrgangid) {
  909. let path = "/db/{schema}/gost/abiturjahrgang/new/{jahrgangid}"
  910. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  911. .replace(/{jahrgangid\s*(:[^}]+)?}/g, jahrgangid.toString());
  912. const result = await super.postJSON(path, null);
  913. const text = result;
  914. return parseInt(JSON.parse(text));
  915. }
  916. /**
  917. * Implementierung der DELETE-Methode deleteGostBlockung für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/{blockungsid : \d+}
  918. *
  919. * Entfernt die angegebene Blockung der gymnasialen Oberstufe. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Entfernen der Blockungsdaten besitzt.
  920. *
  921. * Mögliche HTTP-Antworten:
  922. * Code 204: Die Blockungsdaten der gymnasialen Oberstfue für die angegebene ID wurden erfolgreich gelöscht.
  923. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Blockungsdaten der Gymnasialen Oberstufe zu löschen.
  924. * Code 404: Keine Blockung mit der angebenen ID gefunden.
  925. *
  926. * @param {string} schema - der Pfad-Parameter schema
  927. * @param {number} blockungsid - der Pfad-Parameter blockungsid
  928. */
  929. async deleteGostBlockung(schema, blockungsid) {
  930. let path = "/db/{schema}/gost/blockungen/{blockungsid : \d+}"
  931. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  932. .replace(/{blockungsid\s*(:[^}]+)?}/g, blockungsid.toString());
  933. return super.deleteJSON(path);
  934. }
  935. /**
  936. * Implementierung der GET-Methode getGostBlockung für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/{blockungsid : \d+}
  937. *
  938. * Liest für die angegebene Blockung der gymnasialen Oberstufe die grundlegenden Daten aus. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen der Blockungsdaten besitzt.
  939. *
  940. * Mögliche HTTP-Antworten:
  941. * Code 200: Die Blockungsdaten der gymnasialen Oberstfue für die angegebene ID
  942. * - Mime-Type: application/json
  943. * - Rückgabe-Typ: GostBlockungsdaten
  944. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Blockungsdaten der Gymnasialen Oberstufe auszulesen.
  945. * Code 404: Keine Blockung mit der angebenen ID gefunden.
  946. *
  947. * @param {string} schema - der Pfad-Parameter schema
  948. * @param {number} blockungsid - der Pfad-Parameter blockungsid
  949. *
  950. * @returns Die Blockungsdaten der gymnasialen Oberstfue für die angegebene ID
  951. */
  952. async getGostBlockung(schema, blockungsid) {
  953. let path = "/db/{schema}/gost/blockungen/{blockungsid : \d+}"
  954. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  955. .replace(/{blockungsid\s*(:[^}]+)?}/g, blockungsid.toString());
  956. const result = await super.getJSON(path);
  957. const text = result;
  958. return GostBlockungsdaten_1.GostBlockungsdaten.transpilerFromJSON(text);
  959. }
  960. /**
  961. * Implementierung der PATCH-Methode patchGostBlockung für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/{blockungsid : \d+}
  962. *
  963. * Passt die Blockungsdaten der Gymnasiale Oberstufe mit der angegebenen ID an.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen der Fachwahlen besitzt.
  964. *
  965. * Mögliche HTTP-Antworten:
  966. * Code 200: Der Patch wurde erfolgreich in die Blockungsdaten integriert.
  967. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  968. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Blockungsdaten zu ändern.
  969. * Code 404: Kein Blockungsdaten-Eintrag mit der angegebenen ID gefunden
  970. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  971. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  972. *
  973. * @param {GostBlockungsdaten} data - der Request-Body für die HTTP-Methode
  974. * @param {string} schema - der Pfad-Parameter schema
  975. * @param {number} blockungsid - der Pfad-Parameter blockungsid
  976. */
  977. async patchGostBlockung(data, schema, blockungsid) {
  978. let path = "/db/{schema}/gost/blockungen/{blockungsid : \d+}"
  979. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  980. .replace(/{blockungsid\s*(:[^}]+)?}/g, blockungsid.toString());
  981. let body = GostBlockungsdaten_1.GostBlockungsdaten.transpilerToJSONPatch(data);
  982. return super.patchJSON(path, body);
  983. }
  984. /**
  985. * Implementierung der POST-Methode rechneGostBlockung für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/{blockungsid : \d+}/rechne/{zeit : \d+}
  986. *
  987. * Berechnet für die angegebene Blockung der gymnasialen Oberstufe Zwischenergebnisse und speichert diese in der DB. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Rechnen einer Blockung besitzt.
  988. *
  989. * Mögliche HTTP-Antworten:
  990. * Code 200: Eine Liste der IDs der Zwischenergebnisse
  991. * - Mime-Type: application/json
  992. * - Rückgabe-Typ: List<Long>
  993. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Blockungsdaten der Gymnasialen Oberstufe auf dem Server zu rechnen.
  994. * Code 404: Keine Blockung mit der angebenen ID gefunden.
  995. *
  996. * @param {string} schema - der Pfad-Parameter schema
  997. * @param {number} blockungsid - der Pfad-Parameter blockungsid
  998. * @param {number} zeit - der Pfad-Parameter zeit
  999. *
  1000. * @returns Eine Liste der IDs der Zwischenergebnisse
  1001. */
  1002. async rechneGostBlockung(schema, blockungsid, zeit) {
  1003. let path = "/db/{schema}/gost/blockungen/{blockungsid : \d+}/rechne/{zeit : \d+}"
  1004. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1005. .replace(/{blockungsid\s*(:[^}]+)?}/g, blockungsid.toString())
  1006. .replace(/{zeit\s*(:[^}]+)?}/g, zeit.toString());
  1007. const result = await super.postJSON(path, null);
  1008. const obj = JSON.parse(result);
  1009. let ret = new Vector_1.Vector();
  1010. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(parseFloat(JSON.parse(text))); });
  1011. return ret;
  1012. }
  1013. /**
  1014. * Implementierung der GET-Methode getGostBlockungKurs für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/kurse/{kursid : \d+}
  1015. *
  1016. * Liest den angegebenen Kurs einer Blockung der gymnasialen Oberstufe aus. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen der Blockungsdaten besitzt.
  1017. *
  1018. * Mögliche HTTP-Antworten:
  1019. * Code 200: Der Kurs der Blockung der gymnasialen Oberstfue für die angegebene ID
  1020. * - Mime-Type: application/json
  1021. * - Rückgabe-Typ: GostBlockungKurs
  1022. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Blockungsdaten der Gymnasialen Oberstufe auszulesen.
  1023. * Code 404: Kein Kurs einer Blockung mit der angebenen ID gefunden.
  1024. *
  1025. * @param {string} schema - der Pfad-Parameter schema
  1026. * @param {number} kursid - der Pfad-Parameter kursid
  1027. *
  1028. * @returns Der Kurs der Blockung der gymnasialen Oberstfue für die angegebene ID
  1029. */
  1030. async getGostBlockungKurs(schema, kursid) {
  1031. let path = "/db/{schema}/gost/blockungen/kurse/{kursid : \d+}"
  1032. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1033. .replace(/{kursid\s*(:[^}]+)?}/g, kursid.toString());
  1034. const result = await super.getJSON(path);
  1035. const text = result;
  1036. return GostBlockungKurs_1.GostBlockungKurs.transpilerFromJSON(text);
  1037. }
  1038. /**
  1039. * Implementierung der PATCH-Methode patchGostBlockungKurs für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/kurse/{kursid : \d+}
  1040. *
  1041. * Passt den angebenene Kurs der Gymnasiale Oberstufe mit der angegebenen ID an.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen von Blockungsdaten besitzt.
  1042. *
  1043. * Mögliche HTTP-Antworten:
  1044. * Code 200: Der Patch wurde erfolgreich in die Blockungsdaten integriert.
  1045. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1046. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Blockungsdaten zu ändern.
  1047. * Code 404: Kein Kurs einer Blockung mit der angebenen ID gefunden.
  1048. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  1049. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1050. *
  1051. * @param {GostBlockungKurs} data - der Request-Body für die HTTP-Methode
  1052. * @param {string} schema - der Pfad-Parameter schema
  1053. * @param {number} kursid - der Pfad-Parameter kursid
  1054. */
  1055. async patchGostBlockungKurs(data, schema, kursid) {
  1056. let path = "/db/{schema}/gost/blockungen/kurse/{kursid : \d+}"
  1057. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1058. .replace(/{kursid\s*(:[^}]+)?}/g, kursid.toString());
  1059. let body = GostBlockungKurs_1.GostBlockungKurs.transpilerToJSONPatch(data);
  1060. return super.patchJSON(path, body);
  1061. }
  1062. /**
  1063. * Implementierung der GET-Methode getGostBlockungRegel für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/regeln/{regelid : \d+}
  1064. *
  1065. * Liest die angegebene Regel einer Blockung der gymnasialen Oberstufe aus. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen der Blockungsdaten besitzt.
  1066. *
  1067. * Mögliche HTTP-Antworten:
  1068. * Code 200: Die Regel der Blockung der gymnasialen Oberstfue für die angegebene ID
  1069. * - Mime-Type: application/json
  1070. * - Rückgabe-Typ: GostBlockungRegel
  1071. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Blockungsdaten der Gymnasialen Oberstufe auszulesen.
  1072. * Code 404: Keine Regel einer Blockung mit der angebenen ID gefunden.
  1073. *
  1074. * @param {string} schema - der Pfad-Parameter schema
  1075. * @param {number} regelid - der Pfad-Parameter regelid
  1076. *
  1077. * @returns Die Regel der Blockung der gymnasialen Oberstfue für die angegebene ID
  1078. */
  1079. async getGostBlockungRegel(schema, regelid) {
  1080. let path = "/db/{schema}/gost/blockungen/regeln/{regelid : \d+}"
  1081. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1082. .replace(/{regelid\s*(:[^}]+)?}/g, regelid.toString());
  1083. const result = await super.getJSON(path);
  1084. const text = result;
  1085. return GostBlockungRegel_1.GostBlockungRegel.transpilerFromJSON(text);
  1086. }
  1087. /**
  1088. * Implementierung der PATCH-Methode patchGostBlockungRegel für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/regeln/{regelid : \d+}
  1089. *
  1090. * Passt die angegebene Regel der Gymnasiale Oberstufe mit der angegebenen ID an.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen von Blockungsdaten besitzt.
  1091. *
  1092. * Mögliche HTTP-Antworten:
  1093. * Code 200: Der Patch wurde erfolgreich in die Blockungsdaten integriert.
  1094. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1095. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Blockungsdaten zu ändern.
  1096. * Code 404: Keine Regel einer Blockung mit der angebenen ID gefunden.
  1097. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  1098. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1099. *
  1100. * @param {GostBlockungRegel} data - der Request-Body für die HTTP-Methode
  1101. * @param {string} schema - der Pfad-Parameter schema
  1102. * @param {number} regelid - der Pfad-Parameter regelid
  1103. */
  1104. async patchGostBlockungRegel(data, schema, regelid) {
  1105. let path = "/db/{schema}/gost/blockungen/regeln/{regelid : \d+}"
  1106. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1107. .replace(/{regelid\s*(:[^}]+)?}/g, regelid.toString());
  1108. let body = GostBlockungRegel_1.GostBlockungRegel.transpilerToJSONPatch(data);
  1109. return super.patchJSON(path, body);
  1110. }
  1111. /**
  1112. * Implementierung der GET-Methode getGostBlockungSchiene für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/schiene/{schienenid : \d+}
  1113. *
  1114. * Liest die angegebene Schiene einer Blockung der gymnasialen Oberstufe aus. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen der Blockungsdaten besitzt.
  1115. *
  1116. * Mögliche HTTP-Antworten:
  1117. * Code 200: Die Schiene der Blockung der gymnasialen Oberstfue für die angegebene ID
  1118. * - Mime-Type: application/json
  1119. * - Rückgabe-Typ: GostBlockungSchiene
  1120. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Blockungsdaten der Gymnasialen Oberstufe auszulesen.
  1121. * Code 404: Keine Schiene einer Blockung mit der angebenen ID gefunden.
  1122. *
  1123. * @param {string} schema - der Pfad-Parameter schema
  1124. * @param {number} schienenid - der Pfad-Parameter schienenid
  1125. *
  1126. * @returns Die Schiene der Blockung der gymnasialen Oberstfue für die angegebene ID
  1127. */
  1128. async getGostBlockungSchiene(schema, schienenid) {
  1129. let path = "/db/{schema}/gost/blockungen/schiene/{schienenid : \d+}"
  1130. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1131. .replace(/{schienenid\s*(:[^}]+)?}/g, schienenid.toString());
  1132. const result = await super.getJSON(path);
  1133. const text = result;
  1134. return GostBlockungSchiene_1.GostBlockungSchiene.transpilerFromJSON(text);
  1135. }
  1136. /**
  1137. * Implementierung der PATCH-Methode patchGostBlockungSchiene für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/blockungen/schiene/{schienenid : \d+}
  1138. *
  1139. * Passt die angegebene Schiene der Gymnasiale Oberstufe mit der angegebenen ID an.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen von Blockungsdaten besitzt.
  1140. *
  1141. * Mögliche HTTP-Antworten:
  1142. * Code 200: Der Patch wurde erfolgreich in die Blockungsdaten integriert.
  1143. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1144. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Blockungsdaten zu ändern.
  1145. * Code 404: Keine Schiene einer Blockung mit der angebenen ID gefunden.
  1146. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  1147. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1148. *
  1149. * @param {GostBlockungSchiene} data - der Request-Body für die HTTP-Methode
  1150. * @param {string} schema - der Pfad-Parameter schema
  1151. * @param {number} schienenid - der Pfad-Parameter schienenid
  1152. */
  1153. async patchGostBlockungSchiene(data, schema, schienenid) {
  1154. let path = "/db/{schema}/gost/blockungen/schiene/{schienenid : \d+}"
  1155. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1156. .replace(/{schienenid\s*(:[^}]+)?}/g, schienenid.toString());
  1157. let body = GostBlockungSchiene_1.GostBlockungSchiene.transpilerToJSONPatch(data);
  1158. return super.patchJSON(path, body);
  1159. }
  1160. /**
  1161. * Implementierung der GET-Methode getGostFach für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/fach/{id : \d+}
  1162. *
  1163. * Liefert die Informationen bezüglich der gymnasialen Oberstufe zu dem Fach mit der angegebenen ID. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Fachinformationen besitzt.
  1164. *
  1165. * Mögliche HTTP-Antworten:
  1166. * Code 200: Die Daten des Faches bezüglich der gymnasialen Oberstufe
  1167. * - Mime-Type: application/json
  1168. * - Rückgabe-Typ: GostFach
  1169. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Fachiformationen der Gymnasialen Oberstufe anzusehen.
  1170. * Code 404: Kein Eintrag für das Fach der gymnasialen Oberstufe mit der angegebenen ID gefunden
  1171. *
  1172. * @param {string} schema - der Pfad-Parameter schema
  1173. * @param {number} id - der Pfad-Parameter id
  1174. *
  1175. * @returns Die Daten des Faches bezüglich der gymnasialen Oberstufe
  1176. */
  1177. async getGostFach(schema, id) {
  1178. let path = "/db/{schema}/gost/fach/{id : \d+}"
  1179. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1180. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1181. const result = await super.getJSON(path);
  1182. const text = result;
  1183. return GostFach_1.GostFach.transpilerFromJSON(text);
  1184. }
  1185. /**
  1186. * Implementierung der PATCH-Methode patchGostFach für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/fach/{id : \d+}
  1187. *
  1188. * Passt die Daten eines Faches in Bezug auf die Gymnasiale Oberstufe an. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen der Fachinformationen besitzt.
  1189. *
  1190. * Mögliche HTTP-Antworten:
  1191. * Code 200: Der Patch wurde erfolgreich in die Fachinformationen integriert.
  1192. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1193. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fachdaten zu ändern.
  1194. * Code 404: Kein Fach-Eintrag mit der angegebenen ID gefunden
  1195. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  1196. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1197. *
  1198. * @param {GostFach} data - der Request-Body für die HTTP-Methode
  1199. * @param {string} schema - der Pfad-Parameter schema
  1200. * @param {number} id - der Pfad-Parameter id
  1201. */
  1202. async patchGostFach(data, schema, id) {
  1203. let path = "/db/{schema}/gost/fach/{id : \d+}"
  1204. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1205. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1206. let body = GostFach_1.GostFach.transpilerToJSONPatch(data);
  1207. return super.patchJSON(path, body);
  1208. }
  1209. /**
  1210. * Implementierung der GET-Methode getGostFaecher für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/faecher
  1211. *
  1212. * Erstellt eine Liste aller in der Datenbank vorhanden Fächer der gymnasialen Oberstufe. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Fächerdaten besitzt.
  1213. *
  1214. * Mögliche HTTP-Antworten:
  1215. * Code 200: Eine Liste von Fächer-Listen-Einträgen
  1216. * - Mime-Type: application/json
  1217. * - Rückgabe-Typ: List<GostFach>
  1218. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fächerdaten anzusehen.
  1219. * Code 404: Keine Fächer-Einträge gefunden oder keine gymnasiale Oberstufe bei der Schulform vorhanden
  1220. *
  1221. * @param {string} schema - der Pfad-Parameter schema
  1222. *
  1223. * @returns Eine Liste von Fächer-Listen-Einträgen
  1224. */
  1225. async getGostFaecher(schema) {
  1226. let path = "/db/{schema}/gost/faecher"
  1227. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1228. const result = await super.getJSON(path);
  1229. const obj = JSON.parse(result);
  1230. let ret = new Vector_1.Vector();
  1231. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(GostFach_1.GostFach.transpilerFromJSON(text)); });
  1232. return ret;
  1233. }
  1234. /**
  1235. * Implementierung der GET-Methode getGostSchuelerAbiturdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/schueler/{id : \d+}/abiturdaten
  1236. *
  1237. * Liest die Abiturdaten aus den Abiturtabellen des Schülers mit der angegebene ID und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Leistungsdaten besitzt.
  1238. *
  1239. * Mögliche HTTP-Antworten:
  1240. * Code 200: Die Abiturdaten des Schülers
  1241. * - Mime-Type: application/json
  1242. * - Rückgabe-Typ: Abiturdaten
  1243. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Leistungsdaten anzusehen.
  1244. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  1245. *
  1246. * @param {string} schema - der Pfad-Parameter schema
  1247. * @param {number} id - der Pfad-Parameter id
  1248. *
  1249. * @returns Die Abiturdaten des Schülers
  1250. */
  1251. async getGostSchuelerAbiturdaten(schema, id) {
  1252. let path = "/db/{schema}/gost/schueler/{id : \d+}/abiturdaten"
  1253. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1254. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1255. const result = await super.getJSON(path);
  1256. const text = result;
  1257. return Abiturdaten_1.Abiturdaten.transpilerFromJSON(text);
  1258. }
  1259. /**
  1260. * Implementierung der GET-Methode getGostSchuelerAbiturdatenAusLeistungsdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/schueler/{id : \d+}/abiturdatenAusLeistungsdaten
  1261. *
  1262. * Liest die Abiturdaten aus den Leistungsdaten der gymnasiale Oberstufe des Schülers mit der angegebene ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Leistungsdaten besitzt.
  1263. *
  1264. * Mögliche HTTP-Antworten:
  1265. * Code 200: Die Abiturdaten des Schülers
  1266. * - Mime-Type: application/json
  1267. * - Rückgabe-Typ: Abiturdaten
  1268. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Leistungsdaten anzusehen.
  1269. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  1270. *
  1271. * @param {string} schema - der Pfad-Parameter schema
  1272. * @param {number} id - der Pfad-Parameter id
  1273. *
  1274. * @returns Die Abiturdaten des Schülers
  1275. */
  1276. async getGostSchuelerAbiturdatenAusLeistungsdaten(schema, id) {
  1277. let path = "/db/{schema}/gost/schueler/{id : \d+}/abiturdatenAusLeistungsdaten"
  1278. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1279. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1280. const result = await super.getJSON(path);
  1281. const text = result;
  1282. return Abiturdaten_1.Abiturdaten.transpilerFromJSON(text);
  1283. }
  1284. /**
  1285. * Implementierung der GET-Methode getGostSchuelerLaufbahnplanung für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/schueler/{id : \d+}/laufbahnplanung
  1286. *
  1287. * Liest die Laufbahnplanungsdaten für die gymnasiale Oberstufe zu dem Schüler mit der angegebenen ID aus der Datenbank aus und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen der Laufbahnplanungsdaten besitzt.
  1288. *
  1289. * Mögliche HTTP-Antworten:
  1290. * Code 200: Die Laufbahnplanungsdaten der gymnasialen Oberstfue des angegebenen Schülers
  1291. * - Mime-Type: application/json
  1292. * - Rückgabe-Typ: Abiturdaten
  1293. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Laufbahnplanungsdaten der Gymnasialen Oberstufe eines Schülers auszulesen.
  1294. * Code 404: Kein Eintrag für einen Schüler mit Laufbahnplanungsdaten der gymnasialen Oberstufe für die angegebene ID gefunden
  1295. *
  1296. * @param {string} schema - der Pfad-Parameter schema
  1297. * @param {number} id - der Pfad-Parameter id
  1298. *
  1299. * @returns Die Laufbahnplanungsdaten der gymnasialen Oberstfue des angegebenen Schülers
  1300. */
  1301. async getGostSchuelerLaufbahnplanung(schema, id) {
  1302. let path = "/db/{schema}/gost/schueler/{id : \d+}/laufbahnplanung"
  1303. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1304. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1305. const result = await super.getJSON(path);
  1306. const text = result;
  1307. return Abiturdaten_1.Abiturdaten.transpilerFromJSON(text);
  1308. }
  1309. /**
  1310. * Implementierung der GET-Methode getGostSchuelerLeistungsdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/schueler/{id : \d+}/leistungsdaten
  1311. *
  1312. * Liest die Leistungsdaten in Bezug auf die gymnasiale Oberstufe des Schülers mit der angegebene ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Leistungsdaten besitzt.
  1313. *
  1314. * Mögliche HTTP-Antworten:
  1315. * Code 200: Die Leistungsdaten des Schülers
  1316. * - Mime-Type: application/json
  1317. * - Rückgabe-Typ: GostLeistungen
  1318. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Leistungsdaten anzusehen.
  1319. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  1320. *
  1321. * @param {string} schema - der Pfad-Parameter schema
  1322. * @param {number} id - der Pfad-Parameter id
  1323. *
  1324. * @returns Die Leistungsdaten des Schülers
  1325. */
  1326. async getGostSchuelerLeistungsdaten(schema, id) {
  1327. let path = "/db/{schema}/gost/schueler/{id : \d+}/leistungsdaten"
  1328. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1329. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1330. const result = await super.getJSON(path);
  1331. const text = result;
  1332. return GostLeistungen_1.GostLeistungen.transpilerFromJSON(text);
  1333. }
  1334. /**
  1335. * Implementierung der GET-Methode getGostSchuelerPDFWahlbogen für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/schueler/{id : \d+}/wahlbogen
  1336. *
  1337. * Erstellt den PDF-Wahlbogen für die gymnasiale Oberstufe zu dem Schüler mit der angegebenen ID. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Erstellen des Wahlbogens besitzt.
  1338. *
  1339. * Mögliche HTTP-Antworten:
  1340. * Code 200: Der PDF-Wahlbogen für die gymnasialen Oberstufe des angegebenen Schülers
  1341. * - Mime-Type: application/pdf
  1342. * - Rückgabe-Typ: Blob
  1343. * Code 403: Der SVWS-Benutzer hat keine Rechte, um den Wahlbogen für die Gymnasialen Oberstufe eines Schülers zu erstellen.
  1344. * Code 404: Kein Eintrag für einen Schüler mit Laufbahnplanungsdaten der gymnasialen Oberstufe für die angegebene ID gefunden
  1345. *
  1346. * @param {string} schema - der Pfad-Parameter schema
  1347. * @param {number} id - der Pfad-Parameter id
  1348. *
  1349. * @returns Der PDF-Wahlbogen für die gymnasialen Oberstufe des angegebenen Schülers
  1350. */
  1351. async getGostSchuelerPDFWahlbogen(schema, id) {
  1352. let path = "/db/{schema}/gost/schueler/{id : \d+}/wahlbogen"
  1353. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1354. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1355. const data = await super.getPDF(path);
  1356. return data;
  1357. }
  1358. /**
  1359. * Implementierung der GET-Methode getGostSchuelerFachwahl für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/schueler/{schuelerid : \d+}/fachwahl/{fachid : \d+}
  1360. *
  1361. * Liest für die gymnasiale Oberstufe die Fachwahlen zu einem Fach von dem angegebenen Schüler aus. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Auslesen der Fachwahlen besitzt.
  1362. *
  1363. * Mögliche HTTP-Antworten:
  1364. * Code 200: Die Fachwahlen der gymnasialen Oberstfue für das angegebene Fach und den angegebenen Schüler
  1365. * - Mime-Type: application/json
  1366. * - Rückgabe-Typ: Abiturdaten
  1367. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Fachwahlen der Gymnasialen Oberstufe eines Schülers auszulesen.
  1368. * Code 404: Kein Eintrag für einen Schüler mit Laufbahnplanungsdaten der gymnasialen Oberstufe für die angegebene ID gefunden
  1369. *
  1370. * @param {string} schema - der Pfad-Parameter schema
  1371. * @param {number} schuelerid - der Pfad-Parameter schuelerid
  1372. * @param {number} fachid - der Pfad-Parameter fachid
  1373. *
  1374. * @returns Die Fachwahlen der gymnasialen Oberstfue für das angegebene Fach und den angegebenen Schüler
  1375. */
  1376. async getGostSchuelerFachwahl(schema, schuelerid, fachid) {
  1377. let path = "/db/{schema}/gost/schueler/{schuelerid : \d+}/fachwahl/{fachid : \d+}"
  1378. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1379. .replace(/{schuelerid\s*(:[^}]+)?}/g, schuelerid.toString())
  1380. .replace(/{fachid\s*(:[^}]+)?}/g, fachid.toString());
  1381. const result = await super.getJSON(path);
  1382. const text = result;
  1383. return Abiturdaten_1.Abiturdaten.transpilerFromJSON(text);
  1384. }
  1385. /**
  1386. * Implementierung der PATCH-Methode patchGostSchuelerFachwahl für den Zugriff auf die URL https://{hostname}/db/{schema}/gost/schueler/{schuelerid : \d+}/fachwahl/{fachid : \d+}
  1387. *
  1388. * Passt die Fachwahl eines Schüler in Bezug auf ein Fach der Gymnasiale Oberstufe an. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Anpassen der Fachwahlen besitzt.
  1389. *
  1390. * Mögliche HTTP-Antworten:
  1391. * Code 200: Der Patch wurde erfolgreich in die Fachwahlen integriert.
  1392. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1393. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Fachwahlen zu ändern.
  1394. * Code 404: Kein Schüler- oder Fach-Eintrag mit der angegebenen ID gefunden
  1395. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde
  1396. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1397. *
  1398. * @param {GostSchuelerFachwahl} data - der Request-Body für die HTTP-Methode
  1399. * @param {string} schema - der Pfad-Parameter schema
  1400. * @param {number} schuelerid - der Pfad-Parameter schuelerid
  1401. * @param {number} fachid - der Pfad-Parameter fachid
  1402. */
  1403. async patchGostSchuelerFachwahl(data, schema, schuelerid, fachid) {
  1404. let path = "/db/{schema}/gost/schueler/{schuelerid : \d+}/fachwahl/{fachid : \d+}"
  1405. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1406. .replace(/{schuelerid\s*(:[^}]+)?}/g, schuelerid.toString())
  1407. .replace(/{fachid\s*(:[^}]+)?}/g, fachid.toString());
  1408. let body = GostSchuelerFachwahl_1.GostSchuelerFachwahl.transpilerToJSONPatch(data);
  1409. return super.patchJSON(path, body);
  1410. }
  1411. /**
  1412. * Implementierung der GET-Methode getJahrgaenge für den Zugriff auf die URL https://{hostname}/db/{schema}/jahrgaenge/
  1413. *
  1414. * Erstellt eine Liste aller in der Datenbank vorhanden Jahrgänge unter Angabe der ID, des Kürzels, des verwendeten Statistik-Kürzels, der Bezeichnung des Jahrgangs, die Schulgliederung zu der der Jahrgang gehört, die ID eines Folgejahrgangs, sofern definiert, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Jahrgangsdaten besitzt.
  1415. *
  1416. * Mögliche HTTP-Antworten:
  1417. * Code 200: Eine Liste von Jahrgangs-Listen-Einträgen
  1418. * - Mime-Type: application/json
  1419. * - Rückgabe-Typ: List<JahrgangsListeEintrag>
  1420. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Jahrgangsdaten anzusehen.
  1421. * Code 404: Keine Jahrgangs-Einträge gefunden
  1422. *
  1423. * @param {string} schema - der Pfad-Parameter schema
  1424. *
  1425. * @returns Eine Liste von Jahrgangs-Listen-Einträgen
  1426. */
  1427. async getJahrgaenge(schema) {
  1428. let path = "/db/{schema}/jahrgaenge/"
  1429. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1430. const result = await super.getJSON(path);
  1431. const obj = JSON.parse(result);
  1432. let ret = new Vector_1.Vector();
  1433. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(JahrgangsListeEintrag_1.JahrgangsListeEintrag.transpilerFromJSON(text)); });
  1434. return ret;
  1435. }
  1436. /**
  1437. * Implementierung der GET-Methode getJahrgang für den Zugriff auf die URL https://{hostname}/db/{schema}/jahrgaenge/{id : \d+}
  1438. *
  1439. * Liest die Daten des Jahrgangs zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Jahrgangsdaten besitzt.
  1440. *
  1441. * Mögliche HTTP-Antworten:
  1442. * Code 200: Die Daten des Jahrgangs
  1443. * - Mime-Type: application/json
  1444. * - Rückgabe-Typ: JahrgangsDaten
  1445. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Jahrgangsdaten anzusehen.
  1446. * Code 404: Kein Jahrgangs-Eintrag mit der angegebenen ID gefunden
  1447. *
  1448. * @param {string} schema - der Pfad-Parameter schema
  1449. * @param {number} id - der Pfad-Parameter id
  1450. *
  1451. * @returns Die Daten des Jahrgangs
  1452. */
  1453. async getJahrgang(schema, id) {
  1454. let path = "/db/{schema}/jahrgaenge/{id : \d+}"
  1455. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1456. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1457. const result = await super.getJSON(path);
  1458. const text = result;
  1459. return JahrgangsDaten_1.JahrgangsDaten.transpilerFromJSON(text);
  1460. }
  1461. /**
  1462. * Implementierung der GET-Methode getKatalogBeschaeftigungsart für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/beschaeftigungsart
  1463. *
  1464. * Erstellt eine Liste aller in dem Katalog vorhandenen Beschäftigungsarten unter Angabe der ID, eines Kürzels und der textuellen Beschreibung sowie der Information, ob der Eintrag in der Anwendung sichtbar bzw. änderbar sein soll, undgibt diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1465. *
  1466. * Mögliche HTTP-Antworten:
  1467. * Code 200: Eine Liste von Katalog-Einträgen zu den Beschäftigungsarten.
  1468. * - Mime-Type: application/json
  1469. * - Rückgabe-Typ: List<KatalogEintrag>
  1470. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1471. * Code 404: Keine Katalog-Einträge gefunden
  1472. *
  1473. * @param {string} schema - der Pfad-Parameter schema
  1474. *
  1475. * @returns Eine Liste von Katalog-Einträgen zu den Beschäftigungsarten.
  1476. */
  1477. async getKatalogBeschaeftigungsart(schema) {
  1478. let path = "/db/{schema}/kataloge/beschaeftigungsart"
  1479. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1480. const result = await super.getJSON(path);
  1481. const obj = JSON.parse(result);
  1482. let ret = new Vector_1.Vector();
  1483. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  1484. return ret;
  1485. }
  1486. /**
  1487. * Implementierung der GET-Methode getKatalogBeschaeftigungsartmitID für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/beschaeftigungsart/{id : \d+}
  1488. *
  1489. * Liest die Daten der Beschäftigunsart zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Beschäftigungsartbesitzt.
  1490. *
  1491. * Mögliche HTTP-Antworten:
  1492. * Code 200: Katalog-Eintrag zu den Beschäftigungsarten.
  1493. * - Mime-Type: application/json
  1494. * - Rückgabe-Typ: List<KatalogEintrag>
  1495. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1496. * Code 404: Keine Katalog-Einträge gefunden
  1497. *
  1498. * @param {string} schema - der Pfad-Parameter schema
  1499. * @param {number} id - der Pfad-Parameter id
  1500. *
  1501. * @returns Katalog-Eintrag zu den Beschäftigungsarten.
  1502. */
  1503. async getKatalogBeschaeftigungsartmitID(schema, id) {
  1504. let path = "/db/{schema}/kataloge/beschaeftigungsart/{id : \d+}"
  1505. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1506. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1507. const result = await super.getJSON(path);
  1508. const obj = JSON.parse(result);
  1509. let ret = new Vector_1.Vector();
  1510. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  1511. return ret;
  1512. }
  1513. /**
  1514. * Implementierung der PATCH-Methode patchBeschaeftigungsart für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/beschaeftigungsart/{id : \d+}
  1515. *
  1516. * Passt die Beschäftigungsart-Stammdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern der Daten der Beschäftigungsart besitzt.
  1517. *
  1518. * Mögliche HTTP-Antworten:
  1519. * Code 200: Der Patch wurde erfolgreich in die Beschäftigungsart-Daten integriert.
  1520. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1521. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Beschäftigungsart-Daten zu ändern.
  1522. * Code 404: Keine Beschäftigungsart mit der angegebenen ID gefunden
  1523. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  1524. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1525. *
  1526. * @param {KatalogEintrag} data - der Request-Body für die HTTP-Methode
  1527. * @param {string} schema - der Pfad-Parameter schema
  1528. * @param {number} id - der Pfad-Parameter id
  1529. */
  1530. async patchBeschaeftigungsart(data, schema, id) {
  1531. let path = "/db/{schema}/kataloge/beschaeftigungsart/{id : \d+}"
  1532. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1533. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1534. let body = KatalogEintrag_1.KatalogEintrag.transpilerToJSONPatch(data);
  1535. return super.patchJSON(path, body);
  1536. }
  1537. /**
  1538. * Implementierung der GET-Methode getKatalogBetriebsartmitID für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/beschaeftigungsart/{id : \d+}
  1539. *
  1540. * Liest die Daten der Betriebsart zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Betriebsartenbesitzt.
  1541. *
  1542. * Mögliche HTTP-Antworten:
  1543. * Code 200: Katalog-Eintrag zu den Betriebsarten.
  1544. * - Mime-Type: application/json
  1545. * - Rückgabe-Typ: List<KatalogEintrag>
  1546. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1547. * Code 404: Keine Katalog-Einträge gefunden
  1548. *
  1549. * @param {string} schema - der Pfad-Parameter schema
  1550. * @param {number} id - der Pfad-Parameter id
  1551. *
  1552. * @returns Katalog-Eintrag zu den Betriebsarten.
  1553. */
  1554. async getKatalogBetriebsartmitID(schema, id) {
  1555. let path = "/db/{schema}/kataloge/beschaeftigungsart/{id : \d+}"
  1556. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1557. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1558. const result = await super.getJSON(path);
  1559. const obj = JSON.parse(result);
  1560. let ret = new Vector_1.Vector();
  1561. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  1562. return ret;
  1563. }
  1564. /**
  1565. * Implementierung der GET-Methode getKatalogBetriebsart für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/betriebsart
  1566. *
  1567. * Erstellt eine Liste aller in dem Katalog vorhandenen Betriebsarten unter Angabe der ID, eines Kürzels und der textuellen Beschreibung sowie der Information, ob der Eintrag in der Anwendung sichtbar bzw. änderbar sein soll, undgibt diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1568. *
  1569. * Mögliche HTTP-Antworten:
  1570. * Code 200: Eine Liste von Katalog-Einträgen zu den Betriebsarten.
  1571. * - Mime-Type: application/json
  1572. * - Rückgabe-Typ: List<KatalogEintrag>
  1573. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1574. * Code 404: Keine Katalog-Einträge gefunden
  1575. *
  1576. * @param {string} schema - der Pfad-Parameter schema
  1577. *
  1578. * @returns Eine Liste von Katalog-Einträgen zu den Betriebsarten.
  1579. */
  1580. async getKatalogBetriebsart(schema) {
  1581. let path = "/db/{schema}/kataloge/betriebsart"
  1582. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1583. const result = await super.getJSON(path);
  1584. const obj = JSON.parse(result);
  1585. let ret = new Vector_1.Vector();
  1586. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  1587. return ret;
  1588. }
  1589. /**
  1590. * Implementierung der PATCH-Methode patchBetriebsart für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/betriebsart/{id : \d+}
  1591. *
  1592. * Passt die Beschäftigungsart-Stammdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern der Daten der Betriebssart besitzt.
  1593. *
  1594. * Mögliche HTTP-Antworten:
  1595. * Code 200: Der Patch wurde erfolgreich in die Beschäftigungsart-Daten integriert.
  1596. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1597. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Beschäftigungsart-Daten zu ändern.
  1598. * Code 404: Keine Beschäftigungsart mit der angegebenen ID gefunden
  1599. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  1600. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1601. *
  1602. * @param {KatalogEintrag} data - der Request-Body für die HTTP-Methode
  1603. * @param {string} schema - der Pfad-Parameter schema
  1604. * @param {number} id - der Pfad-Parameter id
  1605. */
  1606. async patchBetriebsart(data, schema, id) {
  1607. let path = "/db/{schema}/kataloge/betriebsart/{id : \d+}"
  1608. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1609. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1610. let body = KatalogEintrag_1.KatalogEintrag.transpilerToJSONPatch(data);
  1611. return super.patchJSON(path, body);
  1612. }
  1613. /**
  1614. * Implementierung der GET-Methode getKatalogHaltestellen für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/haltestellen
  1615. *
  1616. * Erstellt eine Liste aller in dem Katalog vorhanden Haltestellen unter Angabe der ID, eines Kürzels und der textuellen Beschreibung sowie der Information, ob der Eintrag in der Anwendung sichtbar bzw. änderbar sein soll, undgibt diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1617. *
  1618. * Mögliche HTTP-Antworten:
  1619. * Code 200: Eine Liste von Katalog-Einträgen zu den Haltestellen.
  1620. * - Mime-Type: application/json
  1621. * - Rückgabe-Typ: List<KatalogEintrag>
  1622. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1623. * Code 404: Keine Katalog-Einträge gefunden
  1624. *
  1625. * @param {string} schema - der Pfad-Parameter schema
  1626. *
  1627. * @returns Eine Liste von Katalog-Einträgen zu den Haltestellen.
  1628. */
  1629. async getKatalogHaltestellen(schema) {
  1630. let path = "/db/{schema}/kataloge/haltestellen"
  1631. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1632. const result = await super.getJSON(path);
  1633. const obj = JSON.parse(result);
  1634. let ret = new Vector_1.Vector();
  1635. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  1636. return ret;
  1637. }
  1638. /**
  1639. * Implementierung der GET-Methode getKatalogNationaelitaeten für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/nationalitaeten
  1640. *
  1641. * Erstellt eine Liste aller in dem Katalog vorhanden Nationalitäten unter Angabe der ID, des Landes, der Staatsangehörigkeit, einem Statistik-Kürzel, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1642. *
  1643. * Mögliche HTTP-Antworten:
  1644. * Code 200: Eine Liste von Nationalitäten-Katalog-Einträgen
  1645. * - Mime-Type: application/json
  1646. * - Rückgabe-Typ: List<NationalitaetKatalogEintrag>
  1647. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1648. * Code 404: Keine Nationalitäten-Katalog-Einträge gefunden
  1649. *
  1650. * @param {string} schema - der Pfad-Parameter schema
  1651. *
  1652. * @returns Eine Liste von Nationalitäten-Katalog-Einträgen
  1653. */
  1654. async getKatalogNationaelitaeten(schema) {
  1655. let path = "/db/{schema}/kataloge/nationalitaeten"
  1656. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1657. const result = await super.getJSON(path);
  1658. const obj = JSON.parse(result);
  1659. let ret = new Vector_1.Vector();
  1660. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(NationalitaetKatalogEintrag_1.NationalitaetKatalogEintrag.transpilerFromJSON(text)); });
  1661. return ret;
  1662. }
  1663. /**
  1664. * Implementierung der GET-Methode getKatalogOrte für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/orte
  1665. *
  1666. * Erstellt eine Liste aller in dem Katalog vorhanden Orte unter Angabe der ID, der PLZ, des Ortes, ggf. des Kreises, dem Bundesland, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1667. *
  1668. * Mögliche HTTP-Antworten:
  1669. * Code 200: Eine Liste von Orts-Katalog-Einträgen
  1670. * - Mime-Type: application/json
  1671. * - Rückgabe-Typ: List<OrtKatalogEintrag>
  1672. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1673. * Code 404: Keine Ort-Katalog-Einträge gefunden
  1674. *
  1675. * @param {string} schema - der Pfad-Parameter schema
  1676. *
  1677. * @returns Eine Liste von Orts-Katalog-Einträgen
  1678. */
  1679. async getKatalogOrte(schema) {
  1680. let path = "/db/{schema}/kataloge/orte"
  1681. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1682. const result = await super.getJSON(path);
  1683. const obj = JSON.parse(result);
  1684. let ret = new Vector_1.Vector();
  1685. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(OrtKatalogEintrag_1.OrtKatalogEintrag.transpilerFromJSON(text)); });
  1686. return ret;
  1687. }
  1688. /**
  1689. * Implementierung der GET-Methode getKatalogOrtsteile für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/ortsteile
  1690. *
  1691. * Erstellt eine Liste aller in dem Katalog vorhanden Ortsteile unter Angabe der ID, der zugehörigenOrt-ID, dem Namen des Ortsteils, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1692. *
  1693. * Mögliche HTTP-Antworten:
  1694. * Code 200: Eine Liste von Ortsteil-Katalog-Einträgen
  1695. * - Mime-Type: application/json
  1696. * - Rückgabe-Typ: List<OrtsteilKatalogEintrag>
  1697. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1698. * Code 404: Keine Ortsteil-Katalog-Einträge gefunden
  1699. *
  1700. * @param {string} schema - der Pfad-Parameter schema
  1701. *
  1702. * @returns Eine Liste von Ortsteil-Katalog-Einträgen
  1703. */
  1704. async getKatalogOrtsteile(schema) {
  1705. let path = "/db/{schema}/kataloge/ortsteile"
  1706. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1707. const result = await super.getJSON(path);
  1708. const obj = JSON.parse(result);
  1709. let ret = new Vector_1.Vector();
  1710. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(OrtsteilKatalogEintrag_1.OrtsteilKatalogEintrag.transpilerFromJSON(text)); });
  1711. return ret;
  1712. }
  1713. /**
  1714. * Implementierung der GET-Methode getKatalogReligionen für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/religionen
  1715. *
  1716. * Erstellt eine Liste aller in dem Katalog vorhanden Religionen unter Angabe der ID, der Bezeichnung sowie der Bezeichnung, welche auf dem Zeugnis erscheint, einem Statistik-Kürzel, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1717. *
  1718. * Mögliche HTTP-Antworten:
  1719. * Code 200: Eine Liste von Religion-Katalog-Einträgen
  1720. * - Mime-Type: application/json
  1721. * - Rückgabe-Typ: List<ReligionKatalogEintrag>
  1722. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1723. * Code 404: Keine Religion-Katalog-Einträge gefunden
  1724. *
  1725. * @param {string} schema - der Pfad-Parameter schema
  1726. *
  1727. * @returns Eine Liste von Religion-Katalog-Einträgen
  1728. */
  1729. async getKatalogReligionen(schema) {
  1730. let path = "/db/{schema}/kataloge/religionen"
  1731. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1732. const result = await super.getJSON(path);
  1733. const obj = JSON.parse(result);
  1734. let ret = new Vector_1.Vector();
  1735. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(ReligionKatalogEintrag_1.ReligionKatalogEintrag.transpilerFromJSON(text)); });
  1736. return ret;
  1737. }
  1738. /**
  1739. * Implementierung der GET-Methode getKatalogStrassen für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/strassen
  1740. *
  1741. * Erstellt eine Liste aller in dem Katalog vorhandenen Strassen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1742. *
  1743. * Mögliche HTTP-Antworten:
  1744. * Code 200: Eine Liste von Straßen-Katalog-Einträgen
  1745. * - Mime-Type: application/json
  1746. * - Rückgabe-Typ: List<KatalogEintragStrassen>
  1747. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1748. * Code 404: Keine Straßen-Katalog-Einträge gefunden
  1749. *
  1750. * @param {string} schema - der Pfad-Parameter schema
  1751. *
  1752. * @returns Eine Liste von Straßen-Katalog-Einträgen
  1753. */
  1754. async getKatalogStrassen(schema) {
  1755. let path = "/db/{schema}/kataloge/strassen"
  1756. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1757. const result = await super.getJSON(path);
  1758. const obj = JSON.parse(result);
  1759. let ret = new Vector_1.Vector();
  1760. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintragStrassen_1.KatalogEintragStrassen.transpilerFromJSON(text)); });
  1761. return ret;
  1762. }
  1763. /**
  1764. * Implementierung der GET-Methode getKatalogVerkehrssprachen für den Zugriff auf die URL https://{hostname}/db/{schema}/kataloge/verkehrsprachen
  1765. *
  1766. * Erstellt eine Liste aller in dem Katalog vorhanden Verkehrssprachen unter Angabe der ID, eines Kürzels und der textuellen Beschreibung sowie der Information, ob der Eintrag in der Anwendung sichtbar bzw. änderbar sein soll, undgibt diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  1767. *
  1768. * Mögliche HTTP-Antworten:
  1769. * Code 200: Eine Liste von Katalog-Einträgen zur Verkehrssprache.
  1770. * - Mime-Type: application/json
  1771. * - Rückgabe-Typ: List<KatalogEintrag>
  1772. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  1773. * Code 404: Keine Katalog-Einträge gefunden
  1774. *
  1775. * @param {string} schema - der Pfad-Parameter schema
  1776. *
  1777. * @returns Eine Liste von Katalog-Einträgen zur Verkehrssprache.
  1778. */
  1779. async getKatalogVerkehrssprachen(schema) {
  1780. let path = "/db/{schema}/kataloge/verkehrsprachen"
  1781. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1782. const result = await super.getJSON(path);
  1783. const obj = JSON.parse(result);
  1784. let ret = new Vector_1.Vector();
  1785. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  1786. return ret;
  1787. }
  1788. /**
  1789. * Implementierung der GET-Methode getKlasse für den Zugriff auf die URL https://{hostname}/db/{schema}/klassen/{id : \d+}
  1790. *
  1791. * Liest die Daten der Klasse zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Klassendaten besitzt.
  1792. *
  1793. * Mögliche HTTP-Antworten:
  1794. * Code 200: Die Daten der Klasse
  1795. * - Mime-Type: application/json
  1796. * - Rückgabe-Typ: KlassenDaten
  1797. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Klassendaten anzusehen.
  1798. * Code 404: Kein Klassen-Eintrag mit der angegebenen ID gefunden
  1799. *
  1800. * @param {string} schema - der Pfad-Parameter schema
  1801. * @param {number} id - der Pfad-Parameter id
  1802. *
  1803. * @returns Die Daten der Klasse
  1804. */
  1805. async getKlasse(schema, id) {
  1806. let path = "/db/{schema}/klassen/{id : \d+}"
  1807. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1808. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1809. const result = await super.getJSON(path);
  1810. const text = result;
  1811. return KlassenDaten_1.KlassenDaten.transpilerFromJSON(text);
  1812. }
  1813. /**
  1814. * Implementierung der GET-Methode getKlassenFuerAbschnitt für den Zugriff auf die URL https://{hostname}/db/{schema}/klassen/abschnitt/{abschnitt : \d+}
  1815. *
  1816. * Erstellt eine Liste aller in der Datenbank vorhanden Klassen unter Angabe der ID, des Kürzels, der Parallelität, der Kürzel des Klassenlehrers und des zweiten Klassenlehrers, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Klassendaten besitzt.
  1817. *
  1818. * Mögliche HTTP-Antworten:
  1819. * Code 200: Eine Liste von Klassen-Listen-Einträgen
  1820. * - Mime-Type: application/json
  1821. * - Rückgabe-Typ: List<KlassenListeEintrag>
  1822. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Klassendaten anzusehen.
  1823. * Code 404: Keine Klassen-Einträge gefunden
  1824. *
  1825. * @param {string} schema - der Pfad-Parameter schema
  1826. * @param {number} abschnitt - der Pfad-Parameter abschnitt
  1827. *
  1828. * @returns Eine Liste von Klassen-Listen-Einträgen
  1829. */
  1830. async getKlassenFuerAbschnitt(schema, abschnitt) {
  1831. let path = "/db/{schema}/klassen/abschnitt/{abschnitt : \d+}"
  1832. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1833. .replace(/{abschnitt\s*(:[^}]+)?}/g, abschnitt.toString());
  1834. const result = await super.getJSON(path);
  1835. const obj = JSON.parse(result);
  1836. let ret = new Vector_1.Vector();
  1837. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KlassenListeEintrag_1.KlassenListeEintrag.transpilerFromJSON(text)); });
  1838. return ret;
  1839. }
  1840. /**
  1841. * Implementierung der GET-Methode getKurse für den Zugriff auf die URL https://{hostname}/db/{schema}/kurse/
  1842. *
  1843. * Erstellt eine Liste aller in der Datenbank vorhanden Kurse unter Angabe der ID, des Kürzels, der Parallelität, der Kürzel des Klassenlehrers und des zweiten Klassenlehrers, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Klassendaten besitzt.
  1844. *
  1845. * Mögliche HTTP-Antworten:
  1846. * Code 200: Eine Liste von Kurs-Listen-Einträgen
  1847. * - Mime-Type: application/json
  1848. * - Rückgabe-Typ: List<KursListeEintrag>
  1849. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Kursdaten anzusehen.
  1850. * Code 404: Keine Kurs-Einträge gefunden
  1851. *
  1852. * @param {string} schema - der Pfad-Parameter schema
  1853. *
  1854. * @returns Eine Liste von Kurs-Listen-Einträgen
  1855. */
  1856. async getKurse(schema) {
  1857. let path = "/db/{schema}/kurse/"
  1858. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1859. const result = await super.getJSON(path);
  1860. const obj = JSON.parse(result);
  1861. let ret = new Vector_1.Vector();
  1862. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KursListeEintrag_1.KursListeEintrag.transpilerFromJSON(text)); });
  1863. return ret;
  1864. }
  1865. /**
  1866. * Implementierung der GET-Methode getKurs für den Zugriff auf die URL https://{hostname}/db/{schema}/kurse/{id : \d+}
  1867. *
  1868. * Liest die Daten des Kurses zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Kursdaten besitzt.
  1869. *
  1870. * Mögliche HTTP-Antworten:
  1871. * Code 200: Die Daten des Kurses
  1872. * - Mime-Type: application/json
  1873. * - Rückgabe-Typ: KursDaten
  1874. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Kursdaten anzusehen.
  1875. * Code 404: Kein Kurs-Eintrag mit der angegebenen ID gefunden
  1876. *
  1877. * @param {string} schema - der Pfad-Parameter schema
  1878. * @param {number} id - der Pfad-Parameter id
  1879. *
  1880. * @returns Die Daten des Kurses
  1881. */
  1882. async getKurs(schema, id) {
  1883. let path = "/db/{schema}/kurse/{id : \d+}"
  1884. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1885. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1886. const result = await super.getJSON(path);
  1887. const text = result;
  1888. return KursDaten_1.KursDaten.transpilerFromJSON(text);
  1889. }
  1890. /**
  1891. * Implementierung der GET-Methode getKurseFuerAbschnitt für den Zugriff auf die URL https://{hostname}/db/{schema}/kurse/abschnitt/{abschnitt : \d+}
  1892. *
  1893. * Erstellt eine Liste aller in der Datenbank vorhanden Kurse eines Schuljahresabschnittes unter Angabe der ID, des Kürzels, der Parallelität, der Kürzel des Klassenlehrers und des zweiten Klassenlehrers, einer Sortierreihenfolge und ob sie in der Anwendung sichtbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Klassendaten besitzt.
  1894. *
  1895. * Mögliche HTTP-Antworten:
  1896. * Code 200: Eine Liste von Kurs-Listen-Einträgen
  1897. * - Mime-Type: application/json
  1898. * - Rückgabe-Typ: List<KursListeEintrag>
  1899. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Kursdaten anzusehen.
  1900. * Code 404: Keine Kurs-Einträge gefunden
  1901. *
  1902. * @param {string} schema - der Pfad-Parameter schema
  1903. * @param {number} abschnitt - der Pfad-Parameter abschnitt
  1904. *
  1905. * @returns Eine Liste von Kurs-Listen-Einträgen
  1906. */
  1907. async getKurseFuerAbschnitt(schema, abschnitt) {
  1908. let path = "/db/{schema}/kurse/abschnitt/{abschnitt : \d+}"
  1909. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1910. .replace(/{abschnitt\s*(:[^}]+)?}/g, abschnitt.toString());
  1911. const result = await super.getJSON(path);
  1912. const obj = JSON.parse(result);
  1913. let ret = new Vector_1.Vector();
  1914. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KursListeEintrag_1.KursListeEintrag.transpilerFromJSON(text)); });
  1915. return ret;
  1916. }
  1917. /**
  1918. * Implementierung der GET-Methode getLehrer für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/
  1919. *
  1920. * Erstellt eine Liste aller in der Datenbank vorhanden Lehrer unter Angabe der ID, des Kürzels, des Vor- und Nachnamens, der sog. Personentyps, einer Sortierreihenfolge, ob sie in der Anwendung sichtbar bzw. änderbar sein sollen sowie ob sie für die Schulstatistik relevant sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Lehrerdaten besitzt.
  1921. *
  1922. * Mögliche HTTP-Antworten:
  1923. * Code 200: Eine Liste von Lehrer-Listen-Einträgen
  1924. * - Mime-Type: application/json
  1925. * - Rückgabe-Typ: List<LehrerListeEintrag>
  1926. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Lehrerdaten anzusehen.
  1927. * Code 404: Keine Lehrer-Einträge gefunden
  1928. *
  1929. * @param {string} schema - der Pfad-Parameter schema
  1930. *
  1931. * @returns Eine Liste von Lehrer-Listen-Einträgen
  1932. */
  1933. async getLehrer(schema) {
  1934. let path = "/db/{schema}/lehrer/"
  1935. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  1936. const result = await super.getJSON(path);
  1937. const obj = JSON.parse(result);
  1938. let ret = new Vector_1.Vector();
  1939. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerListeEintrag_1.LehrerListeEintrag.transpilerFromJSON(text)); });
  1940. return ret;
  1941. }
  1942. /**
  1943. * Implementierung der GET-Methode getLehrerPersonaldaten für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/{id : \d+}/personaldaten
  1944. *
  1945. * Liest die Personaldaten des Lehrers zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Lehrerpersonaldaten besitzt.
  1946. *
  1947. * Mögliche HTTP-Antworten:
  1948. * Code 200: Die Personaldaten des Lehrers
  1949. * - Mime-Type: application/json
  1950. * - Rückgabe-Typ: LehrerPersonaldaten
  1951. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Lehrerdaten anzusehen.
  1952. * Code 404: Kein Lehrer-Eintrag mit der angegebenen ID gefunden
  1953. *
  1954. * @param {string} schema - der Pfad-Parameter schema
  1955. * @param {number} id - der Pfad-Parameter id
  1956. *
  1957. * @returns Die Personaldaten des Lehrers
  1958. */
  1959. async getLehrerPersonaldaten(schema, id) {
  1960. let path = "/db/{schema}/lehrer/{id : \d+}/personaldaten"
  1961. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1962. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1963. const result = await super.getJSON(path);
  1964. const text = result;
  1965. return LehrerPersonaldaten_1.LehrerPersonaldaten.transpilerFromJSON(text);
  1966. }
  1967. /**
  1968. * Implementierung der PATCH-Methode patchLehrerPersonaldaten für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/{id : \d+}/personaldaten
  1969. *
  1970. * Passt die Lehrer-Personaldaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Lehrer-Personaldaten besitzt.
  1971. *
  1972. * Mögliche HTTP-Antworten:
  1973. * Code 200: Der Patch wurde erfolgreich in die Lehrer-Personaldaten integriert.
  1974. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  1975. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Lehrer-Personaldaten zu ändern.
  1976. * Code 404: Kein Lehrer-Eintrag mit der angegebenen ID gefunden
  1977. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  1978. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  1979. *
  1980. * @param {LehrerPersonaldaten} data - der Request-Body für die HTTP-Methode
  1981. * @param {string} schema - der Pfad-Parameter schema
  1982. * @param {number} id - der Pfad-Parameter id
  1983. */
  1984. async patchLehrerPersonaldaten(data, schema, id) {
  1985. let path = "/db/{schema}/lehrer/{id : \d+}/personaldaten"
  1986. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  1987. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  1988. let body = LehrerPersonaldaten_1.LehrerPersonaldaten.transpilerToJSONPatch(data);
  1989. return super.patchJSON(path, body);
  1990. }
  1991. /**
  1992. * Implementierung der GET-Methode getLehrerStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/{id : \d+}/stammdaten
  1993. *
  1994. * Liest die Stammdaten des Lehrers zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Lehrerdaten besitzt.
  1995. *
  1996. * Mögliche HTTP-Antworten:
  1997. * Code 200: Die Stammdaten des Lehrers
  1998. * - Mime-Type: application/json
  1999. * - Rückgabe-Typ: LehrerStammdaten
  2000. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Lehrerdaten anzusehen.
  2001. * Code 404: Kein Lehrer-Eintrag mit der angegebenen ID gefunden
  2002. *
  2003. * @param {string} schema - der Pfad-Parameter schema
  2004. * @param {number} id - der Pfad-Parameter id
  2005. *
  2006. * @returns Die Stammdaten des Lehrers
  2007. */
  2008. async getLehrerStammdaten(schema, id) {
  2009. let path = "/db/{schema}/lehrer/{id : \d+}/stammdaten"
  2010. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2011. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2012. const result = await super.getJSON(path);
  2013. const text = result;
  2014. return LehrerStammdaten_1.LehrerStammdaten.transpilerFromJSON(text);
  2015. }
  2016. /**
  2017. * Implementierung der PATCH-Methode patchLehrerStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/{id : \d+}/stammdaten
  2018. *
  2019. * Passt die Lehrer-Stammdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Lehrerdaten besitzt.
  2020. *
  2021. * Mögliche HTTP-Antworten:
  2022. * Code 200: Der Patch wurde erfolgreich in die Lehrer-Stammdaten integriert.
  2023. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  2024. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Lehrerdaten zu ändern.
  2025. * Code 404: Kein Lehrer-Eintrag mit der angegebenen ID gefunden
  2026. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  2027. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  2028. *
  2029. * @param {LehrerStammdaten} data - der Request-Body für die HTTP-Methode
  2030. * @param {string} schema - der Pfad-Parameter schema
  2031. * @param {number} id - der Pfad-Parameter id
  2032. */
  2033. async patchLehrerStammdaten(data, schema, id) {
  2034. let path = "/db/{schema}/lehrer/{id : \d+}/stammdaten"
  2035. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2036. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2037. let body = LehrerStammdaten_1.LehrerStammdaten.transpilerToJSONPatch(data);
  2038. return super.patchJSON(path, body);
  2039. }
  2040. /**
  2041. * Implementierung der GET-Methode getLehrerAbgangsgruende für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/abgangsgruende
  2042. *
  2043. * Erstellt eine Liste aller in dem Katalog vorhanden Lehrerabgangsgründe unter Angabe der ID, der Bezeichnung und des Statistikschlüssels. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2044. *
  2045. * Mögliche HTTP-Antworten:
  2046. * Code 200: Eine Liste von Lehrerabgangsgrund-Katalog-Einträgen
  2047. * - Mime-Type: application/json
  2048. * - Rückgabe-Typ: List<LehrerKatalogAbgangsgrundEintrag>
  2049. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2050. * Code 404: Keine Lehrerabgangsgrund-Katalog-Einträge gefunden
  2051. *
  2052. * @param {string} schema - der Pfad-Parameter schema
  2053. *
  2054. * @returns Eine Liste von Lehrerabgangsgrund-Katalog-Einträgen
  2055. */
  2056. async getLehrerAbgangsgruende(schema) {
  2057. let path = "/db/{schema}/lehrer/abgangsgruende"
  2058. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2059. const result = await super.getJSON(path);
  2060. const obj = JSON.parse(result);
  2061. let ret = new Vector_1.Vector();
  2062. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogAbgangsgrundEintrag_1.LehrerKatalogAbgangsgrundEintrag.transpilerFromJSON(text)); });
  2063. return ret;
  2064. }
  2065. /**
  2066. * Implementierung der GET-Methode getLehrerAnrechnungsgruende für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/anrechnungsgruende
  2067. *
  2068. * Erstellt eine Liste aller in dem Katalog vorhanden Gründe für Anrechnungsstunden von Lehrern.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2069. *
  2070. * Mögliche HTTP-Antworten:
  2071. * Code 200: Eine Liste von Einträgen für Gründe von Anrechnungsstunden von Lehrern
  2072. * - Mime-Type: application/json
  2073. * - Rückgabe-Typ: List<LehrerKatalogAnrechnungsgrundEintrag>
  2074. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2075. * Code 404: Keine Katalog-Einträge gefunden
  2076. *
  2077. * @param {string} schema - der Pfad-Parameter schema
  2078. *
  2079. * @returns Eine Liste von Einträgen für Gründe von Anrechnungsstunden von Lehrern
  2080. */
  2081. async getLehrerAnrechnungsgruende(schema) {
  2082. let path = "/db/{schema}/lehrer/anrechnungsgruende"
  2083. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2084. const result = await super.getJSON(path);
  2085. const obj = JSON.parse(result);
  2086. let ret = new Vector_1.Vector();
  2087. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogAnrechnungsgrundEintrag_1.LehrerKatalogAnrechnungsgrundEintrag.transpilerFromJSON(text)); });
  2088. return ret;
  2089. }
  2090. /**
  2091. * Implementierung der GET-Methode getLehrerBeschaeftigungsarten für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/beschaeftigungsarten
  2092. *
  2093. * Erstellt eine Liste aller in dem Katalog vorhanden Beschäftigungsarten unter Angabe der ID, eines Kürzels und der Bezeichnung. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2094. *
  2095. * Mögliche HTTP-Antworten:
  2096. * Code 200: Eine Liste von Beschäftigungsart-Katalog-Einträgen
  2097. * - Mime-Type: application/json
  2098. * - Rückgabe-Typ: List<LehrerKatalogBeschaeftigungsartEintrag>
  2099. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2100. * Code 404: Keine Beschäftigungsart-Katalog-Einträge gefunden
  2101. *
  2102. * @param {string} schema - der Pfad-Parameter schema
  2103. *
  2104. * @returns Eine Liste von Beschäftigungsart-Katalog-Einträgen
  2105. */
  2106. async getLehrerBeschaeftigungsarten(schema) {
  2107. let path = "/db/{schema}/lehrer/beschaeftigungsarten"
  2108. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2109. const result = await super.getJSON(path);
  2110. const obj = JSON.parse(result);
  2111. let ret = new Vector_1.Vector();
  2112. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogBeschaeftigungsartEintrag_1.LehrerKatalogBeschaeftigungsartEintrag.transpilerFromJSON(text)); });
  2113. return ret;
  2114. }
  2115. /**
  2116. * Implementierung der GET-Methode getLehrerEinsatzstatus für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/einsatzstatus
  2117. *
  2118. * Erstellt eine Liste aller in dem Katalog vorhanden Einsatzstatusarten unter Angabe der ID, eines Kürzels und der Bezeichnung. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2119. *
  2120. * Mögliche HTTP-Antworten:
  2121. * Code 200: Eine Liste von Einsatzstatus-Katalog-Einträgen
  2122. * - Mime-Type: application/json
  2123. * - Rückgabe-Typ: List<LehrerKatalogEinsatzstatusEintrag>
  2124. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2125. * Code 404: Keine Einsatzstatus-Katalog-Einträge gefunden
  2126. *
  2127. * @param {string} schema - der Pfad-Parameter schema
  2128. *
  2129. * @returns Eine Liste von Einsatzstatus-Katalog-Einträgen
  2130. */
  2131. async getLehrerEinsatzstatus(schema) {
  2132. let path = "/db/{schema}/lehrer/einsatzstatus"
  2133. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2134. const result = await super.getJSON(path);
  2135. const obj = JSON.parse(result);
  2136. let ret = new Vector_1.Vector();
  2137. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogEinsatzstatusEintrag_1.LehrerKatalogEinsatzstatusEintrag.transpilerFromJSON(text)); });
  2138. return ret;
  2139. }
  2140. /**
  2141. * Implementierung der GET-Methode getLehrerFachrichtungen für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/fachrichtungen
  2142. *
  2143. * Erstellt eine Liste aller in dem Katalog vorhanden Fachrichtungen von Lehrern. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2144. *
  2145. * Mögliche HTTP-Antworten:
  2146. * Code 200: Eine Liste von Fachrichtungens-Katalog-Einträgen
  2147. * - Mime-Type: application/json
  2148. * - Rückgabe-Typ: List<LehrerKatalogFachrichtungEintrag>
  2149. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2150. * Code 404: Keine Fachrichtungs-Katalog-Einträge gefunden
  2151. *
  2152. * @param {string} schema - der Pfad-Parameter schema
  2153. *
  2154. * @returns Eine Liste von Fachrichtungens-Katalog-Einträgen
  2155. */
  2156. async getLehrerFachrichtungen(schema) {
  2157. let path = "/db/{schema}/lehrer/fachrichtungen"
  2158. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2159. const result = await super.getJSON(path);
  2160. const obj = JSON.parse(result);
  2161. let ret = new Vector_1.Vector();
  2162. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogFachrichtungEintrag_1.LehrerKatalogFachrichtungEintrag.transpilerFromJSON(text)); });
  2163. return ret;
  2164. }
  2165. /**
  2166. * Implementierung der GET-Methode getLehrerFachrichtungAnerkennungen für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/fachrichtungen_anerkennungen
  2167. *
  2168. * Erstellt eine Liste aller in dem Katalog vorhanden Anerkennungen von Fachrichtungen für Lehrer. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2169. *
  2170. * Mögliche HTTP-Antworten:
  2171. * Code 200: Eine Liste von Anerkennungs-Katalog-Einträgen
  2172. * - Mime-Type: application/json
  2173. * - Rückgabe-Typ: List<LehrerKatalogFachrichtungAnerkennungEintrag>
  2174. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2175. * Code 404: Keine Anerkennungs-Katalog-Einträge gefunden
  2176. *
  2177. * @param {string} schema - der Pfad-Parameter schema
  2178. *
  2179. * @returns Eine Liste von Anerkennungs-Katalog-Einträgen
  2180. */
  2181. async getLehrerFachrichtungAnerkennungen(schema) {
  2182. let path = "/db/{schema}/lehrer/fachrichtungen_anerkennungen"
  2183. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2184. const result = await super.getJSON(path);
  2185. const obj = JSON.parse(result);
  2186. let ret = new Vector_1.Vector();
  2187. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogFachrichtungAnerkennungEintrag_1.LehrerKatalogFachrichtungAnerkennungEintrag.transpilerFromJSON(text)); });
  2188. return ret;
  2189. }
  2190. /**
  2191. * Implementierung der GET-Methode getLehrerLehraemter für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/lehraemter
  2192. *
  2193. * Erstellt eine Liste aller in dem Katalog vorhanden Lehrämter. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2194. *
  2195. * Mögliche HTTP-Antworten:
  2196. * Code 200: Eine Liste von Lehramt-Katalog-Einträgen
  2197. * - Mime-Type: application/json
  2198. * - Rückgabe-Typ: List<LehrerKatalogLehramtEintrag>
  2199. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2200. * Code 404: Keine Lehramt-Katalog-Einträge gefunden
  2201. *
  2202. * @param {string} schema - der Pfad-Parameter schema
  2203. *
  2204. * @returns Eine Liste von Lehramt-Katalog-Einträgen
  2205. */
  2206. async getLehrerLehraemter(schema) {
  2207. let path = "/db/{schema}/lehrer/lehraemter"
  2208. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2209. const result = await super.getJSON(path);
  2210. const obj = JSON.parse(result);
  2211. let ret = new Vector_1.Vector();
  2212. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogLehramtEintrag_1.LehrerKatalogLehramtEintrag.transpilerFromJSON(text)); });
  2213. return ret;
  2214. }
  2215. /**
  2216. * Implementierung der GET-Methode getLehrerLehramtAnerkennungen für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/lehraemter_anerkennungen
  2217. *
  2218. * Erstellt eine Liste aller Anerkennungen von Lehrämtern. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2219. *
  2220. * Mögliche HTTP-Antworten:
  2221. * Code 200: Eine Liste von Anerkennungs-Katalog-Einträgen
  2222. * - Mime-Type: application/json
  2223. * - Rückgabe-Typ: List<LehrerKatalogLehramtAnerkennungEintrag>
  2224. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2225. * Code 404: Keine Anerkennungs-Katalog-Einträge gefunden
  2226. *
  2227. * @param {string} schema - der Pfad-Parameter schema
  2228. *
  2229. * @returns Eine Liste von Anerkennungs-Katalog-Einträgen
  2230. */
  2231. async getLehrerLehramtAnerkennungen(schema) {
  2232. let path = "/db/{schema}/lehrer/lehraemter_anerkennungen"
  2233. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2234. const result = await super.getJSON(path);
  2235. const obj = JSON.parse(result);
  2236. let ret = new Vector_1.Vector();
  2237. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogLehramtAnerkennungEintrag_1.LehrerKatalogLehramtAnerkennungEintrag.transpilerFromJSON(text)); });
  2238. return ret;
  2239. }
  2240. /**
  2241. * Implementierung der GET-Methode getLehrerLehrbefaehigungen für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/lehrbefaehigungen
  2242. *
  2243. * Erstellt eine Liste aller in dem Katalog vorhanden Lehrbefähigungen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2244. *
  2245. * Mögliche HTTP-Antworten:
  2246. * Code 200: Eine Liste von Lehrbefähigung-Katalog-Einträgen
  2247. * - Mime-Type: application/json
  2248. * - Rückgabe-Typ: List<LehrerKatalogLehrbefaehigungEintrag>
  2249. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2250. * Code 404: Keine Lehrbefähigung-Katalog-Einträge gefunden
  2251. *
  2252. * @param {string} schema - der Pfad-Parameter schema
  2253. *
  2254. * @returns Eine Liste von Lehrbefähigung-Katalog-Einträgen
  2255. */
  2256. async getLehrerLehrbefaehigungen(schema) {
  2257. let path = "/db/{schema}/lehrer/lehrbefaehigungen"
  2258. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2259. const result = await super.getJSON(path);
  2260. const obj = JSON.parse(result);
  2261. let ret = new Vector_1.Vector();
  2262. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogLehrbefaehigungEintrag_1.LehrerKatalogLehrbefaehigungEintrag.transpilerFromJSON(text)); });
  2263. return ret;
  2264. }
  2265. /**
  2266. * Implementierung der GET-Methode getLehrerLehrbefaehigungenAnerkennungen für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/lehrbefaehigungen_anerkennungen
  2267. *
  2268. * Erstellt eine Liste aller in dem Katalog vorhanden Anerkennungen von Lehrbefähigungen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2269. *
  2270. * Mögliche HTTP-Antworten:
  2271. * Code 200: Eine Liste von Einsatzstatus-Katalog-Einträgen
  2272. * - Mime-Type: application/json
  2273. * - Rückgabe-Typ: List<LehrerKatalogLehrbefaehigungAnerkennungEintrag>
  2274. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2275. * Code 404: Keine Anerkennungs-Katalog-Einträge gefunden
  2276. *
  2277. * @param {string} schema - der Pfad-Parameter schema
  2278. *
  2279. * @returns Eine Liste von Einsatzstatus-Katalog-Einträgen
  2280. */
  2281. async getLehrerLehrbefaehigungenAnerkennungen(schema) {
  2282. let path = "/db/{schema}/lehrer/lehrbefaehigungen_anerkennungen"
  2283. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2284. const result = await super.getJSON(path);
  2285. const obj = JSON.parse(result);
  2286. let ret = new Vector_1.Vector();
  2287. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogLehrbefaehigungAnerkennungEintrag_1.LehrerKatalogLehrbefaehigungAnerkennungEintrag.transpilerFromJSON(text)); });
  2288. return ret;
  2289. }
  2290. /**
  2291. * Implementierung der GET-Methode getLehrerLeitungsfunktionen für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/leitungsfunktionen
  2292. *
  2293. * Erstellt eine Liste aller in dem Katalog vorhanden Lehrerleitungsfunktionen unter Angabe der ID und der Bezeichnung. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2294. *
  2295. * Mögliche HTTP-Antworten:
  2296. * Code 200: Eine Liste von Lehrerleitungsfunktion-Katalog-Einträgen
  2297. * - Mime-Type: application/json
  2298. * - Rückgabe-Typ: List<LehrerKatalogLeitungsfunktionEintrag>
  2299. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2300. * Code 404: Keine Lehrerleitungsfunktion-Katalog-Einträge gefunden
  2301. *
  2302. * @param {string} schema - der Pfad-Parameter schema
  2303. *
  2304. * @returns Eine Liste von Lehrerleitungsfunktion-Katalog-Einträgen
  2305. */
  2306. async getLehrerLeitungsfunktionen(schema) {
  2307. let path = "/db/{schema}/lehrer/leitungsfunktionen"
  2308. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2309. const result = await super.getJSON(path);
  2310. const obj = JSON.parse(result);
  2311. let ret = new Vector_1.Vector();
  2312. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogLeitungsfunktionEintrag_1.LehrerKatalogLeitungsfunktionEintrag.transpilerFromJSON(text)); });
  2313. return ret;
  2314. }
  2315. /**
  2316. * Implementierung der GET-Methode getLehrerMehrleistungsarten für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/mehrleistungsarten
  2317. *
  2318. * Erstellt eine Liste aller in dem Katalog vorhanden die Arten von Mehrleistungen durch Lehrer. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2319. *
  2320. * Mögliche HTTP-Antworten:
  2321. * Code 200: Eine Liste von Mehrleistungsart-Katalog-Einträgen
  2322. * - Mime-Type: application/json
  2323. * - Rückgabe-Typ: List<LehrerKatalogMehrleistungsartEintrag>
  2324. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2325. * Code 404: Keine Mehrleistungsart-Katalog-Einträge gefunden
  2326. *
  2327. * @param {string} schema - der Pfad-Parameter schema
  2328. *
  2329. * @returns Eine Liste von Mehrleistungsart-Katalog-Einträgen
  2330. */
  2331. async getLehrerMehrleistungsarten(schema) {
  2332. let path = "/db/{schema}/lehrer/mehrleistungsarten"
  2333. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2334. const result = await super.getJSON(path);
  2335. const obj = JSON.parse(result);
  2336. let ret = new Vector_1.Vector();
  2337. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogMehrleistungsartEintrag_1.LehrerKatalogMehrleistungsartEintrag.transpilerFromJSON(text)); });
  2338. return ret;
  2339. }
  2340. /**
  2341. * Implementierung der GET-Methode getLehrerMinderleistungsarten für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/minderleistungsarten
  2342. *
  2343. * Erstellt eine Liste aller in dem Katalog vorhanden Arten von Minderleistungen durch Lehrer. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2344. *
  2345. * Mögliche HTTP-Antworten:
  2346. * Code 200: Eine Liste von Minderleistungsart-Katalog-Einträgen
  2347. * - Mime-Type: application/json
  2348. * - Rückgabe-Typ: List<LehrerKatalogMinderleistungsartEintrag>
  2349. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2350. * Code 404: Keine Minderleistungsart-Katalog-Einträge gefunden
  2351. *
  2352. * @param {string} schema - der Pfad-Parameter schema
  2353. *
  2354. * @returns Eine Liste von Minderleistungsart-Katalog-Einträgen
  2355. */
  2356. async getLehrerMinderleistungsarten(schema) {
  2357. let path = "/db/{schema}/lehrer/minderleistungsarten"
  2358. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2359. const result = await super.getJSON(path);
  2360. const obj = JSON.parse(result);
  2361. let ret = new Vector_1.Vector();
  2362. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogMinderleistungsartEintrag_1.LehrerKatalogMinderleistungsartEintrag.transpilerFromJSON(text)); });
  2363. return ret;
  2364. }
  2365. /**
  2366. * Implementierung der GET-Methode getLehrerRechtsverhaeltnisse für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/rechtsverhaeltnisse
  2367. *
  2368. * Erstellt eine Liste aller in dem Katalog vorhanden Rechtsverhältnisse unter Angabe der ID, eines Kürzels und der Bezeichnung. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2369. *
  2370. * Mögliche HTTP-Antworten:
  2371. * Code 200: Eine Liste von Rechtsverhältnis-Katalog-Einträgen
  2372. * - Mime-Type: application/json
  2373. * - Rückgabe-Typ: List<LehrerKatalogRechtsverhaeltnisEintrag>
  2374. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2375. * Code 404: Keine Rechtsverhältnis-Katalog-Einträge gefunden
  2376. *
  2377. * @param {string} schema - der Pfad-Parameter schema
  2378. *
  2379. * @returns Eine Liste von Rechtsverhältnis-Katalog-Einträgen
  2380. */
  2381. async getLehrerRechtsverhaeltnisse(schema) {
  2382. let path = "/db/{schema}/lehrer/rechtsverhaeltnisse"
  2383. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2384. const result = await super.getJSON(path);
  2385. const obj = JSON.parse(result);
  2386. let ret = new Vector_1.Vector();
  2387. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogRechtsverhaeltnisEintrag_1.LehrerKatalogRechtsverhaeltnisEintrag.transpilerFromJSON(text)); });
  2388. return ret;
  2389. }
  2390. /**
  2391. * Implementierung der GET-Methode getLehrerZugangsgruende für den Zugriff auf die URL https://{hostname}/db/{schema}/lehrer/zugangsgruende
  2392. *
  2393. * Erstellt eine Liste aller in dem Katalog vorhanden Lehrerzugangsgründe unter Angabe der ID, der Bezeichnung und des Statistikschlüssels. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2394. *
  2395. * Mögliche HTTP-Antworten:
  2396. * Code 200: Eine Liste von Lehrerzugangsgrund-Katalog-Einträgen
  2397. * - Mime-Type: application/json
  2398. * - Rückgabe-Typ: List<LehrerKatalogZugangsgrundEintrag>
  2399. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2400. * Code 404: Keine Lehrerzugangsgrund-Katalog-Einträge gefunden
  2401. *
  2402. * @param {string} schema - der Pfad-Parameter schema
  2403. *
  2404. * @returns Eine Liste von Lehrerzugangsgrund-Katalog-Einträgen
  2405. */
  2406. async getLehrerZugangsgruende(schema) {
  2407. let path = "/db/{schema}/lehrer/zugangsgruende"
  2408. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2409. const result = await super.getJSON(path);
  2410. const obj = JSON.parse(result);
  2411. let ret = new Vector_1.Vector();
  2412. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(LehrerKatalogZugangsgrundEintrag_1.LehrerKatalogZugangsgrundEintrag.transpilerFromJSON(text)); });
  2413. return ret;
  2414. }
  2415. /**
  2416. * Implementierung der GET-Methode getSchuelerLernabschnittsdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/abschnitt/{abschnitt : \d+}/lernabschnittsdaten
  2417. *
  2418. * Liest die Lernabschnittsdaten des Schülers zu der angegebenen ID und dem angegeben Schuljahresabschnitt aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schülerdaten besitzt.
  2419. *
  2420. * Mögliche HTTP-Antworten:
  2421. * Code 200: Die Lernabschnittsdaten des Schülers
  2422. * - Mime-Type: application/json
  2423. * - Rückgabe-Typ: SchuelerLernabschnittsdaten
  2424. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Schülerdaten anzusehen.
  2425. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  2426. *
  2427. * @param {string} schema - der Pfad-Parameter schema
  2428. * @param {number} id - der Pfad-Parameter id
  2429. * @param {number} abschnitt - der Pfad-Parameter abschnitt
  2430. *
  2431. * @returns Die Lernabschnittsdaten des Schülers
  2432. */
  2433. async getSchuelerLernabschnittsdaten(schema, id, abschnitt) {
  2434. let path = "/db/{schema}/schueler/{id : \d+}/abschnitt/{abschnitt : \d+}/lernabschnittsdaten"
  2435. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2436. .replace(/{id\s*(:[^}]+)?}/g, id.toString())
  2437. .replace(/{abschnitt\s*(:[^}]+)?}/g, abschnitt.toString());
  2438. const result = await super.getJSON(path);
  2439. const text = result;
  2440. return SchuelerLernabschnittsdaten_1.SchuelerLernabschnittsdaten.transpilerFromJSON(text);
  2441. }
  2442. /**
  2443. * Implementierung der GET-Methode getSchuelerBetriebe für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/betriebe
  2444. *
  2445. * Erstellt eine Liste aller in der Datenbank vorhandenen Betriebe unter Angabe der Schüler-IDdes Vor- und Nachnamens, Erzieherart, Kontaktdaten, ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Betriebsdaten besitzt.
  2446. *
  2447. * Mögliche HTTP-Antworten:
  2448. * Code 200: Eine Liste von Schülerbetrieben
  2449. * - Mime-Type: application/json
  2450. * - Rückgabe-Typ: List<SchuelerBetriebsdaten>
  2451. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Erzieherdaten anzusehen.
  2452. * Code 404: Keine Erzieher-Einträge gefunden
  2453. *
  2454. * @param {string} schema - der Pfad-Parameter schema
  2455. * @param {number} id - der Pfad-Parameter id
  2456. *
  2457. * @returns Eine Liste von Schülerbetrieben
  2458. */
  2459. async getSchuelerBetriebe(schema, id) {
  2460. let path = "/db/{schema}/schueler/{id : \d+}/betriebe"
  2461. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2462. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2463. const result = await super.getJSON(path);
  2464. const obj = JSON.parse(result);
  2465. let ret = new Vector_1.Vector();
  2466. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(SchuelerBetriebsdaten_1.SchuelerBetriebsdaten.transpilerFromJSON(text)); });
  2467. return ret;
  2468. }
  2469. /**
  2470. * Implementierung der GET-Methode getSchuelerBetriebsstammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/betriebsstammdaten
  2471. *
  2472. * Erstellt eine Liste aller in der Datenbank vorhandenen Betriebe eines Schülers unter Angabe der ID,ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Betriebsdaten des Schülers besitzt.
  2473. *
  2474. * Mögliche HTTP-Antworten:
  2475. * Code 200: Eine Liste von von Betriebsstammdaten eines Schülers
  2476. * - Mime-Type: application/json
  2477. * - Rückgabe-Typ: List<BetriebStammdaten>
  2478. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Betriebdaten anzusehen.
  2479. * Code 404: Keine Betrieb-Einträge gefunden
  2480. *
  2481. * @param {string} schema - der Pfad-Parameter schema
  2482. * @param {number} id - der Pfad-Parameter id
  2483. *
  2484. * @returns Eine Liste von von Betriebsstammdaten eines Schülers
  2485. */
  2486. async getSchuelerBetriebsstammdaten(schema, id) {
  2487. let path = "/db/{schema}/schueler/{id : \d+}/betriebsstammdaten"
  2488. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2489. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2490. const result = await super.getJSON(path);
  2491. const obj = JSON.parse(result);
  2492. let ret = new Vector_1.Vector();
  2493. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(BetriebStammdaten_1.BetriebStammdaten.transpilerFromJSON(text)); });
  2494. return ret;
  2495. }
  2496. /**
  2497. * Implementierung der GET-Methode getSchuelerErzieher für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/erzieher
  2498. *
  2499. * Erstellt eine Liste aller in der Datenbank vorhandenen Erzieher unter Angabe der Schüler-IDdes Vor- und Nachnamens, Erzieherart, Kontaktdaten, ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Erzieherdaten besitzt.
  2500. *
  2501. * Mögliche HTTP-Antworten:
  2502. * Code 200: Eine Liste von Erzieherstammdaten
  2503. * - Mime-Type: application/json
  2504. * - Rückgabe-Typ: List<ErzieherStammdaten>
  2505. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Erzieherdaten anzusehen.
  2506. * Code 404: Keine Erzieher-Einträge gefunden
  2507. *
  2508. * @param {string} schema - der Pfad-Parameter schema
  2509. * @param {number} id - der Pfad-Parameter id
  2510. *
  2511. * @returns Eine Liste von Erzieherstammdaten
  2512. */
  2513. async getSchuelerErzieher(schema, id) {
  2514. let path = "/db/{schema}/schueler/{id : \d+}/erzieher"
  2515. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2516. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2517. const result = await super.getJSON(path);
  2518. const obj = JSON.parse(result);
  2519. let ret = new Vector_1.Vector();
  2520. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(ErzieherStammdaten_1.ErzieherStammdaten.transpilerFromJSON(text)); });
  2521. return ret;
  2522. }
  2523. /**
  2524. * Implementierung der GET-Methode getSchuelerLernabschnittsliste für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/lernabschnitte
  2525. *
  2526. * Liest eine Lister der Lernabschnitte des Schülers zu der angegebenen ID aus der Datenbank und liefert diese zurück.Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schülerdaten besitzt.
  2527. *
  2528. * Mögliche HTTP-Antworten:
  2529. * Code 200: Eine Liste von Schüler-Lernabschnitt-Listeneinträgen
  2530. * - Mime-Type: application/json
  2531. * - Rückgabe-Typ: List<SchuelerLernabschnittListeEintrag>
  2532. * Code 403: Der SVWS-Benutzer hat keine Rechte, um die Schülerdaten anzusehen.
  2533. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  2534. *
  2535. * @param {string} schema - der Pfad-Parameter schema
  2536. * @param {number} id - der Pfad-Parameter id
  2537. *
  2538. * @returns Eine Liste von Schüler-Lernabschnitt-Listeneinträgen
  2539. */
  2540. async getSchuelerLernabschnittsliste(schema, id) {
  2541. let path = "/db/{schema}/schueler/{id : \d+}/lernabschnitte"
  2542. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2543. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2544. const result = await super.getJSON(path);
  2545. const obj = JSON.parse(result);
  2546. let ret = new Vector_1.Vector();
  2547. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(SchuelerLernabschnittListeEintrag_1.SchuelerLernabschnittListeEintrag.transpilerFromJSON(text)); });
  2548. return ret;
  2549. }
  2550. /**
  2551. * Implementierung der GET-Methode getSchuelerSchulbesuch für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/schulbesuch
  2552. *
  2553. * Liest die Schulbesuchsdaten des Schülers zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schülerdaten besitzt.
  2554. *
  2555. * Mögliche HTTP-Antworten:
  2556. * Code 200: Die Schulbesuchsdaten des Schülers
  2557. * - Mime-Type: application/json
  2558. * - Rückgabe-Typ: SchuelerSchulbesuchsdaten
  2559. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten anzusehen.
  2560. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  2561. *
  2562. * @param {string} schema - der Pfad-Parameter schema
  2563. * @param {number} id - der Pfad-Parameter id
  2564. *
  2565. * @returns Die Schulbesuchsdaten des Schülers
  2566. */
  2567. async getSchuelerSchulbesuch(schema, id) {
  2568. let path = "/db/{schema}/schueler/{id : \d+}/schulbesuch"
  2569. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2570. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2571. const result = await super.getJSON(path);
  2572. const text = result;
  2573. return SchuelerSchulbesuchsdaten_1.SchuelerSchulbesuchsdaten.transpilerFromJSON(text);
  2574. }
  2575. /**
  2576. * Implementierung der PATCH-Methode patchSchuelerSchulbesuch für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/schulbesuch
  2577. *
  2578. * Passt die Schüler-Schulbesuchsdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Schülerdaten besitzt.
  2579. *
  2580. * Mögliche HTTP-Antworten:
  2581. * Code 200: Der Patch wurde erfolgreich in die Schüler-Schulbesuchsdaten integriert.
  2582. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  2583. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten zu ändern.
  2584. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  2585. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  2586. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  2587. *
  2588. * @param {SchuelerSchulbesuchsdaten} data - der Request-Body für die HTTP-Methode
  2589. * @param {string} schema - der Pfad-Parameter schema
  2590. * @param {number} id - der Pfad-Parameter id
  2591. */
  2592. async patchSchuelerSchulbesuch(data, schema, id) {
  2593. let path = "/db/{schema}/schueler/{id : \d+}/schulbesuch"
  2594. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2595. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2596. let body = SchuelerSchulbesuchsdaten_1.SchuelerSchulbesuchsdaten.transpilerToJSONPatch(data);
  2597. return super.patchJSON(path, body);
  2598. }
  2599. /**
  2600. * Implementierung der GET-Methode getSchuelerStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/stammdaten
  2601. *
  2602. * Liest die Stammdaten des Schülers zu der angegebenen ID aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schülerdaten besitzt.
  2603. *
  2604. * Mögliche HTTP-Antworten:
  2605. * Code 200: Die Stammdaten des Schülers
  2606. * - Mime-Type: application/json
  2607. * - Rückgabe-Typ: SchuelerStammdaten
  2608. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten anzusehen.
  2609. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  2610. *
  2611. * @param {string} schema - der Pfad-Parameter schema
  2612. * @param {number} id - der Pfad-Parameter id
  2613. *
  2614. * @returns Die Stammdaten des Schülers
  2615. */
  2616. async getSchuelerStammdaten(schema, id) {
  2617. let path = "/db/{schema}/schueler/{id : \d+}/stammdaten"
  2618. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2619. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2620. const result = await super.getJSON(path);
  2621. const text = result;
  2622. return SchuelerStammdaten_1.SchuelerStammdaten.transpilerFromJSON(text);
  2623. }
  2624. /**
  2625. * Implementierung der PATCH-Methode patchSchuelerStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/{id : \d+}/stammdaten
  2626. *
  2627. * Passt die Schüler-Stammdaten zu der angegebenen ID an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Schülerdaten besitzt.
  2628. *
  2629. * Mögliche HTTP-Antworten:
  2630. * Code 200: Der Patch wurde erfolgreich in die Schülerstammdaten integriert.
  2631. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  2632. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten zu ändern.
  2633. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  2634. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  2635. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  2636. *
  2637. * @param {SchuelerStammdaten} data - der Request-Body für die HTTP-Methode
  2638. * @param {string} schema - der Pfad-Parameter schema
  2639. * @param {number} id - der Pfad-Parameter id
  2640. */
  2641. async patchSchuelerStammdaten(data, schema, id) {
  2642. let path = "/db/{schema}/schueler/{id : \d+}/stammdaten"
  2643. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2644. .replace(/{id\s*(:[^}]+)?}/g, id.toString());
  2645. let body = SchuelerStammdaten_1.SchuelerStammdaten.transpilerToJSONPatch(data);
  2646. return super.patchJSON(path, body);
  2647. }
  2648. /**
  2649. * Implementierung der GET-Methode getSchuelerFuerAbschnitt für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/abschnitt/{abschnitt : \d+}
  2650. *
  2651. * Erstellt eine Liste aller Schüler des angegebenen Schuljahresabschnitts unter Angabe der ID, des Vor- und Nachnamens, der Klasse, des Jahrgangs, sein Status (z.B. aktiv), einer Sortierreihenfolge, ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Die schüler sind anhand der Klasse, des Nchnamens und des Vornamens sortiert.Es wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schülerdaten besitzt.
  2652. *
  2653. * Mögliche HTTP-Antworten:
  2654. * Code 200: Eine Liste von Schüler-Listen-Einträgen
  2655. * - Mime-Type: application/json
  2656. * - Rückgabe-Typ: List<SchuelerListeEintrag>
  2657. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten anzusehen.
  2658. * Code 404: Keine Schüler-Einträge gefunden
  2659. *
  2660. * @param {string} schema - der Pfad-Parameter schema
  2661. * @param {number} abschnitt - der Pfad-Parameter abschnitt
  2662. *
  2663. * @returns Eine Liste von Schüler-Listen-Einträgen
  2664. */
  2665. async getSchuelerFuerAbschnitt(schema, abschnitt) {
  2666. let path = "/db/{schema}/schueler/abschnitt/{abschnitt : \d+}"
  2667. .replace(/{schema\s*(:[^}]+)?}/g, schema)
  2668. .replace(/{abschnitt\s*(:[^}]+)?}/g, abschnitt.toString());
  2669. const result = await super.getJSON(path);
  2670. const obj = JSON.parse(result);
  2671. let ret = new Vector_1.Vector();
  2672. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(SchuelerListeEintrag_1.SchuelerListeEintrag.transpilerFromJSON(text)); });
  2673. return ret;
  2674. }
  2675. /**
  2676. * Implementierung der GET-Methode getSchuelerAktuell für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/aktuell
  2677. *
  2678. * Erstellt eine Liste aller im aktuellen Schuljahresabschnitt vorhanden Schüler unter Angabe der ID, des Vor- und Nachnamens, der Klasse, des Jahrgangs, sein Status (z.B. aktiv), einer Sortierreihenfolge, ob sie in der Anwendung sichtbar bzw. änderbar sein sollen. Die schüler sind anhand der Klasse, des Nachnamens und des Vornamens sortiert.Es wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schülerdaten besitzt.
  2679. *
  2680. * Mögliche HTTP-Antworten:
  2681. * Code 200: Eine Liste von Schüler-Listen-Einträgen
  2682. * - Mime-Type: application/json
  2683. * - Rückgabe-Typ: List<SchuelerListeEintrag>
  2684. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schülerdaten anzusehen.
  2685. * Code 404: Keine Schüler-Einträge gefunden
  2686. *
  2687. * @param {string} schema - der Pfad-Parameter schema
  2688. *
  2689. * @returns Eine Liste von Schüler-Listen-Einträgen
  2690. */
  2691. async getSchuelerAktuell(schema) {
  2692. let path = "/db/{schema}/schueler/aktuell"
  2693. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2694. const result = await super.getJSON(path);
  2695. const obj = JSON.parse(result);
  2696. let ret = new Vector_1.Vector();
  2697. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(SchuelerListeEintrag_1.SchuelerListeEintrag.transpilerFromJSON(text)); });
  2698. return ret;
  2699. }
  2700. /**
  2701. * Implementierung der GET-Methode getSchuelerFahrschuelerarten für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/fahrschuelerarten
  2702. *
  2703. * Erstellt eine Liste aller in dem Katalog vorhanden Fahrschülerarten unter Angabe der ID, eines Kürzels und der Bezeichnung. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2704. *
  2705. * Mögliche HTTP-Antworten:
  2706. * Code 200: Eine Liste von Fahrschülerarten-Katalog-Einträgen
  2707. * - Mime-Type: application/json
  2708. * - Rückgabe-Typ: List<KatalogEintrag>
  2709. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2710. * Code 404: Keine Fahrschülerart-Katalog-Einträge gefunden
  2711. *
  2712. * @param {string} schema - der Pfad-Parameter schema
  2713. *
  2714. * @returns Eine Liste von Fahrschülerarten-Katalog-Einträgen
  2715. */
  2716. async getSchuelerFahrschuelerarten(schema) {
  2717. let path = "/db/{schema}/schueler/fahrschuelerarten"
  2718. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2719. const result = await super.getJSON(path);
  2720. const obj = JSON.parse(result);
  2721. let ret = new Vector_1.Vector();
  2722. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  2723. return ret;
  2724. }
  2725. /**
  2726. * Implementierung der GET-Methode getSchuelerFoerderschwerpunkte für den Zugriff auf die URL https://{hostname}/db/{schema}/schueler/foerderschwerpunkte
  2727. *
  2728. * Erstellt eine Liste aller in dem Katalog vorhanden Förderschwerpunkte unter Angabe der ID, eines Kürzels und der Bezeichnung. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Katalogen besitzt.
  2729. *
  2730. * Mögliche HTTP-Antworten:
  2731. * Code 200: Eine Liste von Förderschwerpunkte-Katalog-Einträgen
  2732. * - Mime-Type: application/json
  2733. * - Rückgabe-Typ: List<KatalogEintrag>
  2734. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Katalog-Einträge anzusehen.
  2735. * Code 404: Keine Förderschwerpunkt-Katalog-Einträge gefunden
  2736. *
  2737. * @param {string} schema - der Pfad-Parameter schema
  2738. *
  2739. * @returns Eine Liste von Förderschwerpunkte-Katalog-Einträgen
  2740. */
  2741. async getSchuelerFoerderschwerpunkte(schema) {
  2742. let path = "/db/{schema}/schueler/foerderschwerpunkte"
  2743. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2744. const result = await super.getJSON(path);
  2745. const obj = JSON.parse(result);
  2746. let ret = new Vector_1.Vector();
  2747. obj.forEach((elem) => { let text = JSON.stringify(elem); ret.add(KatalogEintrag_1.KatalogEintrag.transpilerFromJSON(text)); });
  2748. return ret;
  2749. }
  2750. /**
  2751. * Implementierung der GET-Methode getSchullogo für den Zugriff auf die URL https://{hostname}/db/{schema}/schule/logo
  2752. *
  2753. * Liest das Logo der Schule zum angegebenen Schema aus der Datenbank und liefert dieses zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schuldaten besitzt.
  2754. *
  2755. * Mögliche HTTP-Antworten:
  2756. * Code 200: Das Logo der Schule
  2757. * - Mime-Type: application/json
  2758. * - Rückgabe-Typ: String
  2759. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schuldaten anzusehen.
  2760. * Code 404: Kein Eintrag mit dem angegebenen Schema gefunden
  2761. *
  2762. * @param {string} schema - der Pfad-Parameter schema
  2763. *
  2764. * @returns Das Logo der Schule
  2765. */
  2766. async getSchullogo(schema) {
  2767. let path = "/db/{schema}/schule/logo"
  2768. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2769. const result = await super.getJSON(path);
  2770. const text = result;
  2771. return JSON.parse(text).toString();
  2772. }
  2773. /**
  2774. * Implementierung der PUT-Methode putSchullogo für den Zugriff auf die URL https://{hostname}/db/{schema}/schule/logo
  2775. *
  2776. * Setzt das Logo der Schule. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schuldaten besitzt.
  2777. *
  2778. * Mögliche HTTP-Antworten:
  2779. * Code 200: Das Logo der Schule wurde gesetzt
  2780. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schuldaten zu ändern.
  2781. * Code 404: Kein Eintrag für die Schule gefunden
  2782. *
  2783. * @param {String} data - der Request-Body für die HTTP-Methode
  2784. * @param {string} schema - der Pfad-Parameter schema
  2785. */
  2786. async putSchullogo(data, schema) {
  2787. let path = "/db/{schema}/schule/logo"
  2788. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2789. let body = JSON.stringify(data);
  2790. return super.putJSON(path, body);
  2791. }
  2792. /**
  2793. * Implementierung der GET-Methode getSchuleNummer für den Zugriff auf die URL https://{hostname}/db/{schema}/schule/nummer
  2794. *
  2795. * Liefert die Schulnummer der Schule. Es wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen der Schuldaten besitzt.
  2796. *
  2797. * Mögliche HTTP-Antworten:
  2798. * Code 200: Die Schulnummer
  2799. * - Mime-Type: application/json
  2800. * - Rückgabe-Typ: Integer
  2801. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schuldaten anzusehen.
  2802. * Code 404: Keine Schule in der Datenbank vorhanden
  2803. *
  2804. * @param {string} schema - der Pfad-Parameter schema
  2805. *
  2806. * @returns Die Schulnummer
  2807. */
  2808. async getSchuleNummer(schema) {
  2809. let path = "/db/{schema}/schule/nummer"
  2810. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2811. const result = await super.getJSON(path);
  2812. const text = result;
  2813. return parseInt(JSON.parse(text));
  2814. }
  2815. /**
  2816. * Implementierung der GET-Methode getSchuleStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/schule/stammdaten
  2817. *
  2818. * Liest die Stammdaten der Schule zum angegebenen Schema aus der Datenbank und liefert diese zurück. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ansehen von Schuldaten besitzt.
  2819. *
  2820. * Mögliche HTTP-Antworten:
  2821. * Code 200: Die Stammdaten der Schule
  2822. * - Mime-Type: application/json
  2823. * - Rückgabe-Typ: SchuleStammdaten
  2824. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schuldaten anzusehen.
  2825. * Code 404: Kein Eintrag mit dem angegebenen Schema gefunden
  2826. *
  2827. * @param {string} schema - der Pfad-Parameter schema
  2828. *
  2829. * @returns Die Stammdaten der Schule
  2830. */
  2831. async getSchuleStammdaten(schema) {
  2832. let path = "/db/{schema}/schule/stammdaten"
  2833. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2834. const result = await super.getJSON(path);
  2835. const text = result;
  2836. return SchuleStammdaten_1.SchuleStammdaten.transpilerFromJSON(text);
  2837. }
  2838. /**
  2839. * Implementierung der PATCH-Methode patchSchuleStammdaten für den Zugriff auf die URL https://{hostname}/db/{schema}/schule/stammdaten
  2840. *
  2841. * Passt die Schul-Stammdaten an und speichert das Ergebnis in der Datenbank. Dabei wird geprüft, ob der SVWS-Benutzer die notwendige Berechtigung zum Ändern von Schuldaten besitzt.
  2842. *
  2843. * Mögliche HTTP-Antworten:
  2844. * Code 200: Der Patch wurde erfolgreich in die Schul-Stammdaten integriert.
  2845. * Code 400: Der Patch ist fehlerhaft aufgebaut.
  2846. * Code 403: Der SVWS-Benutzer hat keine Rechte, um Schuldaten zu ändern.
  2847. * Code 404: Kein Schüler-Eintrag mit der angegebenen ID gefunden
  2848. * Code 409: Der Patch ist fehlerhaft, da zumindest eine Rahmenbedingung für einen Wert nicht erfüllt wurde (z.B. eine negative ID)
  2849. * Code 500: Unspezifizierter Fehler (z.B. beim Datenbankzugriff)
  2850. *
  2851. * @param {SchuleStammdaten} data - der Request-Body für die HTTP-Methode
  2852. * @param {string} schema - der Pfad-Parameter schema
  2853. */
  2854. async patchSchuleStammdaten(data, schema) {
  2855. let path = "/db/{schema}/schule/stammdaten"
  2856. .replace(/{schema\s*(:[^}]+)?}/g, schema);
  2857. let body = SchuleStammdaten_1.SchuleStammdaten.transpilerToJSONPatch(data);
  2858. return super.patchJSON(path, body);
  2859. }
  2860. /**
  2861. * Implementierung der GET-Methode isAlive für den Zugriff auf die URL https://{hostname}/status/alive
  2862. *
  2863. * Eine Test-Methode zum Prüfen, ob der Server erreichbar ist.
  2864. *
  2865. * Mögliche HTTP-Antworten:
  2866. * Code 200: Der Server ist erreichbar!
  2867. * - Mime-Type: text/plain
  2868. * - Rückgabe-Typ: String
  2869. *
  2870. * @returns Der Server ist erreichbar!
  2871. */
  2872. async isAlive() {
  2873. let path = "/status/alive";
  2874. const text = await super.getText(path);
  2875. return String(text);
  2876. }
  2877. }
  2878. exports.ApiServer = ApiServer;
  2879. //# sourceMappingURL=ApiServer.js.map