Projektdateien hinzufügen.
This commit is contained in:
128
EPI2CrewbrainFile/README.md
Normal file
128
EPI2CrewbrainFile/README.md
Normal 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
|
||||
|
||||
Reference in New Issue
Block a user