Wiki-Quellcode von get_personnel.php
Version 3.1 von Dominic Lippmann am 2025/01/17 15:32
Zeige letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
1 | (% class="box" %) | ||
2 | ((( | ||
3 | Inhaltsverzeichnis | ||
4 | ))) | ||
5 | |||
6 | {{toc/}} | ||
7 | |||
8 | Abfrage der aktuell angelegten Personen der der Personalverwaltung | ||
9 | |||
10 | = Beschreibung = | ||
11 | |||
12 | (% class="green mark" %)//**GET**//(%%)//** get_personnel.php?company**=RTI_COMPANYKEY**&import**=RTI_IMPORTKEY&**format=**csv// | ||
13 | |||
14 | = Parameter = | ||
15 | |||
16 | |=Parameter|=Beschreibung|=Typ|=Hinweis|=Pflicht | ||
17 | |company|RTI Firmenschlüssel|string| |ja | ||
18 | |import|RTI Importschlüssel|string| |ja | ||
19 | |format|Ausgabeformat der Liste|string|unterstützte Formate sind:((( | ||
20 | * csv - Ausgabe im CSV Format | ||
21 | * json - Ausgabe im JSON Format | ||
22 | * xml - Ausgabe im XML Format | ||
23 | )))Standard: csv|nein | ||
24 | |history|Ausgabe aller Personalschlüssel einer Person oder nur des aktuellsten|int|((( | ||
25 | * 0 - nur den aktuellen Schlüssel ausgeben | ||
26 | * 1 - alle Personalschlüssel ausgeben((( | ||
27 | * Ein Eintrag pro Schlüssel | ||
28 | ))) | ||
29 | )))Standard: 0|nein | ||
30 | |id|Eingrenzung der Ausgabe auf die angegebene Personal-ID|string|siehe //strict// Parameter|nein | ||
31 | |name|Eingrenzung der Ausgabe auf Personen mit dem angegebenen Namen|string|siehe //strict// Parameter|nein | ||
32 | |pkey|Eingrenzung der Ausgabe auf den angegebenen Personalschlüssel|string|siehe //strict// Parameter|nein | ||
33 | |group|Eingrenzung der Ausgabe auf Personen mit der angegebenen Gruppe|string|siehe //strict// Parameter|nein | ||
34 | |strict|Unterscheidung ob genau das Suchwort gefunden werden soll oder alle Ergebnisse, die das Suchwort enthalten|int|((( | ||
35 | * 0 - liefert alle Ergebnisse, die den gesuchten Begriff enthalten | ||
36 | * 1 - liefert nur die Ergebnisse, die genau zum gesuchten Wert passen | ||
37 | )))Standard: 1 | ||
38 | Betrifft die Parameter: id, name, pkey, group|nein | ||
39 | |||
40 | = Rückgabe = | ||
41 | |||
42 | Es wird eine Zeichenkette zurück gegebenBei einem Fehler wird der "(% class="error" %)**403 - Verboten: Zugriff verweigert.**(%%)" HTTP-Header gesendet. | ||
43 | |||
44 | == Spalten == | ||
45 | |||
46 | |=Spalte CSV|=Spalte JSON/XML|=Bezeichnung Personalverwaltung|=Beschreibung|=Hinweis|= | ||
47 | |ID|id|MA-Nummer|selbstdefinierte eindeutige Mitarbeiternummer| | | ||
48 | |NAME|name|Name|vollständiger Name der Person| | | ||
49 | |KEY|key[id]|Personalschlüssel|Personalschlüssel (für Buchungen über YellowFox)| | | ||
50 | |VALID_FROM|key[valid_from]|Personalschlüssel gültig ab|Gültigkeitsbeginn des Personalschlüssels| |Format: YYYY-MM-DD HH:MM:SS | ||
51 | |VALID_TO|key[valid_to]|Personalschlüssel gültig bis|Gültigkeitsende des Personalschlüssels| |Format: YYYY-MM-DD HH:MM:SS | ||
52 | |GROUPS|groups[group]|Personalgruppen|Komma getrennte Liste mit den Bezeichnungen der zugewiesenen Personalgruppen| | | ||
53 | |CARD_NR|card_nr|Ausweisnummer|Entspricht der optional zuweisbaren Ausweisnummer, welche zur Erfassung von Buchungen mittels ReinerSCT genutzt wird| | | ||
54 | |DRV_LICENCE_NR|drv_licence[id]|Führerschein|Führerscheinnummer der Person|Daten nur bei gebuchtem Tacho Archiv| | ||
55 | |DRV_LICENCE_VALID_TO|drv_licence[valid_to]|Führerschein gültig bis|Ablaufdatum des Führerscheins|Daten nur bei gebuchtem Tacho Archiv|Format: YYYY-MM-DD HH:MM:SS | ||
56 | |IDENTITY_CARD_NR|identity_card[id]|Personalausweis|Personalausweisnummer|Daten nur bei gebuchtem Tacho Archiv| | ||
57 | |IDENTITY_CARD_VALID_TO|identity_card[valid_to]|Personalausweis gültig bis|Ablaufdatum des Personalausweises|Daten nur bei gebuchtem Tacho Archiv|Format: YYYY-MM-DD HH:MM:SS | ||
58 | |PASSPORT_NR|passport[id]|Reisepass|Reisepass Nummer|Daten nur bei gebuchtem Tacho Archiv| | ||
59 | |PASSPORT_VALID_TO|passport[valid_to]|Reisepass gültig bis|Ablaufdatum des Reisepasses|Daten nur bei gebuchtem Tacho Archiv|Format: YYYY-MM-DD HH:MM:SS | ||
60 | |ADR_CERTIFICATE_NR|adr_certificate[id]|ADR Bescheinigung|Nummer der ADR Bescheinigung|Daten nur bei gebuchtem Tacho Archiv| | ||
61 | |ADR_CERTICATE_VALID_TO|adr_certificate[valid_to]|ADR Bescheinigung gültig bis|Ablaufdatum der ADR Bescheinigung|Daten nur bei gebuchtem Tacho Archiv|Format: YYYY-MM-DD HH:MM:SS | ||
62 | |BKRFQG_VALID_TO|bkrfqg[valid_to]|Qualifikation laut Schlüsselzahl 95 gültig bis|Gültigkeit der Schulung zum Berufskraftfahrerqualifikationsgesetz|Daten nur bei gebuchtem Tacho Archiv|Format: YYYY-MM-DD HH:MM:SS | ||
63 | |BIRTHDATE|birthdate|Geburtsdatum|Geburtsdatum der Person|Daten nur bei gebuchtem Tacho Archiv | ||
64 | Wenn Tag und/oder Monat unbekannt, wird der Geburtstag mit "XX" für die unbekannten Werte aufgefüllt entsprechend deutschem Ausweisgesetz | ||
65 | (Bsp: 1980-06-XX oder 1980-XX-XX)|Format: YYYY-MM-DD HH:MM:SS | ||
66 | |JOB_START_DATE|job_start_date|Einstellungsdatum|Einstellungsdatum der Person|Daten nur bei gebuchtem Tacho Archiv|Format: YYYY-MM-DD HH:MM:SS | ||
67 | |DRV_LICENCE_CHECK_TAG_ID|drv_licence_check[tag_id]|NFC Tag ID|NFC Tag ID zur Führerscheinkontrolle| | | ||
68 | |DRV_LICENCE_CHECK_LAST_CHECK|drv_licence_check[last_check]|letzte Führerscheinkontrolle|Datum der letzten Führerscheinkontrolle| |Format: YYYY-MM-DD HH:MM:SS | ||
69 | |DRV_LICENCE_CHECK_NEXT_CHECK|drv_licence_check[next_check]|nächste Führerscheinkontrolle|Datum der nächsten fälligen Führerscheinkontrolle| |Format YYYY-MM-DD | ||
70 | |DRV_LICENCE_CHECK_INTERVAL|drv_licence_check[interval]|Kontrollintervall|Kontrollintervall zwischen 2 Abfragen in Sekunden| | | ||
71 | |||
72 | == CSV Format == | ||
73 | |||
74 | Bei einer korrekten Anfrage werden die Personaldaten im CSV (Comma Separated Value) Format ausgeliefert wobei die erste | ||
75 | Anwortzeile immer die Kopfzeile ist, die die Feld-/Spalten Namen festlegt. Dannach folgen dann die Daten | ||
76 | |||
77 | === Metainformationen === | ||
78 | |||
79 | |=Trennzeichen|Semikolon ( ; ) | ||
80 | |=Textbegrenzer|Doppeltes Hochkomma ( " ) | ||
81 | |=Zeilenende|0x0D 0x0A (CarriageReturn LineFeed) | ||
82 | |=Header|Zeile 1 | ||
83 | |||
84 | === Header === | ||
85 | |||
86 | **Header Informationen** | ||
87 | {{code language="java"}}"ID";"NAME";"KEY";"VALID_FROM";"VALID_TO";"GROUPS";"CARD_NR";"DRV_LICENCE_NR";"DRV_LICENCE_VALID_TO";"IDENTITY_CARD_NR";"IDENTITY_CARD_VALID_TO";"PASSPORT_NR";"PASSPORT_VALID_TO";"ADR_CERTIFICATE_NR";"ADR_CERTIFICATE_VALID_TO";"BKRFQG_VALID_TO";"BIRTHDATE";"JOB_START_DATE"{{/code}} | ||
88 | |||
89 | **Beispiel** | ||
90 | {{code language="vb"}}"ID";"NAME";"KEY";"VALID_FROM";"VALID_TO";"GROUPS";"CARD_NR";"DRV_LICENCE_NR";"DRV_LICENCE_VALID_TO";"IDENTITY_CARD_NR";"IDENTITY_CARD_VALID_TO";"PASSPORT_NR";"PASSPORT_VALID_TO";"ADR_CERTIFICATE_NR";"ADR_CERTIFICATE_VALID_TO";"BKRFQG_VALID_TO";"BIRTHDATE";"JOB_START_DATE";"DRV_LICENCE_CHECK_TAG_ID";"DRV_LICENCE_CHECK_LAST_CHECK";"DRV_LICENCE_CHECK_NEXT_CHECK";"DRV_LICENCE_CHECK_INTERVAL" | ||
91 | "0012";"Max Mustermann";"DF1234567890";"2018-01-01 06:43:00";"";"Fahrer,Dresden";"";"YFDD9876";"2021-11-10 23:59:59";"";"";"";"2023-04-30 23:59:59";"";"2020-07-31 23:59:59";"2021-11-30 23:59:59";"1990-02-19 00:00:00";"2014-09-01 00:00:00";""4729000A3341";"2020-03-01 10:43:00";"2020-03-15";"1209600"{{/code}} | ||
92 | |||
93 | == JSON Format == | ||
94 | |||
95 | Liefert eine JSON formatierte Liste mit allen verfügbaren Daten zurück. Die Daten selbst werden alle in einer Key - Value - Beziehung zurückgegeben. Einzelne Werte wie die Daten zum Personalschlüssel oder die einzelnen Personalgruppen sind zur besseren Zuordnung jeweils in einem Unterobjekt zusammengefasst. | ||
96 | **Beispiel** | ||
97 | {{code language="js"}}[ | ||
98 | { | ||
99 | "id":"0013", | ||
100 | "name":"Marion Musterfrau", | ||
101 | "key":{ | ||
102 | "id":"DF9876543210", | ||
103 | "valid_from":"2016-01-01 00:00:00", | ||
104 | "valid_to":null | ||
105 | }, | ||
106 | "card_nr":null, | ||
107 | "groups":[ | ||
108 | "Fahrer", | ||
109 | "Berlin" | ||
110 | ], | ||
111 | "deleted":null, | ||
112 | "drv_licence":{ | ||
113 | "id":"asd09472845", | ||
114 | "valid_to":"2017-02-24 23:59:59" | ||
115 | }, | ||
116 | "identity_card":{ | ||
117 | "id":"hal2001", | ||
118 | "valid_to":"2017-01-11 23:59:59" | ||
119 | }, | ||
120 | "passport":{ | ||
121 | "id":null, | ||
122 | "valid_to":null | ||
123 | }, | ||
124 | "adr_certificate":{ | ||
125 | "id":null, | ||
126 | "valid_to":"2019-05-23 23:59:59" | ||
127 | }, | ||
128 | "bkfqg":{ | ||
129 | "valid_to":null | ||
130 | }, | ||
131 | "birthdate":"1998-05-13 00:00:00", | ||
132 | "job_start_date":"2016-09-01 00:00:00" | ||
133 | }, | ||
134 | { | ||
135 | "id":"0014", | ||
136 | "name":"Patrick Berger", | ||
137 | "key":{ | ||
138 | "id":"00047392", | ||
139 | "valid_from":"2017-07-05 13:20:00", | ||
140 | "valid_to":null | ||
141 | }, | ||
142 | "card_nr":"7937102", | ||
143 | "groups":[ | ||
144 | "B\u00fcro", | ||
145 | "Berlin" | ||
146 | ], | ||
147 | "deleted":null, | ||
148 | "drv_licence":{ | ||
149 | "id":jvg7820185", | ||
150 | "valid_to":"2014-07-18 23:59:59" | ||
151 | }, | ||
152 | "identity_card":{ | ||
153 | "id":"ppa4711", | ||
154 | "valid_to":"2014-07-19 23:59:59" | ||
155 | }, | ||
156 | "passport":{ | ||
157 | "id":null, | ||
158 | "valid_to":null | ||
159 | }, | ||
160 | "adr_certificate":{ | ||
161 | "id":null, | ||
162 | "valid_to":null | ||
163 | }, | ||
164 | "bkfqg":{ | ||
165 | "valid_to":"2019-07-18 25:59:59" | ||
166 | }, | ||
167 | "birthdate":"1996-07-17 00:00:00", | ||
168 | "job_start_date":"2014-07-17 00:00:00", | ||
169 | "drv_licence_check": { | ||
170 | "tag_id": "4729000A3341", | ||
171 | "last_check": "2020-03-01 10:43:00", | ||
172 | "next_check": "2019-03-15", | ||
173 | "interval": 1209600 | ||
174 | } | ||
175 | } | ||
176 | ]{{/code}} | ||
177 | |||
178 | = XML Format = | ||
179 | |||
180 | Liefert einen XML formatierten String zurück. Unter dem Hauptschlüssel "<persons>" ist jede einzelne Person als "<person>" Objekt erfasst. Einzelne Werte wie die Daten zum Personalschlüssel oder die einzelnen Personalgruppen sind zur besseren Zuordnung jeweils in einem Unterobjekt zusammengefasst. | ||
181 | **Beispiel** | ||
182 | {{code language="xml"}}<?xml version="1.0"?> | ||
183 | <persons> | ||
184 | <person> | ||
185 | <id>0012</id> | ||
186 | <name>Max Mustermann</name> | ||
187 | <key> | ||
188 | <id>DF1234567890</id> | ||
189 | <valid_from>2018-01-01 06:43:00</valid_from> | ||
190 | <valid_to/> | ||
191 | </key> | ||
192 | <card_nr/> | ||
193 | <groups> | ||
194 | <group>Fahrer</group> | ||
195 | <group>Dresden</group> | ||
196 | </groups> | ||
197 | <deleted/> | ||
198 | <drv_licence> | ||
199 | <id>asd09472845</id> | ||
200 | <valid_to>2020-04-23 23:59:59</valid_to> | ||
201 | </drv_licence> | ||
202 | <identity_card> | ||
203 | <id/> | ||
204 | <valid_to/> | ||
205 | </identity_card> | ||
206 | <passport> | ||
207 | <id>yfdd01723</id> | ||
208 | <valid_to>2023-09-17 23:59:59</valid_to> | ||
209 | </passport> | ||
210 | <adr_certificate> | ||
211 | <id/> | ||
212 | <valid_to>2018-09-30 23:59:59</valid_to> | ||
213 | </adr_certificate> | ||
214 | <bkfqg> | ||
215 | <valid_to/> | ||
216 | </bkfqg> | ||
217 | <birthdate/> | ||
218 | <job_start_date>2012-05-01 00:00:00</job_start_date> | ||
219 | </person> | ||
220 | <person> | ||
221 | <id>0013</id> | ||
222 | <name>Marion Musterfrau</name> | ||
223 | <key> | ||
224 | <id>DF9876543210</id> | ||
225 | <valid_from>2016-01-01 00:00:00</valid_from> | ||
226 | <valid_to>2019-01-01 00:00:00</valid_to> | ||
227 | </key> | ||
228 | <card_nr/> | ||
229 | <groups> | ||
230 | <group>Fahrer</group> | ||
231 | <group>Berlin</group> | ||
232 | </groups> | ||
233 | <deleted/> | ||
234 | <drv_licence> | ||
235 | <id>asd09472845</id> | ||
236 | <valid_to>2020-04-23 23:59:59</valid_to> | ||
237 | </drv_licence> | ||
238 | <identity_card> | ||
239 | <id/> | ||
240 | <valid_to/> | ||
241 | </identity_card> | ||
242 | <passport> | ||
243 | <id>yfdd01723</id> | ||
244 | <valid_to>2023-09-17 23:59:59</valid_to> | ||
245 | </passport> | ||
246 | <adr_certificate> | ||
247 | <id/> | ||
248 | <valid_to>2018-09-30 23:59:59</valid_to> | ||
249 | </adr_certificate> | ||
250 | <bkfqg> | ||
251 | <valid_to/> | ||
252 | </bkfqg> | ||
253 | <birthdate/> | ||
254 | <job_start_date>2012-05-01 00:00:00</job_start_date> | ||
255 | <drv_licence_check> | ||
256 | <tag_id>4729000A3341</tag_id> | ||
257 | <last_check>2020-03-01 10:43:00</last_check> | ||
258 | <next_check>2020-03-15</next_check> | ||
259 | <interval>1209600</interval> | ||
260 | </drv_licence_check> | ||
261 | </person> | ||
262 | </persons>{{/code}} | ||
263 | |||
264 | == Beispiele == | ||
265 | |||
266 | **Abfrage aller Personen im CSV Format** | ||
267 | {{code language="js"}}https://map.yellowfox.de/rti/get_personnel.php?company=COMPANY_RTIKEY&import=IMPORT_RTIKEY&format=csv{{/code}} | ||
268 | |||
269 | **Abfrage aller Personen der Gruppe "Fahrer" mit allen Schlüsseln** | ||
270 | {{code language="js"}}https://map.yellowfox.de/rti/get_personnel.php?company=COMPANY_RTIKEY&import=IMPORT_RTIKEY&format=xml&group=Fahrer&history=1{{/code}} | ||
271 | |||
272 | **Abfrage der Daten einer Person mit einer bestimmten ID** | ||
273 | {{code language="js"}}https://map.yellowfox.de/rti/get_personnel.php?company=COMPANY_RTIKEY&import=IMPORT_RTIKEY&format=json&history=1&id=1234&strict=1{{/code}} | ||
274 |