# WOMS – Ticketsystem von WEBklar Internes Ticketsystem unter https://ticket.webklar.com: Tickets, Arbeitsblätter mit Zeiterfassung, Kunden und Leads, Website-Projekte, Planboard und Rechnungen (nur anzeigen; Rechnungen werden in InvoiceNinja geschrieben). React/Vite im Browser, Daten in Appwrite (Projekt `6a1058610003c5a13a05`, Datenbank `woms-database`, API unter `https://ticket.webklar.com/v1`). ## Entwickeln und live stellen - Lokal starten: siehe [LOCAL_DEV.md](./LOCAL_DEV.md) (Vite-Proxy + `.env.local`). - Live ist der Branch `test` im Gitea-Repo `JUSN/tickte-system`. Ein Push löst auf dem Server Build und Deploy aus. - Achtung: Der Webhook baut **jeden** gepushten Branch und stellt ihn live. Feature-Branches deshalb nicht pushen; live geht es mit `git push origin :test`. ## Datenmodell (Kurzfassung) Datum speichert WOMS als Text `dd.mm.yyyy`, Uhrzeiten als `hhmm` (z. B. `0930`). | Collection | Inhalt | Wichtige Felder | |---|---|---| | `workorders` | Tickets | `woid` (fortlaufend ab 10000), `topic`, `details`, `status`, `priority`, `type` (Webpage, Migration, Project, Akquise), `serviceType`, `customerId`/`customerName`, `assignedTo`/`assignedName`, `requestedBy`, `startDate`/`startTime`/`endTime`, `deadline` | | `worksheets` | Arbeitsblätter | `wsid` (fortlaufend ab 100000), `woid` + `workorderId`, `employeeId`/`employeeName`, `serviceType`, `oldStatus`/`newStatus`, `totalTime` (Minuten), `startDate`/`startTime`/`endDate`/`endTime`, `details`, `isComment`, `countsToPlan` (Abo-Stunden) | | `customers` | Kunden und Leads | `code` (Kundennummer), `name`/`companyName`, `customerStatus` (z. B. lead, customer, lost), `archived`, Rechnungsadresse, `invoiceNinjaClientId`, Portal-Zugang | | `employees` | Mitarbeiter | `userId` (Appwrite-Benutzer), `displayName`, `email`, `shortcode` (Kürzel) | | `websiteProjects` | Website-Projekte und Vorschauen | `customerId` (steuert, was der Kunde im Portal sieht), `ticketId` (Ziel der Git-Push-Arbeitsblätter), Subdomain, Repo | | `leads`, `leadPipeline`, `leadSettings` | Lead-Automatik | Recherche-Ergebnisse, Pipeline-Schritte, Sucheinstellungen | | `roadmaps`, `roadmapNodes` | Projektpläne | Plan mit Schritten, verknüpft mit einem Ticket | | `config` | alte Einstellungen | wird von WOMS nicht mehr gelesen (Prioritäten, alte Listen) | Zusammenspiel mit anderen Systemen: - **Kundenportal** (project.webklar.com): legt bei jedem Git-Push ein Arbeitsblatt an (`employeeId` `gitea`, `serviceType` `GIT`, ohne Beginn). Die Zeit wird in WOMS nachgetragen, danach zählt sie als Arbeitszeit. Termine aus der Rechnungsanalyse landen am Akquise-Ticket des Kunden und erscheinen im Planboard. Kunden-, Mitarbeiter- und Projektverwaltung laufen über die Admin-API des Portals. - **ticket-integrations** (`/api/integrations`): Proxy zu InvoiceNinja (Rechnungen anzeigen, Kunden verknüpfen). Die Paperless-Routen dort nutzt WOMS nicht mehr; Paperless selbst ist gestoppt.