Commit Graph
7 Commits
Author SHA1 Message Date
gg e04a52857a Server+Client: REST-API für Entität Projekt, Kontakt auf REST umgestellt, ID-basiertes Laden, CLI-Musterprojekte, VS-Code Task
- Server: ORM-Modell Projekt (Tabelle projekte) mit FK kunden_id, Relationship zu Kunde
- Server: Geschäftslogik projekt.py (get/create/update/delete)
- Server: DB-Migration V01_02 (projekte-Tabelle)
- Server: REST-Endpunkte /xhr/projekt/* mit Autorisierung
- Server: CLI init-db legt Muster-Projekte je Kunde an (1-3)
- Client: kontakt.ts auf REST umgestellt, In-Memory entfernt, snake_case
- Client: projekt.ts auf REST umgestellt, In-Memory behalten für call_log/kontaktadresse
- Client: ID-basiertes Laden (nur ID in Route-Params, fetchById im oninit)
- Client: Kundenname in Überschrift von Kontaktliste/View und Projektliste/View
- Client: Select-Widget entfernt (Kunde voreingestellt), Hidden-Input für kunden_id
- Client: kunde.ts showProjekte/showKontakte auf kunden_id geändert
- Client: call_log.ts/kontaktadresse.ts Feldzugriffe auf iProjekt snake_case angepasst
- AGENTS.md: Vorgehensweise ID-basiertes Laden hinterlegt, Branch-Regel formuliert
- VS-Code Task "Flask: init-db" mit venv-Pfaden

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-09-04 12:03:52 +02:00
gg 15d4e2ac48 Client: Kunden-Datenhaltung auf Server-REST-Endpunkte umgestellt
In-Memory-Datenhaltung (kundenDaten, getNewKundeId, addKunde, updateKunde,
getKunden) aus kunde.ts entfernt. Die Kundenliste und das Formular nutzen
jetzt fetchKunden/createKundeREST/updateKundeREST asynchron vom Server.

projekt.ts, kontakt.ts, call_log.ts: getKunden() durch asynchrones
fetchKunden() im oninit ersetzt, Kundenliste im Closure-State gehalten.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-09-03 16:43:50 +02:00
gg 3e1791d316 Kontaktadressen: Modell, Liste und Formular für Akquise-Ziele auf Projektebene
Neue Entität "Kontaktadresse" (Akquise-Ziel, FK projektId) analog zu Kontakten:
- Client/models/kontaktadresse.ts: Interface, In-Memory-Mock, CRUD- und REST-Stubs
- Client/Components/kontaktadresse.ts: Kontaktadressenliste (Treetable, projektgefiltert) und Stammblatt-Formular
- index.ts: Routen /kontaktadresseliste und /kontaktadresse (kein Hauptmenü-Eintrag)
- projekt.ts: Kontaktadressen-Button in Projektliste (kompakt in einer Zelle) und im Projekt-Formular (nur bei bestehendem Projekt)

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-09-01 10:31:25 +02:00
gg 9af789b996 Kontakte: Modell, Liste und Formular für Ansprechpartner beim Kunden
Neue Entität "Kontakt" (Ansprechpartner, FK kundenId) analog zu Projekte:
- Client/models/kontakt.ts: Interface, In-Memory-Mock, CRUD- und REST-Stubs
- Client/Components/kontakt.ts: Kontaktliste (Treetable, kundengefiltert) und Stammblatt-Formular
- index.ts: Routen /kontaktliste und /kontakt (kein Hauptmenü-Eintrag)
- kunde.ts: Kontakte-Button in Kundenliste und im Kunden-Formular (nur bei bestehendem Kunden)

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-09-01 09:40:44 +02:00
gg 1c99dcf326 Gesprächsnotizen: Datenmodell ausgelagert, Neuanlage mit Selects und responsives Design
Datenmodell und In-Memory-Funktionen für Gesprächsnotizen in
Client/models/call_log.ts ausgelagert (inkl. REST-API-Gerüst). call_log.ts
nutzt das Modell; Container auf w3-container.w3-auto umgestellt.
Call_Log-Formular mit Select-Widgets für Kunde und Projekt (Projekt-Optionen
abhängig vom gewählten Kunden, Voreinstellung readonly bei projektfiltrierter
Liste). call_log_liste: TopbarButton zur Neuanlage, Vorbelegung bei
projektgefilterter Liste. projekt-Modell um Hilfsfunktion getProjektById ergänzt.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-08-31 18:25:21 +02:00
gg de7e6948f8 Datenmodelle für Kunden und Projekte ausgelagert, responsives Design und Projekt-Neuanlage
Kunden- und Projekt-Datenmodelle inkl. In-Memory-Funktionen und REST-API-Gerüst
in Client/models/{kunde,projekt}.ts ausgelagert. Views (kunde.ts, projekt.ts) nutzen
diese Modelle; Container auf w3-container.w3-auto (responsive) umgestellt.
Projektliste: TopbarButton zur Neuanlage; Projektformular mit Select-Widget zur
Kundenwahl (voreingestellt bei kundengefilterter Liste), submit/cancel aktiviert.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-08-31 15:38:48 +02:00
gg 385892ac15 Datenmodell für Kunden in Verzeichnis models ausgelagert: In-Memory-Speicher und REST-API-Funktionen implementiert 2026-08-31 14:08:55 +02:00