Erste Version mit spezifischen Suchfeldern und Teilen-Funktion
This commit is contained in:
50
README.md
50
README.md
@@ -5,16 +5,18 @@ Eine Flask-basierte Webanwendung zur Suche in Kundendaten aus einer CSV-Datei.
|
||||
## Features
|
||||
|
||||
- Live-Suche während der Eingabe
|
||||
- Suche nach:
|
||||
- Spezifische Suchfelder für:
|
||||
- Kundennummer
|
||||
- Name (Vor- und Nachname)
|
||||
- Fachrichtung
|
||||
- Ort
|
||||
- Allgemeine Suche über alle Felder
|
||||
- Klickbare Links für:
|
||||
- Telefonnummern (tel:)
|
||||
- E-Mail-Adressen (mailto:)
|
||||
- Adressen (Google Maps)
|
||||
- Kundennummern (KKBefe-System)
|
||||
- Teilen-Funktion für einzelne Suchergebnisse
|
||||
- Responsive Design mit Bootstrap
|
||||
- Docker-Container-Unterstützung
|
||||
|
||||
@@ -37,6 +39,7 @@ medi-customers/
|
||||
├── spezexpo.csv # Kundendaten
|
||||
├── requirements.txt # Python-Abhängigkeiten
|
||||
├── Dockerfile # Docker-Konfiguration
|
||||
├── docker-compose.yml # Docker Compose Konfiguration
|
||||
└── .dockerignore # Docker-Ignore-Datei
|
||||
```
|
||||
|
||||
@@ -76,14 +79,11 @@ Die Anwendung erwartet eine CSV-Datei (`spezexpo.csv`) mit folgenden Spalten:
|
||||
### Docker-Container
|
||||
|
||||
1. Docker installieren
|
||||
2. Container bauen:
|
||||
2. Container mit Docker Compose starten:
|
||||
```bash
|
||||
docker build -t medi-customers .
|
||||
```
|
||||
3. Container starten:
|
||||
```bash
|
||||
docker run -d -p 5000:5000 --name medi-customers medi-customers
|
||||
docker-compose up --build
|
||||
```
|
||||
Die Anwendung ist dann unter `http://localhost:5001` erreichbar.
|
||||
|
||||
## API-Endpunkte
|
||||
|
||||
@@ -91,16 +91,22 @@ Die Anwendung erwartet eine CSV-Datei (`spezexpo.csv`) mit folgenden Spalten:
|
||||
- Rendert die Hauptseite
|
||||
|
||||
### GET /search
|
||||
- Sucht nach Kunden basierend auf dem Query-Parameter
|
||||
- Parameter: `q` (Suchbegriff)
|
||||
- Sucht nach Kunden basierend auf verschiedenen Parametern
|
||||
- Parameter:
|
||||
- `name`: Suche nach Vor- oder Nachname
|
||||
- `ort`: Suche nach Ort
|
||||
- `kundennummer`: Suche nach Kundennummer
|
||||
- `fachrichtung`: Suche nach Fachrichtung
|
||||
- `q`: Allgemeine Suche über alle Felder
|
||||
- Returns: JSON-Array mit gefundenen Kunden
|
||||
|
||||
## Frontend-Funktionen
|
||||
|
||||
### Suchfunktion
|
||||
- Live-Suche mit 300ms Debounce
|
||||
- Minimale Suchlänge: 2 Zeichen
|
||||
- Suche wird bei Enter-Taste sofort ausgeführt
|
||||
- Spezifische Suchfelder für präzise Suche
|
||||
- Allgemeine Suche für breite Suche
|
||||
- Kombinierbare Suchkriterien
|
||||
|
||||
### Link-Generierung
|
||||
- `createPhoneLink()`: Erstellt tel:-Links mit führender 0
|
||||
@@ -108,6 +114,11 @@ Die Anwendung erwartet eine CSV-Datei (`spezexpo.csv`) mit folgenden Spalten:
|
||||
- `createAddressLink()`: Erstellt Google Maps-Links
|
||||
- `createCustomerLink()`: Erstellt KKBefe-System-Links
|
||||
|
||||
### Teilen-Funktion
|
||||
- Individueller Teilen-Button für jedes Suchergebnis
|
||||
- Kopiert einen direkten Link zum spezifischen Kunden
|
||||
- Visuelles Feedback beim Kopieren
|
||||
|
||||
## Fehlerbehandlung
|
||||
|
||||
- Logging für Backend-Fehler
|
||||
@@ -132,25 +143,24 @@ python app.py
|
||||
### Container-Verwaltung
|
||||
```bash
|
||||
# Container stoppen
|
||||
docker stop medi-customers
|
||||
docker-compose down
|
||||
|
||||
# Container starten
|
||||
docker start medi-customers
|
||||
docker-compose up
|
||||
|
||||
# Container im Hintergrund starten
|
||||
docker-compose up -d
|
||||
|
||||
# Container-Logs anzeigen
|
||||
docker logs medi-customers
|
||||
|
||||
# Container entfernen
|
||||
docker rm medi-customers
|
||||
docker-compose logs -f
|
||||
```
|
||||
|
||||
### Datenaktualisierung
|
||||
1. CSV-Datei aktualisieren
|
||||
2. Container neu bauen und starten:
|
||||
```bash
|
||||
docker stop medi-customers
|
||||
docker build -t medi-customers .
|
||||
docker run -d -p 5000:5000 --name medi-customers medi-customers
|
||||
docker-compose down
|
||||
docker-compose up --build
|
||||
```
|
||||
|
||||
## Sicherheit
|
||||
|
Reference in New Issue
Block a user