# TicketTracker Benutzeranleitung Diese Anleitung beschreibt die Nutzung von TicketTracker im Arbeitsalltag: Zeiten erfassen, Sessions bewerten, Teamspace-Zeiten eintragen, fixe Abrechnungen verwalten, Statistiken lesen und den Monatsabschluss durchfuehren. ## Erstes Setup Wenn noch kein Admin existiert, zeigt TicketTracker beim Aufruf automatisch die Setup-Seite. Dort gibt es zwei Moeglichkeiten: - `Admin anlegen`: festen Admin mit Benutzername, vollem Namen und Passwort erstellen. Danach ist der Admin direkt angemeldet. - `Backup einspielen`: ein TicketTracker-SQL-Backup aus einem frueheren Systemstand hochladen, Struktur pruefen und danach einspielen. Danach meldet man sich mit einem Benutzer aus dem Backup an. Ein Restore ersetzt den kompletten Systemstand. Vor dem Einspielen wird geprueft, ob die Struktur des Dumps zur aktuellen Datenbank passt. Fehlen Felder oder enthaelt der Dump unbekannte Felder, wird eine Fehlermeldung angezeigt und der Restore kann nicht gestartet werden. Beim eigentlichen Restore werden alle TicketTracker-Tabellen geleert. Danach gilt ausschliesslich der Stand des Backups, inklusive aller Benutzer, Passwoerter, Sessions, Einstellungen, Organisationen, fixen Abrechnungen und Abschluesse. ## Grundprinzip TicketTracker ersetzt nicht das Ticketsystem und nicht das CRM. Die App ist die Arbeitszeiterfassung und Auswertung daneben. Es gibt drei zentrale Zeitebenen: - Session-Zeit: Die gemessene oder manuell erfasste Arbeitszeit einer einzelnen Taetigkeit. - Teamspace-Zeit: Die Zeit, die fuer ein Ticket an einem konkreten Tag wirklich im CRM beziehungsweise Teamspace eingetragen wurde. - Monatsabschluss: Der Abschluss eines ganzen Monats, sobald alle Sessions des Monats bewertet sind. Wichtig: Tickets werden nicht geschlossen. Tickets dienen nur als Gruppierung fuer Sessions. Abgeschlossen wird ausschliesslich der Monat. ## Hilfe und FAQ Die App hat eine eigene Unterseite `FAQ`. Dort steht die ausfuehrliche Bedienungsanleitung mit Abschnitten zu Timer, Tickets, Teamspace, Monatsabschluss, Statistiken, fixen Abrechnungen, Profil und Adminbereich. An vielen Stellen in der Oberflaeche gibt es ein Fragezeichen-Icon. Ein Klick darauf oeffnet ein kurzes Hilfe-Modal zur jeweiligen Card oder Funktion. Im Modal gibt es einen Link zum passenden ausfuehrlichen FAQ-Abschnitt. ## Anmeldung und Navigation 1. App im Browser oeffnen. 2. Mit Benutzername und Passwort anmelden. 3. Nach der Anmeldung ist die Seitenleiste sichtbar. Normale Benutzer sehen ihre eigenen Zeiten, Auswertungen, fixen Abrechnungen und ihr Profil. Der feste Admin sieht nur Administration, Profil und FAQ. Die Navigation ist in Workflows gegliedert: - Session starten - Tickets - Monatsabschluss - Statistiken - Fixe Abrechnung - Profil - Administration, nur fuer Admin - FAQ Nach `Tickets`, nach `Monatsabschluss` und vor `FAQ` trennt eine Linie die Bereiche optisch. ## Globaler Timer-Schnellstart Oben im Header gibt es auf allen Unterseiten ein Ticket-Eingabefeld fuer den schnellen Timerstart. 1. Ticketnummer im Format `Ticket#XXXXXX` eingeben. 2. `Timer starten` klicken. 3. Der neue Timer startet sofort. Wenn fuer diese Ticketnummer bereits ein Timer existiert, wird dieser vorhandene Timer aktiviert. Alle anderen Timer werden automatisch pausiert. Wenn zu der Ticketnummer bereits Ticketdaten vorhanden sind, zeigt der Timer auch die Organisation an. ## Timer Die Seite `Timer` ist fuer laufende Arbeit an Tickets gedacht. 1. Ticketnummer im Format `Ticket#XXXXXX` eingeben. 2. `Timer starten` klicken. 3. Der Timer startet. 4. Taetigkeit und optional Bewertung in den Details des ausgewaehlten Timers erfassen. 5. Bei Bedarf kann der Timer pausiert, aktiviert, beendet oder entfernt werden. Es koennen mehrere Timer vorbereitet sein, aber immer nur ein Timer laeuft aktiv. Wird ein anderer Timer aktiviert, werden alle anderen Timer automatisch pausiert. Alle laufenden und pausierten Timer stehen in der Seitenleiste. Dadurch bleiben sie auf allen Unterseiten sichtbar. Die Taetigkeit und Bewertung werden im ausgewaehlten Timer erfasst. Pausierte Timer behalten diese Notizen. Wird ein Timer entfernt, werden auch die noch nicht gespeicherten Details verworfen. Beim Klick auf `Beenden` stoppt der Timer sofort. Die vorher im Timer erfasste Taetigkeit wird beim Speichern an die Session gehaengt. Die Bewertung hat drei Optionen: `---`, `Abrechenbar` und `Nicht abrechenbar`. `---` ist der Standard und laesst die Session offen. Wenn im Profil die Bewertungsabfrage aktiv ist, fragt TicketTracker beim Beenden eines Timers mit `---` noch einmal nach. Im Abschlussdialog kann die Taetigkeit als interner Zammad-Article an das Ticket uebertragen werden. Der Article wird mit `internal: true` angelegt und enthaelt die Taetigkeit sowie den `time_unit`-Wert aus der gemessenen Zeit abzueglich Pausen. Wenn Zammad beim Speichern nicht erreichbar ist, wird die Session trotzdem in TicketTracker gespeichert. Der Zammad-Article wird dann in einer Parktabelle vorgemerkt und kann spaeter im Profil erneut gesendet werden. Beim Speichern nach dem Beenden gilt: - Existiert das Ticket bereits, werden Organisation und Art vom Ticket uebernommen. - Existiert das Ticket noch nicht, muessen Organisation und Art ausgefuellt werden. Die gemessene Zeit wird auf Minuten gerundet. Pausen werden von der Gesamtdauer abgezogen. ## Session Nachtragen Sessions koennen manuell nachgetragen werden, zum Beispiel wenn ein Timer vergessen wurde. Normale Benutzer koennen eigene Sessions nachtragen. Der feste Admin erfasst keine Sessions. Beim Nachtragen werden angegeben: - Ticketnummer - Organisation - Art: Support oder Consulting - Datum - Von-Uhrzeit - Bis-Uhrzeit - Bewertung: `---`, `Abrechenbar` oder `Nicht abrechenbar` - Taetigkeit Das Taetigkeitsfeld ist mehrzeilig. Zeilenumbrueche bleiben in der Auswertung erhalten. Mit Bewertung `---` bleibt eine nachgetragene Session offen. `Abrechenbar` und `Nicht abrechenbar` werden direkt an der neuen Session gespeichert. Das Ende muss nach dem Beginn liegen. Die Dauer wird automatisch berechnet und auf Minuten gerundet. In der Ticketdetailansicht gibt es ebenfalls `Session nachtragen`. Dort wird die neue Session direkt dem geoeffneten Ticket zugeordnet. ## Ticketdaten Bearbeiten In der Ticketdetailansicht koennen Ticketdaten nachtraeglich korrigiert werden: - Ticketnummer - Organisation - Art Aenderungen an Organisation und Art werden auf vorhandene manuelle Sessions des Tickets uebernommen. Bei wiederkehrend erzeugten Sessions bleibt die Art aus der Regel erhalten und kann nur ueber die fixe Abrechnung geaendert werden. Wenn ein Ticket bereits durch einen anderen Benutzer existiert, koennen die Ticketdaten beim Beenden eines Timers uebernommen werden. Die Session selbst bleibt trotzdem dem angemeldeten Benutzer zugeordnet. ## Organisationen Organisationen werden aus Zammad synchronisiert. Danach koennen Organisationen in TicketTracker nur noch aus der lokalen Liste ausgewaehlt werden. Freitext ist nicht mehr moeglich. Der Grund: Nur mit eindeutigen Organisationen sind saubere Auswertungen pro Kunde ueber mehrere Monate moeglich. Bereits vorhandene alte Freitexte muessen bei Bedarf manuell korrigiert werden, indem das Ticket oder die Session bearbeitet und eine Organisation aus der Liste ausgewaehlt wird. ## Tickets Die Seite `Tickets` hat zwei Ansichten: - Monat - Tag Mit den Pfeilen neben dem Datumsfeld kann ein Monat oder Tag vor- und zurueckgeschaltet werden. Die Daten aktualisieren sich automatisch. Ein separater Aktualisieren-Button ist nicht notwendig. Die oberen Karten zeigen: - Tickets: Anzahl der Tickets im Zeitraum - Sessions: Anzahl der Sessions im Zeitraum - Abgerechnet: Summe der Sessions mit Bewertung `Abgerechnet` und, sofern vorhanden, die dazugehoerige Teamspace-Zeit als Vergleichswert - Abrechenbar: Summe der Sessions mit Bewertung `Abrechenbar`, noch ohne Teamspace-Wirkung - Nicht abrechenbar: Summe der Sessions mit Bewertung `Nicht abrechenbar` - Offen: Anzahl unbewerteter Sessions Der Verlauf der abgerechneten Zeit liegt auf der Seite `Statistiken`. Dort wird der Monatsverlauf gemeinsam mit Teamspace und Bewertungsstand betrachtet. In der Monatsansicht kann ueber `Monat exportieren` eine CSV-Datei fuer den eigenen Benutzer heruntergeladen werden. Der Export enthaelt alle eigenen Sessions des Monats mit Ticket, Organisation, Art, Datum, Von/Bis, Bewertung, Session-Minuten, Teamspace-Minuten und Taetigkeit. Er ist fuer Kontrolle, Ablage oder Weiterverarbeitung gedacht. ## Tickets im Zeitraum Unter `Tickets im Zeitraum` werden alle Tickets angezeigt, die im gewaehlten Zeitraum Sessions haben. Pro Ticket sind sichtbar: - Ticketnummer - Organisation - Art - Anzahl Sessions - Abgerechnete Zeit - Anzahl abgerechneter Sessions - Status Neben der Ticketnummer gibt es ein Copy-Icon. Ein Klick kopiert die Ticketnummer in die Zwischenablage. Der Status bedeutet: - `offen`: Es gibt noch unbewertete Sessions. - `bewertet`: Alle Sessions dieses Tickets im gewaehlten Zeitraum sind bewertet. ### Filtern, Gruppieren und Sortieren Die Ticketliste kann gefiltert, gruppiert und sortiert werden. Filter: - Suche nach Ticketnummer oder Organisation - Typ - Organisation - Status Gruppierung: - Keine - Typ - Organisation - Status Sortierung: - Ticket - Typ - Organisation - Status Die Einstellungen bleiben im Browser gespeichert, auch nach Aktualisierung oder Browserneustart. Mit `Zuruecksetzen` werden sie auf Standard gesetzt. ## Ticketdetailansicht Ein Ticket wird aus der Ticketliste heraus geoeffnet. In der Ticketdetailansicht sieht man: - Ticketnummer mit Copy-Icon - Status des Monats - Ticketdaten - Projektinformationen, falls das Ticket ein Projekt ist - ToDos zu diesem Ticket oder Projekt - Session-Eintraege nach Tagen gruppiert - Teamspace-Wert pro Ticket und Tag - Moeglichkeit, direkt eine Session zu diesem Ticket nachzutragen Geoeffnete Tickets erscheinen in der Seitenleiste unter `Geoeffnete Tickets`. Die Liste bleibt nach Aktualisierung und Browserneustart erhalten. Mit einem Klick auf die Ticketnummer gelangt man direkt zur Ticketdetailansicht zurueck. Die Reihenfolge bleibt beim Anklicken unveraendert und kann nur per Drag and Drop angepasst werden. Der Schliessen-Button entfernt das Ticket aus der Seitenleiste. Wenn im aktuell geoeffneten Ticket noch ungespeicherte Werte vorhanden sind, muss zuerst gespeichert werden. ## Projekte und ToDos Projekte erweitern ein normales Ticket um Projektinformationen. Sie werden ueber den Navipunkt `Projekte` oder direkt aus einem Ticket heraus angelegt. Ein Projekt enthaelt: - Ticketnummer - Optionalen Titel - Organisation - Teamspace-Projekt - Beschreibung/Ziele - Ungefaehren Zeitraum - Optionales Stundenkontingent - Optionalen manuellen Verbrauch in Stunden Projekt-Tickets sind immer Consulting. Wird ein Projekt geloescht, bleiben das Ticket, die Sessions und die ToDos erhalten. Geloescht werden nur die Projektinformationen. Projekte koennen offen oder geschlossen sein. Auf der Projektseite werden standardmaessig nur offene Projekte angezeigt. Mit `Geschlossene anzeigen` werden geschlossene Projekte zusaetzlich eingeblendet. Offene Projekte stehen immer vor geschlossenen Projekten. Der Projektstatus betrifft nur die Projektverwaltung. Die Sessions eines Tickets werden dadurch nicht ausgeblendet oder veraendert. Der Verbrauch eines Projekts ist abrechnungstechnisch von den getrackten Sessions getrennt. Fuer den Projektverbrauch zaehlen nur gepflegte Teamspace-Tageswerte dieses Projekt-Tickets und der optionale manuelle Verbrauch am Projekt. Getrackte Sessionzeiten werden im Projekt zwar weiterhin angezeigt und bleiben normal bewertbar, sie erhoehen den Projektverbrauch aber nicht direkt. Der manuelle Verbrauch ist fuer Altbestaende oder einmalige Buchungen gedacht, die vor der Nutzung von TicketTracker bereits im Projekt angefallen sind. Dieser Wert wirkt ausschliesslich auf den Projektverbrauch und wird nicht in Statistiken, Monatsabschluss, Auswertung oder Exporte als Sessionzeit eingerechnet. Die Projektseite enthaelt Filter und Sortierungen. Projekte koennen nach Freitext, Status, Organisation, Kontingentstatus und ToDos gefiltert werden. Sortiert werden kann unter anderem nach Ticket, Titel, Organisation, Teamspace-Projekt, Verbrauch, Reststunden, Kontingent und offenen ToDos. Die Einstellungen bleiben im Browser gespeichert und koennen ueber `Zuruecksetzen` wieder auf Standard gestellt werden. Reststunden werden aus `Stundenkontingent minus Projektverbrauch` berechnet. Wenn kein Stundenkontingent gepflegt ist, kann kein offener Rest berechnet werden. Ist der Verbrauch hoeher als das Kontingent, zeigt die Projektkarte die Ueberziehung an. Projektinformationen und ToDos stehen in der Ticketdetailansicht auf breiten Bildschirmen nebeneinander. Auf kleineren Bildschirmen werden sie untereinander angezeigt. ToDos werden direkt am Ticket oder Projekt angelegt. Ein ToDo enthaelt: - Aufgabe - Prioritaet - Optionalen Umsetzungszeitraum von/bis - Optionale Details Wenn `Umsetzung von` und `Umsetzung bis` gleich sind, ist das ToDo ein festes Datum. Die zentrale Seite `ToDos` zeigt oben `Heutige ToDos`. Dort erscheinen nur offene ToDos, bei denen `Umsetzung von` und `Umsetzung bis` beide auf den heutigen Tag gesetzt sind. Ein Zeitraum, der heute nur einschliesst, wird nicht als heutiges ToDo gewertet. Darunter steht die Aufgabenliste mit Filter fuer: - Offen - Alle - Erledigt - Ticketnummer Die Aufgabenliste kann zusaetzlich sortiert werden nach: - Benutzerdefiniert - Prioritaet - Titel - Ticketnummer - Organisation - Umsetzungsdatum - Zuletzt geaendert Die Ticket-Suche filtert nach Ticketnummer. Dabei reicht auch die Nummer ohne `Ticket#`, zum Beispiel `944079`. `Benutzerdefiniert` ist die frei gespeicherte Reihenfolge. Diese Reihenfolge wird per Drag and Drop geaendert: ToDo am Griff ziehen, an der neuen Stelle fallen lassen. Sobald frei sortiert wird, stellt das Dropdown automatisch auf `Benutzerdefiniert`. Die Reihenfolge wird serverseitig pro Benutzer gespeichert. Du kannst also zwischendurch nach Titel oder Prioritaet sortieren und spaeter wieder auf deine eigene Reihenfolge zurueckwechseln. Mit den drei Gruppierungsfeldern kann die Aufgabenliste mehrstufig gruppiert werden. Die Reihenfolge der Felder ist die Reihenfolge der Gruppen, zum Beispiel `Ticket` -> `Prioritaet` -> `Kunde`. Moegliche Gruppierungen sind `Ticket`, `Prioritaet`, `Kunde` und `Status`. Statusfilter, Ticket-Suche, Sortierung und Gruppierung bleiben nach Aktualisierung und Browserneustart erhalten. Mit `Zuruecksetzen` werden die Standardeinstellungen wiederhergestellt. Unterhalb von `FAQ` zeigt die Seitenleiste die Kachel `Termine`. Dort stehen die festen ToDos des heutigen Tages, eine Summe laufender ToDos fuer heute und ueberfaellige ToDos. Ein Klick auf einen Eintrag oeffnet das zugehoerige Ticket. Unter der Aufgabenliste steht der `ToDo-Kalender`. Er zeigt offene ToDos pro Monat; erledigte ToDos werden im Kalender ausgeblendet. Wochenenden und bayerische Feiertage bleiben im Kalender ohne ToDo-Einträge. Der Monat kann mit den Pfeilen gewechselt werden. Ein-Tages-ToDos werden einzeln angezeigt. Das sind Eintraege, bei denen `Umsetzung von` und `Umsetzung bis` gleich sind. Die Farbe richtet sich nach der Prioritaet. ToDos mit Zeitraum oder nur einem Datum werden nicht einzeln ausgeschrieben, sondern pro Tag als Summe angezeigt: - `Umsetzung von` und `Umsetzung bis` unterschiedlich: Das ToDo zaehlt an jedem Tag im Zeitraum. - Nur `Umsetzung von`: Das ToDo zaehlt ab diesem Datum weiter, bis es erledigt, geloescht oder mit einem Bis-Datum begrenzt wird. - Nur `Umsetzung bis`: Das ToDo zaehlt ab heute bis zum Bis-Datum. Ein offenes ToDo ist ueberfaellig, sobald `Umsetzung bis` vor dem heutigen Tag liegt. Ueberfaellige ToDos werden in Listen, im Kalender und in der Termine-Kachel rot hervorgehoben. Im Kalender bleiben sie ab dem Tag nach der Deadline an jedem Arbeitstag als roter Badge `+X uef` sichtbar, bis sie erledigt oder geloescht werden. Ein Klick auf ein einzelnes ToDo oeffnet direkt das Bearbeiten-Modal. Ein Klick auf `+X ToDos` oeffnet ein kompaktes Tagesmodal mit den einzelnen ToDos dieses Tages. Dort koennen ToDos erledigt, geloescht, als einzelnes ToDo geoeffnet oder das zugehoerige Ticket geoeffnet werden. Bei den Datumsfeldern gibt es jeweils `Datum entfernen`, um `Umsetzung von` oder `Umsetzung bis` gezielt zu leeren. ToDos koennen erledigt, wieder geoeffnet, bearbeitet oder geloescht werden. Die Sessions sind pro Tag gruppiert. In jeder Tagesgruppe stehen: - Tagesdatum - `Tag abgerechnet`: Summe der als `Abgerechnet` bewerteten Session-Zeit dieses Tages - `Abrechenbar`: Summe der als `Abrechenbar` bewerteten Session-Zeit dieses Tages - `Nicht`: Summe der als `Nicht abrechenbar` bewerteten Session-Zeit dieses Tages - `Offen`: Summe der noch unbewerteten Session-Zeit dieses Tages - `Teamspace`: Stunden, die fuer dieses Ticket an diesem Tag wirklich im CRM eingetragen wurden Das Teamspace-Feld wird in Stunden eingetragen, zum Beispiel: - `1` - `1,5` - `2.25` - `0,75` Der Teamspace-Wert wird nicht waehrend der Eingabe gespeichert. Sobald sich der Wert geaendert hat, erscheint ein Speichern-Button. Erst dieser Button speichert den Wert. Ein leeres Teamspace-Feld entfernt den gespeicherten Teamspace-Wert fuer diesen Ticket-Tag. Der Wert ist derselbe in Monats- und Tagesansicht. Wenn er in einer Ansicht gespeichert wird, ist er in der anderen Ansicht identisch gesetzt. Jede einzelne Session ist innerhalb der Tagesgruppe aufklappbar. In der geschlossenen Zeile stehen nur Uhrzeit, berechnete Zeit und die Buttons fuer Bewertung, Bearbeiten und Loeschen. Der Freitext der Taetigkeit wird erst beim Aufklappen angezeigt. Ueber `Alle aufklappen` koennen alle Sessiondetails gleichzeitig eingeblendet werden. ## Sessions Bewerten Jede Session kann bewertet werden als: - Abgerechnet - Abrechenbar - Nicht abrechenbar Ein erneuter Klick auf den bereits gewaehlten Zustand nimmt die Bewertung zurueck. Dadurch wird die Session wieder offen. Abrechenbare und nicht abrechenbare Sessions gelten als bewertet. Sie blockieren den Monatsabschluss nicht. `Abrechenbar` fliesst nicht in Teamspace-Statistiken ein; erst `Abgerechnet` zaehlt dort. Es gibt keinen Ticketabschluss. Tickets dienen nur als Gruppierung fuer Sessions. Abgeschlossen wird ausschliesslich der Monat. Wenn der Monat bereits abgeschlossen ist, muss er zuerst wieder geoeffnet werden, bevor Bewertungen geaendert werden. ## Sessions Bearbeiten Eine Session kann ueber das Stift-Icon bearbeitet werden. Bearbeitbar sind: - Datum - Von-Uhrzeit - Bis-Uhrzeit - Organisation - Taetigkeit - Art, sofern es keine wiederkehrende Session ist Bei wiederkehrenden Sessions ist die Art gesperrt. Sie kommt aus der Regel der fixen Abrechnung. Von und Bis beziehen sich nur auf die Uhrzeit. Das Datum ist ein eigenes Feld. ## Sessions Loeschen Eine Session kann ueber das Papierkorb-Icon geloescht werden. Wird die letzte Session eines Tickets geloescht, wird das Ticket entfernt. Die Ansicht springt danach zurueck zur Ticketliste. Bei wiederkehrenden Sessions wird das Loeschen als Ausnahme gespeichert. Dadurch wird die Session fuer diesen Tag nicht automatisch wieder neu erzeugt. Wenn eine wiederkehrende Leistung an einem anderen Tag erbracht wurde, kann die erzeugte Session bearbeitet beziehungsweise verschoben werden. ## Monatsabschluss Der Monatsabschluss ist eine eigene Unterseite. Ein Monat kann abgeschlossen werden, wenn: - Alle Sessions im Monat bewertet sind. Einen separaten Tagesabschluss gibt es nicht. Die Tagesansicht ist nur eine gefilterte Kontrolle einzelner Tage. Bewertungen und Teamspace-Tageswerte wirken in Monats- und Tagesansicht auf dieselben Daten, abgeschlossen wird aber ausschliesslich der Monat. Die Seite `Monatsabschluss` enthaelt: - Checkliste - Offene Bewertungen - Tage ohne Teamspace-Wert - Button zum Monat abschliessen oder wieder oeffnen Offene Bewertungen werden nach Ticket gruppiert. Mit `Ticket oeffnen` gelangt man direkt zur Bewertung. Tage ohne Teamspace-Wert sind eine Pruefliste. Wenn ein Tag bewusst keinen Teamspace-Wert bekommen soll, kann der Eintrag mit `Zur Kenntnis` abgehakt werden. Zur Kenntnis genommene Eintraege koennen ueber die Checkbox `Zur Kenntnis anzeigen` wieder eingeblendet werden. Diese Anzeigeeinstellung bleibt im Browser gespeichert. Ein abgehakter Eintrag kann mit `Zuruecknehmen` wieder offen gemacht werden. ## Fixe Abrechnungen Fixe Abrechnungen werden von jedem Benutzer selbst verwaltet. Sie dienen fuer wiederkehrende Leistungen, zum Beispiel: - Jeden Donnerstag 4 Stunden - Jeden Dienstag, Mittwoch und Freitag unterschiedliche Zeiten - Alle 2 Wochen an einem bestimmten Wochentag Eine fixe Abrechnung enthaelt: - Optional eine Ticketnummer - Organisation - Art - Taetigkeit - Gueltig von - Optional gueltig bis - Muster - Slots mit Wochentag, Startzeit und Dauer Wenn keine Ticketnummer hinterlegt ist, wird automatisch `Fix#ID` verwendet. Muster: - `Wochentage`: Es werden einzelne Slots mit Wochentag, Startzeit und Dauer gepflegt. - `Alle X Wochen`: Das Gueltig-von-Datum ist der Startpunkt. Das Intervall laeuft wochenweise. Bayerische Feiertage werden bei der automatischen Erzeugung beruecksichtigt. Fuer Feiertage werden keine Sessions erzeugt. Fixe Abrechnungen koennen bearbeitet werden. Wenn Gueltigkeiten oder Slots geaendert werden, werden nicht mehr passende erzeugte Sessions entfernt oder angepasst. Fix erzeugte einzelne Sessions koennen geloescht werden, zum Beispiel wegen Urlaub oder Krankheit. Diese Loeschung wird als Ausnahme gespeichert, damit die Session nicht beim naechsten Aufruf wieder automatisch erscheint. ## Statistiken Die Seite `Statistiken` betrachtet immer einen Monat. Sie dient als Ueberblick fuer abgerechnete Zeiten, nicht abrechenbare Arbeit, Teamspace-Vergleich, Bewertungsstand und Auffaelligkeiten. ### Kennzahlen `Abgerechnet` zeigt die Summe aller Sessions mit Bewertung `Abgerechnet`. Abrechenbare, nicht abrechenbare und offene Sessions sind darin nicht enthalten. Dieser Wert ist die Basis fuer den Vergleich mit Teamspace. Teamspace-Statistiken und -Vergleiche verwenden nur abgerechnete Zeiten. Nicht ausgewaehlte/offene, abrechenbare und nicht abrechenbare Sessions werden nicht in Teamspace-Differenzen, Hotspots, Manuell/Fix-Werte oder Durchschnittswerte eingerechnet. `Teamspace` zeigt die Summe aller Teamspace-Tageswerte im Monat. Die Differenz wird immer so berechnet: ```text Teamspace-Zeit minus abgerechnete Session-Zeit ``` Das bedeutet: - Positive Differenz: In Teamspace steht mehr Zeit als abgerechnet wurde. - Negative Differenz: In Teamspace steht weniger Zeit als abgerechnet wurde. - Ausgeglichen: Beide Werte sind gleich. Farben: - Abgerechnet: blau - Abrechenbar: grau - Teamspace: fuchsia - Positive oder ausgeglichene Differenz: gruen - Negative Differenz: rot - Nicht abrechenbar: indigo - Offen: gelb/orange `Abrechenbar` und `Nicht abrechenbar` zeigen bewertete Sessions, die nicht als abgerechnet gelten. Diese Sessions werden nicht mit Teamspace verglichen. `Offen` zeigt Sessions ohne Bewertung. Diese blockieren den Monatsabschluss. ### Monatsverlauf und Abrechnungsqualitaet Diese Card kombiniert den Tagesverlauf und die Bewertungsqualitaet. - Balken zeigen abgerechnete Session-Zeit. - Die Linie zeigt Teamspace-Zeit. - Der Bewertungsstand trennt abgerechnete, abrechenbare, nicht abrechenbare und offene Sessions. - Der Teamspace-Abgleich zeigt die Gesamtdifferenz. - Manuell und Fix trennen manuell erfasste abrechenbare Sessions von automatisch erzeugten abrechenbaren Sessions. ### Statistik pro Organisation Diese Card gruppiert den Aufwand nach Organisation. Sichtbar sind: - Organisation - Sessions - Zeiten: Abgerechnet, abrechenbar, nicht abrechenbar und Teamspace - Differenz - Anteil an der abgerechneten Monatszeit Bei vielen Organisationen wird paginiert. ### Typen Die Typen-Card trennt Support und Consulting. Sie zeigt je Typ: - Tickets - Sessions - Abgerechnete Session-Zeit - Nicht abrechenbare Session-Zeit - Teamspace-Zeit - Differenz - Anzahl abgerechnet, abrechenbar, nicht abrechenbar und offen ### Ticket-Hotspots Ticket-Hotspots zeigen die groessten Zeitbloecke des Monats nach Ticket. Sie helfen, die groessten Aufwandstreiber schnell zu finden. Mit `Oeffnen` gelangt man direkt in die Ticketdetailansicht des Monats. ## Profil Unter `Profil` kann jeder Benutzer seine eigenen Daten pflegen: - Benutzername - Voller Name - Passwort - persoenlicher Zammad API-Token - Bewertungsabfrage beim Timerabschluss - interne Zammad-Notiz beim Timerabschluss - Zammad-Zeitaufrundung fuer `time_unit` Passwortaenderungen erfordern das aktuelle Passwort. Bleiben die Passwortfelder leer, werden nur Benutzername und voller Name gespeichert. Normale Benutzer koennen im Profil einen persoenlichen Zammad API-Token hinterlegen. Beim Speichern eines neuen Tokens ruft TicketTracker Zammad ueber `/api/v1/users/me` auf und speichert die User-ID, die Zammad fuer diesen Token zurueckliefert. Die User-ID wird danach read-only im Profil angezeigt. Die Pruefung findet nur statt, wenn der Token im Profil neu eingetragen oder entfernt wird. Wenn nur Benutzername, voller Name oder Passwort gespeichert werden, wird Zammad nicht erneut abgefragt. Der persoenliche Zammad Token ist unabhaengig vom Admin-Token fuer den Organisations-Sync. Der gleiche Token kann technisch in beiden Bereichen eingetragen sein, wird aber getrennt gespeichert und getrennt verwendet. Im Admin-Profil gibt es keinen persoenlichen Zammad-Token. Die Bewertungsabfrage beim Timerabschluss kann im Profil ein- oder ausgeschaltet werden. Sie erscheint nur, wenn der Timer beim Beenden noch auf Bewertung `---` steht. Die interne Zammad-Notiz beim Timerabschluss steuert, ob die Checkbox im Abschlussdialog standardmaessig aktiv ist. Ist sie aktiv, legt TicketTracker beim Speichern einen internen Zammad-Article zum Ticket an. Fuer `time_unit` kann optional eine Aufrundung aktiviert werden. Dann wird die tatsaechlich getrackte Zeit immer auf 5, 10, 15 oder 30 Minuten aufgerundet und als Stundenwert an Zammad gesendet. Ohne Rundung wird der konkrete Stundenwert mit zwei Nachkommastellen gesendet. Unter `Geparkte Zammad-Notizen` zeigt das Profil interne Notizen, die wegen eines Zammad-Fehlers noch nicht uebertragen wurden. Mit `Senden` werden die offenen Eintraege erneut nach Zammad gepusht. ## Adminbereich Der feste Admin ist nur fuer die Systemverwaltung vorgesehen. Er kann: - Benutzer anlegen - Benutzer bearbeiten - Passwoerter fuer Benutzer setzen - Zammad-Organisationen synchronisieren - Restore-faehige SQL-Backups herunterladen Neue Benutzer erhalten automatisch die Rolle `User`. Eine Rollenauswahl gibt es nicht. Der feste Admin kann nicht deaktiviert oder zur User-Rolle herabgestuft werden. Der Admin sieht keine Timer, keine Auswertungen, keine Statistiken, keine fixen Abrechnungen und keinen Monatsabschluss. Diese Bereiche sind nur fuer normale Benutzer vorgesehen. Der Datenbankexport im Adminbereich erzeugt eine SQL-Datei fuer einen kompletten Restore. Fuer einen Umzug wird auf dem Zielsystem zuerst TicketTracker gestartet, damit die Migrationen die Tabellen anlegen. Danach wird die SQL-Datei mit `psql` in die Ziel-Datenbank eingespielt. Der Export enthaelt alle Tabellen, die fuer den Stand des Systems notwendig sind: Benutzer, Einstellungen, Organisationen, Tickets, Sessions, Teamspace-Werte, fixe Abrechnungen, Ausnahmen und Monatsabschluesse. Er ist kein reiner CSV-Auszug, sondern ein Restore-Backup. Im laufenden System kann der Admin ein SQL-Backup ebenfalls im Adminbereich wieder einspielen. Nach dem Hochladen muss zuerst die Strukturpruefung erfolgreich durchlaufen. Erst danach wird der Restore-Button freigegeben. Vor dem Restore erscheint ein Hinweis, weil alle aktuellen Daten ersetzt werden. Nach dem Restore ist eine neue Anmeldung mit den Zugangsdaten aus dem Backup notwendig. ## Zammad Sync Der Zammad-Sync ist nur fuer Administratoren sichtbar. Beim Sync werden Organisationen aus Zammad in die lokale TicketTracker-Datenbank geschrieben. Gespeichert werden: - interne ID - Zammad-ID - Name - Zeitstempel Neue Organisationen werden hinzugefuegt, geaenderte Namen aktualisiert und nicht mehr vorhandene Organisationen entfernt beziehungsweise von bestehenden Tickets und Sessions geloest. ## Typischer Monatsablauf 1. Im Alltag Sessions per Timer oder Nachtragen erfassen. 2. Optional fixe Abrechnungen pflegen, damit wiederkehrende Sessions automatisch erzeugt werden. 3. Am Monatsende `Tickets` oeffnen. 4. Monat auswaehlen. 5. Offene Sessions pruefen. 6. Pro Ticket jede Session als `Abrechenbar`, `Abgerechnet` oder `Nicht abrechenbar` markieren. 7. Pro Tag und Ticket die wirklich in Teamspace eingetragene Zeit im Feld `Teamspace` pflegen. 8. `Monatsabschluss` oeffnen. 9. Offene Bewertungen abarbeiten. 10. Tage ohne Teamspace-Wert pruefen oder zur Kenntnis nehmen. 11. Wenn keine Sessions im Monat mehr offen sind, Monat abschliessen. ## Hinweise - Ticketnummern koennen ueber das Copy-Icon schnell in die Zwischenablage kopiert werden. - Die App aktualisiert Ticket- und Statistikdaten automatisch beim Wechsel von Monat oder Tag. - Eine zurueckgenommene Bewertung macht eine Session wieder offen und kann den Monatsabschluss wieder verhindern. - Teamspace-Zeiten sind Tageswerte pro Ticket und Benutzer. Sie sind nicht an einzelne Sessions gebunden. - Fragezeichen-Icons oeffnen kurze Hilfen direkt in der aktuellen Ansicht.