6.4 KiB
6.4 KiB
Appwrite Setup-Anleitung für WOMS 2.0
Diese Anleitung führt dich Schritt für Schritt durch die Einrichtung von Appwrite für dein Ticket-System.
Schritt 1: Appwrite Account erstellen
- Gehe zu https://cloud.appwrite.io
- Erstelle einen kostenlosen Account oder logge dich ein
- Erstelle ein neues Projekt (z.B. "WOMS" oder "Ticket-System")
Schritt 2: Projekt-Konfiguration
- Öffne dein Projekt im Appwrite Dashboard
- Gehe zu Settings → General
- Kopiere deine Project ID (wird später in der
.envDatei benötigt)
Schritt 3: Datenbank erstellen
- Gehe zu Databases im linken Menü
- Klicke auf Create Database
- Name:
woms-database(oder ein anderer Name - muss dann in.envangepasst werden) - Kopiere die Database ID (wird später in der
.envDatei benötigt)
Schritt 4: Collections erstellen
Collection 1: workorders
- Klicke auf Create Collection
- Collection ID:
workorders - Name:
Work Orders
Attribute hinzufügen:
| Attribut Name | Typ | Größe | Required | Array | Default |
|---|---|---|---|---|---|
topic |
string | 255 | ✓ | - | - |
title |
string | 255 | - | - | - |
details |
string | 10000 | - | - | - |
description |
string | 5000 | - | - | - |
status |
string | 50 | ✓ | - | Open |
priority |
integer | - | ✓ | - | 1 |
type |
string | 50 | - | - | - |
systemType |
string | 50 | - | - | - |
responseLevel |
string | 50 | - | - | - |
serviceType |
string | 50 | - | - | Remote |
customerId |
string | 50 | - | - | - |
customerName |
string | 255 | - | - | - |
customerLocation |
string | 255 | - | - | - |
assignedTo |
string | 50 | - | - | - |
assignedName |
string | 255 | - | - | - |
requestedBy |
string | 255 | - | - | - |
requestedFor |
string | 255 | - | - | - |
startDate |
string | 50 | - | - | - |
startTime |
string | 10 | - | - | - |
deadline |
string | 50 | - | - | - |
endTime |
string | 10 | - | - | - |
estimate |
string | 50 | - | - | - |
mailCopyTo |
string | 255 | - | - | - |
sendNotification |
boolean | - | - | - | false |
approvalStatus |
string | 50 | - | - | - |
woid |
string | 10 | - | - | - |
createdAt |
datetime | - | - | - | - |
Hinweis zu WOID:
woid= Work Order ID (5-stellig, z.B. "10000", "10001", etc.)- Wird automatisch vom System generiert
- WSID (Work Sheet ID) ist NICHT Teil dieser Collection - siehe
worksheetsCollection!
Indexes erstellen:
status(ASC)priority(ASC)type(ASC)customerId(ASC)assignedTo(ASC)woid(ASC) - für schnelle WOID-Suchewsid(ASC) - für schnelle WSID-SuchecreatedAt(DESC)
Berechtigungen (Permissions):
- Read:
Any(oderUserswenn nur eingeloggte Benutzer sehen sollen) - Create:
Users(nur eingeloggte Benutzer können erstellen) - Update:
Users(nur eingeloggte Benutzer können aktualisieren) - Delete:
Users(nur eingeloggte Benutzer können löschen)
Collection 2: customers (optional, für zukünftige Features)
- Klicke auf Create Collection
- Collection ID:
customers - Name:
Customers
Attribute hinzufügen:
| Attribut Name | Typ | Größe | Required |
|---|---|---|---|
name |
string | 255 | ✓ |
code |
string | 50 | - |
email |
string | 255 | - |
phone |
string | 50 | - |
location |
string | 255 | - |
Collection 3: users (optional, für zukünftige Features)
- Klicke auf Create Collection
- Collection ID:
users - Name:
Users
Attribute hinzufügen:
| Attribut Name | Typ | Größe | Required |
|---|---|---|---|
name |
string | 255 | ✓ |
email |
string | 255 | ✓ |
role |
string | 50 | - |
Schritt 5: Authentication einrichten
- Gehe zu Auth im linken Menü
- Aktiviere Email/Password als Auth-Methode
- (Optional) Aktiviere weitere Auth-Methoden wie Google, GitHub, etc.
Schritt 6: Storage Bucket (optional, für Datei-Uploads)
- Gehe zu Storage im linken Menü
- Klicke auf Create Bucket
- Bucket ID:
woms-attachments - Name:
WOMS Attachments - File Security:
BucketoderApp(je nach Anforderung)
Berechtigungen:
- Read:
AnyoderUsers - Create:
Users - Update:
Users - Delete:
Users
Schritt 7: Umgebungsvariablen konfigurieren
- Erstelle eine
.envDatei im Root-Verzeichnis deines Projekts:
VITE_APPWRITE_ENDPOINT=https://cloud.appwrite.io/v1
VITE_APPWRITE_PROJECT_ID=deine-project-id-hier
VITE_APPWRITE_DATABASE_ID=woms-database
- Ersetze
deine-project-id-hiermit deiner tatsächlichen Project ID aus Schritt 2 - Ersetze
woms-databasemit deiner Database ID aus Schritt 3 (falls anders benannt)
Wichtig: Die .env Datei sollte NICHT in Git committed werden. Sie ist bereits in .gitignore aufgeführt.
Schritt 8: App starten
- Installiere Dependencies (falls noch nicht geschehen):
npm install
- Starte den Development-Server:
npm run dev
- Öffne die App im Browser (normalerweise
http://localhost:5173)
Schritt 9: Ersten Benutzer erstellen
- Gehe zur Login-Seite
- Klicke auf "Register" (falls vorhanden) oder erstelle einen Benutzer direkt in Appwrite:
- Gehe zu Auth → Users im Appwrite Dashboard
- Klicke auf Create User
- Gib Email und Passwort ein
- Logge dich mit diesen Credentials ein
Fehlerbehebung
"Project ID is missing"
- Stelle sicher, dass die
.envDatei existiert und die richtigeVITE_APPWRITE_PROJECT_IDenthält - Starte den Dev-Server neu nach Änderungen an der
.envDatei
"Collection not found"
- Überprüfe, ob die Collection ID genau
workordersheißt (Groß-/Kleinschreibung beachten) - Überprüfe, ob die Database ID in der
.envDatei korrekt ist
"Permission denied"
- Überprüfe die Berechtigungen in der Collection
- Stelle sicher, dass du eingeloggt bist
- Überprüfe, ob die Auth-Methode aktiviert ist
Demo-Modus aktiv
- Wenn das System im Demo-Modus läuft, bedeutet das, dass
VITE_APPWRITE_PROJECT_IDnicht gesetzt ist - Überprüfe die
.envDatei und starte den Server neu
Nächste Schritte
Nach erfolgreicher Einrichtung kannst du:
- Tickets erstellen, bearbeiten und löschen
- Status und Priorität ändern
- Tickets filtern und durchsuchen
- (Optional) Dateien zu Tickets hochladen
Viel Erfolg! 🚀