Kontaktadresse: Neues Feld Position, Filter-Funktionen null-sicher, Projektnamen-Spalte entfernt

- Server: Neue Spalte position in Kontaktadresse-Modell (String(200), nullable)
- Server: Migration V01_04 (ALTER TABLE kontaktadressen ADD COLUMN position)
- Server: position in Geschäftslogik create/update aufgenommen
- Server: CLI-Musterdaten um Position ergänzt (Geschäftsführer, IT-Leiter etc.)
- Client: position in iKontaktadresse-Interface, View nach Firma, Columnmapper, Filter
- Client: Projektnamen-Spalte aus Kontaktadressenliste entfernt (steht in Überschrift)
- Client: Filter-Funktionen in allen Listen null-sicher (kunde, kontakt, projekt, kontaktadresse, call_log)

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
gg committed 2026-09-04 14:58:52 +02:00
1 parent b510c50497
commit e9a2f48ede
10 files changed
+59 -36

No files matched your search

+5 -5
View File
@@ -91,11 +91,11 @@ export const projektliste: m.ClosureComponent = (vnode) => {
const filterFunction = (node: iTreenode, searchvalue: string): boolean => {
let projekt: iProjekt = node.nodevalue
let searchLower = searchvalue.toLowerCase()
return projekt.kunden_name.toLowerCase().includes(searchLower) ||
projekt.projektname.toLowerCase().includes(searchLower) ||
projekt.zweck.toLowerCase().includes(searchLower) ||
projekt.verantwortlicher.toLowerCase().includes(searchLower) ||
projekt.startdatum.includes(searchLower)
return (projekt.kunden_name || "").toLowerCase().includes(searchLower) ||
(projekt.projektname || "").toLowerCase().includes(searchLower) ||
(projekt.zweck || "").toLowerCase().includes(searchLower) ||
(projekt.verantwortlicher || "").toLowerCase().includes(searchLower) ||
(projekt.startdatum || "").includes(searchLower)
}
return {