Projektdateien hinzufügen.

This commit is contained in:
2026-01-21 10:50:17 +01:00
parent 5fa6969fb3
commit 0709c9fe05
8 changed files with 950 additions and 0 deletions

128
EPI2CrewbrainFile/README.md Normal file
View File

@@ -0,0 +1,128 @@
# EPI → CrewBrain Dokumenten-Uploader
Dieses Tool überträgt PDF-Dokumente (Angebote, Aufträge, Lieferscheine) automatisiert aus definierten Ordnern in **CrewBrain** und ordnet sie den passenden Jobs/Events zu.
Die Zuordnung erfolgt über die **EventIDManual** (z. B. `4843-01`), die aus dem Dateinamen extrahiert wird.
---
## Voraussetzungen in CrewBrain (wichtig)
Damit Dokumente hochgeladen werden können, **müssen in CrewBrain passende Zusatzinformationen vom Typ „Dokument“ angelegt sein**.
### 1. Zusatzinformationen anlegen
Öffne in CrewBrain:
https://<crewbrain-domain>/administration/jobs/jobdata
(z. B. `https://vt-media.crewbrain.com/administration/jobs/jobdata`)
Lege dort für **jede Dokumentart** eine Zusatzinformation an:
- Angebot
- Auftrag
- Lieferschein
**Wichtig:**
- Der Typ der Zusatzinformation **muss „Dokument“ sein**
- Jede Zusatzinformation erhält intern eine **TypeID**
---
### 2. TypeID ermitteln
Nach dem Anlegen oder Bearbeiten einer Zusatzinformation kannst du die **TypeID** direkt aus der URL ablesen:
Beispiel:
https://vt-media.crewbrain.com/administration/jobs/jobdata/additionaldatatype/2
➡️ **TypeID = 2**
Diese TypeID wird später in der Anwendung konfiguriert.
---
## Konfiguration (`appsettings.json`)
### Relevanter Bereich: `Crewbrain`
```json
"Crewbrain": {
"ApiBase": "https://vt-media.crewbrain.com/api",
"Upload": {
"Angebot": {
"TypeId": 1,
"OverwriteSingleDocument": false
},
"Auftrag": {
"TypeId": 0,
"OverwriteSingleDocument": true
},
"Lieferschein": {
"TypeId": 2,
"OverwriteSingleDocument": false
}
},
"TokenAuth": {
"AccessToken": ""
}
}
Erklärung der Felder
Feld Bedeutung
ApiBase Basis-URL der CrewBrain API
Upload.<Typ>.TypeId TypeID der Zusatzinformation (siehe oben)
Upload.<Typ>.OverwriteSingleDocument Ersetzt vorhandenes Dokument (nur erlaubt bei DOCUMENT_SINGLE)
TokenAuth.AccessToken Wird automatisch vom Tool gesetzt
Dokumentverarbeitung
Unterstützte Dateitypen: PDF
Event-Zuordnung erfolgt über EventIDManual im Dateinamen
Unterstützte Formate:
905-01
4843-01
12345-01
Bei mehreren Treffern im Dateinamen wird automatisch die längste ID verwendet
Beispiel
ABM4843-01-Kunde-Angebot.pdf
→ EventIDManual = 4843-01
Token-Authentifizierung
Das Tool verwendet CrewBrain Access Tokens (X-API-KEY):
Beim ersten Start:
Benutzername & Passwort werden einmalig abgefragt
Token wird automatisch gespeichert
Tokens bleiben 14 Tage nach letzter Nutzung gültig
Bei 401/403 wird automatisch ein neuer Token angefordert
⚠️ Passwörter werden nicht gespeichert
Ergebnis
Erfolgreich hochgeladene Dateien werden in einen Uploaded/-Unterordner verschoben
Bei Namenskonflikten wird ein Zeitstempel vor der Dateiendung ergänzt:
Angebot_4843-01.pdf
→ Angebot_4843-01_202601210915301234.pdf
Hinweise
Fehlerhafte oder nicht zuordenbare Dateien werden nicht verschoben
Alle API-Requests (inkl. Payload-Preview) sind im DEBUG-Log sichtbar
Base64-Inhalte werden im Log nicht vollständig ausgegeben