Erweitere VoTiAn NG um Fachfunktionen und verbessere die Listenoberfläche

Ergänze Auftragsbearbeitung, Disposition, Stammdaten, Kunden- und
Transporteurportale, Lagerverwaltung, Abrechnung, Exporte und Statistik.
Füge Kontoeinstellungen, Mitteilungen, Automatikdienste und Betriebsstatus
sowie die zugehörigen Tests und PHP-Abgleichsdokumentation hinzu.

Vergrößere die persönlichen Auftragslisten auf einheitliche Höhen und
richte Statusanzeigen sowie die Ranking-Vorschau-Steuerelemente bündig aus.

Validierung: 44 Frontendtests und Produktionsbuild erfolgreich.
Backend funktional unverändert gegenüber dem vollständigen Lauf mit 1.624
erfolgreichen und drei übersprungenen Tests. Layout im Browser und lokale
Bereitstellung geprüft.
This commit is contained in:
Sven committed 2026-10-20 11:19:43 +02:00
1 parent 363bc27c26
commit 781a2b82dc
1165 files changed
+74986 -1028

No files matched your search

@@ -10,6 +10,7 @@ class CrmController {
CrmController(ContactService contacts,SalesAnalytics sales){this.contacts=contacts;this.sales=sales;}
@GetMapping("/options") Map<String,Object> options(Authentication a){return sales.options(user(a));}
@GetMapping("/contacts/schema") Map<String,Object> schema(Authentication a,@RequestParam long headquarters){return contacts.schema(user(a),headquarters);}
@GetMapping("/contacts/draft") Map<String,Object> draft(Authentication a,@RequestParam long headquarters,@RequestParam(required=false) Long customerId){return contacts.draft(user(a),headquarters,customerId);}
@PostMapping("/contacts/query") List<Map<String,Object>> contacts(Authentication a,@RequestBody ContactService.Query q){return contacts.list(user(a),q);}
@GetMapping("/contacts/{id}") Map<String,Object> contact(Authentication a,@PathVariable long id,@RequestParam long headquarters){return contacts.get(user(a),headquarters,id);}
@GetMapping("/contacts/{id}/history") List<Map<String,Object>> history(Authentication a,@PathVariable long id,@RequestParam long headquarters){return contacts.history(user(a),headquarters,id);}