Mobile Zeiterfassung
Eine einzelne HTML-Datei, die bucht: Tage durchblättern mit den schon gebuchten Zeiten, Projekt wählen, Zeit starten und stoppen.
Meine projectfacts-Installation hat die Server-Adresse <Server-Adresse> (die Adresse, unter der ich projectfacts im Browser öffne). Baue eine Web-Anwendung als einzelne HTML-Datei ohne externe Abhängigkeiten zur mobilen Zeiterfassung, die sich über die REST-API mit projectfacts verbindet. Grundlage sind die OpenAPI-Beschreibung des Servers unter <Server-Adresse>/api/openapi.json (ab Version 26.2) und die Beschreibung der Schnittstelle im Hilfecenter unter help.teamspace.de (Thema API) – lies beides zuerst und halte dich an die dort beschriebenen Adressen, Felder und die Anmeldung per Gerätepasswort. Verwende als Adresse immer die Server-Adresse, die der Benutzer eingibt, nicht die Angabe unter „servers“ in der OpenAPI-Beschreibung. Angemeldet wird mit Server-Adresse, Geräte-ID und Token; das Gerätepasswort erzeugt der Benutzer in projectfacts unter „Persönliche Einstellungen → Geräte → Neues Gerätepasswort“.
Nach der Anmeldung sieht der Benutzer den heutigen Tag: oben die Zeiten, die er an diesem Tag schon gebucht hat (Projekt, Beginn und Ende, soweit vorhanden, Dauer und Beschreibung), mit der Tagessumme, darunter seine Projekte. Mit „zurück“ und „vor“ blättert er tageweise durch die Kalendertage und sieht jeweils die Buchungen dieses Tages; ein Sprung zurück auf heute ist jederzeit möglich. Für heute wählt er ein Projekt aus, startet die Zeiterfassung und beendet sie wieder. Der Zeiteintrag wird in projectfacts angelegt und erscheint danach sofort in der Tagesliste; Pflichtfelder der Buchung sind sichtbar und wählbar, nichts wird unbemerkt vorbelegt. Halte die Oberfläche auf einem Handy bedienbar und komme mit möglichst wenigen Bedienschritten aus.
Anforderungen: nur https-Adressen zulassen; Zugangsdaten nie im Code und nur dann dauerhaft speichern, wenn der Benutzer „Angemeldet bleiben“ wählt; Daten vom Server immer als Text ausgeben, nie als HTML. Texte auf Deutsch, Anrede Sie. Frage nach, bevor du etwas annimmst, das nicht in der Beschreibung steht.