Bfx.Alex.AccountsReport.DayInterval.Model.dll HTTP: Unterschied zwischen den Versionen

(Der Seiteninhalt wurde durch einen anderen Text ersetzt: „#redirect Webservice Tagesinformationen“)
 
(3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
__NOTOC__ {{DISPLAYTITLE:Webservice Tagesinformationen}}
#redirect [[Webservice Tagesinformationen]]
 
Es gibt auch eine Variante als [[Export_Tagesinformationen|Export-Schnittstelle.]]
 
Konfiguration für Config-File:
, "httpServicePlugins" :
  { "0" : "Bfx.Alex.AccountsReport.DayInterval.Model.dll"
  }
, "serverDaemonPlugins" :
  { "0" : "Bfx.HTTP.Server.dll"
  }
 
= Aufruf =
 
http://IP:PORT/EmployeeDayIntervals?PARAMETER
 
* IP: Wie im [[ALEX-Config-File]] eingestellt
* HTTP-Server-PORT: Wie im ALEX-Config-File eingestellt
* PARAMETER:
** Ressourcen können folgendermaßen angegeben werden
*** "allEmployees": gesamtes Personal
*** "id": Personalnummer
*** "planCode": Kurzzeichen von Plan
*** "resourcesBson": eine Zusammenfassung von Plan Kurzzeichen und Personalnummer zum Beispiel: "?resourcesBson={"employeeIDs":["E1","E2","E3"],"planCodes":["P1","P2","P3"]}"
** "begin": Begin-Datum des Datenauszuges Format "DD.MM.YYYY"
** "end": Ende-Datum des Datenauszuges Format "DD.MM.YYYY"
** "allstates": Statusdaten für alle aktuellen Status: Planung -> Planung, Ist -> Planung und Ist
 
'''Sicherer Link-Aufruf'''
 
In den Systemeinstellungen kann unter den "WebApiServer Einstellungen" ein Key generiert werden. Dieser Key muss dann bei jedem Aufruf beim HTTP-Server mit `?WebApiServerKey=<generierter Key>` mitgegeben werden.
Der Key kann nicht mehr verändert werden.
 
Parameter auf "ja" setzen und "Ausführen" klicken, dann wird Key hinterlegt.
 
[[Datei:Key.png|450px]]
 
Beispiel:<br>
<nowiki>http://localhost:4480/EmployeeDayIntervals?id=20&begin=05.12.2017&end=07.12.2017&WebApiServerKey=xxxx-xxxx-xxxx-xxxx-xxxx</nowiki>
 
== Beispiele ==
 
Alle Tagesinformationen von gesamten Personal von 05.12.2017 bis einschließlich 07.12.2017:
<nowiki>http://localhost:4480/EmployeeDayIntervals?allEmployees=true&begin=05.12.2017&end=07.12.2017</nowiki>
 
Alle Tagesinformationen von Personal mit Personalnummer "20" von 05.12.2017 bis einschließlich 07.12.2017:
<nowiki>http://localhost:4480/EmployeeDayIntervals?id=20&begin=05.12.2017&end=07.12.2017</nowiki>
 
Alle Tagesinformationen von Personal auf Plan "X" von 01.12.2017 bis einschließlich 31.12.2017:
<nowiki>http://localhost:4480/EmployeeDayIntervals?planCode=X&begin=01.12.2017&end=31.12.2017</nowiki>
 
Alle Tagesinformationen von Personal "E1", "E2", "E3" und Personal auf Plänen "P1", "P2", "P3" von 01.12.2017 bis einschließlich 31.12.2017:
<nowiki>http://localhost:4480/EmployeeDayIntervals?begin=01.12.2017&end=31.12.2017&resourcesBson={"employeeIDs":["E1","E2","E3"],"planCodes":["P1","P2","P3"]}</nowiki>
 
Alle Tagesinformationen von Personal mit Personalnummer "20" von 05.12.2017 bis einschließlich 07.12.2017, alle Status:
<nowiki>http://localhost:4480/EmployeeDayIntervals?id=20&begin=05.12.2017&end=07.12.2017&allstates=true</nowiki>
 
= Ergebnis =
 
Tagesinformation im [https://www.json.org/ JSON-Format] UTF8 codiert in der Form:
 
{ "Employees" : [
{ "EmployeeID" : "string"
, "Surname" : "string"
, "Forename" : "string"
, "MasterAllocation" : "string"
, "EmployeeJobGroup" : "string"
, "DayPoolAllocations" : [ "string" ]
, "AssignedExtra" : [ { "Key" : "string", "Value" : float } ]
, "Days" : [
{ "ForDate" : "string"
, "ForState" : "string"
, "TextCategory" : "string"
, "InfoText" : "string"
, "DayPlanSymbol" : "string"
, "DayShift1" : "string"
, "DayShift2" : "string"
, "DayRequestKind" : "string"
, "DayTotalMinutesComputed" : "float"
, "DayIntervals" : [
{ "From" : "string"
, "To" : "string"
, "DayIntervalPlanSymbol" : "string"
        , "DayIntervalInfoTextCategory" : "string"
, "DayIntervalInfoText" : "string"
, "DayIntervalAssignedEvents" : [ "string" ]
}
]}
]}
]}
 
Glossar:
* Employees: Array aller Personen
* EmployeeID: Personalnummer
* Surname: Zuname
* Forename: Vorname
* MasterAllocation: Stammplanungseinheit
* EmployeeJobGroup: Berufsgruppe
* Days: Array aller Tage
* ForDate: Datum von Tag
* ForState: Status von Tag
* InfoText: Text auf Tag
* DayPlanSymbol: Abwesenheit auf Tag (nur Planungscodes mit Typ "Abwesenheit")
* DayShift1: Dienst 1 auf Tag
* DayShift2: Dienst 2 auf Tag
* DayRequestKind: Aufgabe auf Tag
* DayTotalMinutesComputed: Total in Minuten aus Status
* DayPoolAllocations: Array aller Poolzuteilungen an diesem Tag
* AssignedExtra: Array aller Sonderabrechnung/Wert-Paare an diesem Tag
* DayIntervals: Array aller Kommt/Geht-Zeiten
* From: Komme
* To: Gehe
* DayIntervalPlanSymbol: Abwesenheit auf Kommt/Geht (nur Planungscodes mit Typ "Abwesenheit")
* DayIntervalInfoText: Text auf Kommt/Geht
* DayIntervalAssignedEvents: Array von Aufgaben
 
= Beispiel =
[[Datei:EmployeeDayIntervalsExample.txt]]
 
 
[[Kategorie:Neu ab Version 2018.04]]

Aktuelle Version vom 20. Januar 2021, 10:15 Uhr