(16 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
== Ausgangssituation == | == Ausgangssituation == | ||
=== Voraussetzungen === | === Voraussetzungen === | ||
* Es müssen die Voraussetzungen für den Betrieb des [[Intern:Bfx.Alex.UI.Web.dll|WebUI-Webservice]] erfüllt | * Es müssen die Voraussetzungen für den Betrieb des [[Intern:Bfx.Alex.UI.Web.dll|WebUI-Webservice]] erfüllt sein. | ||
*Es muss ein Benutzer mit den gewünschten Druckeinstellungen konfiguriert werden. | *Es muss ein Benutzer mit den gewünschten Druckeinstellungen konfiguriert werden. | ||
**<code>Systemeinstellungen: Druck-Einstellungen: Benutzer für Webservice Ausdruck von Monatsplan</code> | **<code>Systemeinstellungen: Druck-Einstellungen: Benutzer für Webservice Ausdruck von Monatsplan</code> | ||
*Der Benutzer muss mindestens die | *Der Benutzer muss mindestens die Rolle '''DIENSTPLAN LESEN''' (auf Systemeinstellungen) besitzen. | ||
{{AlexBild|Ausdruck Benutzer|[[Datei:Dienstplan_PDF.PNG]]}} | {{AlexBild|Ausdruck Benutzer|[[Datei:Dienstplan_PDF.PNG]]}} | ||
* Es kann ein '''minimaler [[Statustreppe|Status]] für Webservice-Ausdruck von Dienstplan''' <ref name="issue8715">{{githubissue|8715}}</ref> ausgewählt werden. Danach werden nur Pläne ab diesem Status angezeigt. Falls nichts eingestellt wird, werden alle Status angezeigt. | |||
**<code>Systemeinstellungen: Druck-Einstellungen: minimaler Status für Webservice-Ausdruck von Dienstplan</code> | |||
===Formatierung der Anfrage=== | ===Formatierung der Anfrage=== | ||
Zeile 41: | Zeile 33: | ||
|<code>planCode</code>||Zeichenkette||Kurzzeichen einer Planungseinheit | |<code>planCode</code>||Zeichenkette||Kurzzeichen einer Planungseinheit | ||
|- | |- | ||
|<code>employeeId</code>|| | |<code>employeeId</code>||Zeichenkette||Eine Personalnummer, die '''Planungseinheit''' ergibt sich aus der '''Stammzuteilung''' | ||
|- | |- | ||
|<code>date</code>||Datum||Datum des Monats des gewünschten Stundennachweises, wenn nicht angegeben '''Heute''' | |<code>date</code>||Datum||Datum des Monats des gewünschten Stundennachweises, wenn nicht angegeben '''Heute''' | ||
Zeile 48: | Zeile 40: | ||
*<code><nowiki>http://192.168.0.100:8080/AlexPrintPlanPeriod?date=10.06.2023&employeeId=123</nowiki></code> | *<code><nowiki>http://192.168.0.100:8080/AlexPrintPlanPeriod?date=10.06.2023&employeeId=123</nowiki></code> | ||
===Formatierung der Ausgabe === | |||
Bei einer erfolgreichen Anfrage gibt das Webservice eine '''Datei im PDF-Format''' zurück | |||
Bei einem Fehler wird ein JSON-String nach folgendem Schema zurückgegeben: | |||
{ | |||
"$schema": "https://json-schema.org/draft/2020-12/schema", | |||
"title": "New/Set-Result", | |||
"description": "Format für Fehlerausgabe des Webservice", | |||
"type": "object", | |||
"properties": { | |||
"request": { | |||
"type": "string", | |||
"description": "Angeforderter Request als 'Handshake'" | |||
}, | |||
"status": { | |||
"type": "string", | |||
"description": "'error'" | |||
}, | |||
"details": { | |||
"type": "string", | |||
"description": "Optionale Detailinformationen des Fehlers" | |||
} | |||
}, | |||
"required": [ | |||
"request", | |||
"status" | |||
] | |||
} | |||
==== Status von Dienstplan nicht erfüllt <ref name="issue8715"/> ==== | |||
Falls der '''minimaler Status für Webservice-Ausdruck von Dienstplan''' nicht erfüllt ist, wird folgende Fehlermeldung als Text im Response zurückgegeben: | |||
{ | |||
"request": "/AlexPrintPlanPeriod?date=<date>&employeeId=<id>", | |||
"status": "error", | |||
"details": "Dienstplan mit Status >Planung< noch nicht verfügbar." | |||
} | |||
Der Response Status wird auf <code>404 Not Found</code> gesetzt. | |||
==Fußnoten== | ==Fußnoten== |
Aktuelle Version vom 22. November 2024, 09:54 Uhr
Das WebUI-Webservice - Dienstplan PDF ist eine Programmfunktion zur Abfrage des Dienstplans pro Personal oder Planungseinheit und Datum im Dateiformat PDF. [1]
Ausgangssituation
Voraussetzungen
- Es müssen die Voraussetzungen für den Betrieb des WebUI-Webservice erfüllt sein.
- Es muss ein Benutzer mit den gewünschten Druckeinstellungen konfiguriert werden.
Systemeinstellungen: Druck-Einstellungen: Benutzer für Webservice Ausdruck von Monatsplan
- Der Benutzer muss mindestens die Rolle DIENSTPLAN LESEN (auf Systemeinstellungen) besitzen.
Ausdruck Benutzer |
- Es kann ein minimaler Status für Webservice-Ausdruck von Dienstplan [2] ausgewählt werden. Danach werden nur Pläne ab diesem Status angezeigt. Falls nichts eingestellt wird, werden alle Status angezeigt.
Systemeinstellungen: Druck-Einstellungen: minimaler Status für Webservice-Ausdruck von Dienstplan
Formatierung der Anfrage
Die Daten werden dem Webservice in der URL kodiert als GET-Argumentübertragung übergeben.
Ein Datum wird immer als DD.MM.YYYY
übertragen.
Schema für URL-Kodierung
Der Prozent-Encodierte Query-String der URL muss folgendes Format haben. Parameter in eckigen Klammern sind optional:
/AlexPrintPlanPeriod [?planCode=] [&employeeId=] [&date=]
Parameter | Wertebereich | Beschreibung |
---|---|---|
planCode |
Zeichenkette | Kurzzeichen einer Planungseinheit |
employeeId |
Zeichenkette | Eine Personalnummer, die Planungseinheit ergibt sich aus der Stammzuteilung |
date |
Datum | Datum des Monats des gewünschten Stundennachweises, wenn nicht angegeben Heute |
Beispiel:
http://192.168.0.100:8080/AlexPrintPlanPeriod?date=10.06.2023&employeeId=123
Formatierung der Ausgabe
Bei einer erfolgreichen Anfrage gibt das Webservice eine Datei im PDF-Format zurück
Bei einem Fehler wird ein JSON-String nach folgendem Schema zurückgegeben:
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "New/Set-Result", "description": "Format für Fehlerausgabe des Webservice", "type": "object", "properties": { "request": { "type": "string", "description": "Angeforderter Request als 'Handshake'" }, "status": { "type": "string", "description": "'error'" }, "details": { "type": "string", "description": "Optionale Detailinformationen des Fehlers" } }, "required": [ "request", "status" ] }
Status von Dienstplan nicht erfüllt [2]
Falls der minimaler Status für Webservice-Ausdruck von Dienstplan nicht erfüllt ist, wird folgende Fehlermeldung als Text im Response zurückgegeben:
{ "request": "/AlexPrintPlanPeriod?date=<date>&employeeId=<id>", "status": "error", "details": "Dienstplan mit Status >Planung< noch nicht verfügbar." }
Der Response Status wird auf 404 Not Found
gesetzt.