diff --git a/CHANGELOG.md b/CHANGELOG.md index 6fff1e4..9cd2b0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ Alle wichtigen Änderungen an diesem Projekt werden in dieser Datei dokumentiert Das Format basiert auf [Keep a Changelog](https://keepachangelog.com/de/1.0.0/), und dieses Projekt adhäriert zu [Semantic Versioning](https://semver.org/lang/de/). +## [1.2.15] - 2024-03-20 +### Hinzugefügt +- Autovervollständigung für das Ort-Feld +- Neue API-Route für Ortsvorschläge +- Optimierte SQL-Abfragen für die Ortssuche + ## [1.2.14] - 2024-03-20 ### Hinzugefügt - Autovervollständigung für das Fachrichtungsfeld diff --git a/README.md b/README.md index 8fb7b7d..8c9c6d1 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Eine moderne Webanwendung zur Suche und Verwaltung von Kundendaten, die MEDISOFT ## Version -Aktuelle Version: 1.2.14 +Aktuelle Version: 1.2.15 ## Installation diff --git a/app.py b/app.py index 3b69056..c3f4ec3 100644 --- a/app.py +++ b/app.py @@ -18,7 +18,7 @@ logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) # Version der Anwendung -VERSION = "1.2.14" +VERSION = "1.2.15" # Pfad zur Datenbank DB_FILE = 'data/customers.db' @@ -374,6 +374,32 @@ def get_fachrichtungen(): logger.error(f"Fehler beim Abrufen der Fachrichtungen: {str(e)}") return jsonify([]) +@app.route('/api/orte') +def get_orte(): + try: + search_term = request.args.get('q', '').lower() + conn = get_db_connection() + c = conn.cursor() + + # Hole alle eindeutigen Orte, die mit dem Suchbegriff übereinstimmen + c.execute(''' + SELECT DISTINCT ort + FROM customers + WHERE ort IS NOT NULL + AND ort != '' + AND LOWER(ort) LIKE ? + ORDER BY ort + LIMIT 10 + ''', (f'%{search_term}%',)) + + orte = [row[0] for row in c.fetchall()] + conn.close() + + return jsonify(orte) + except Exception as e: + logger.error(f"Fehler beim Abrufen der Orte: {str(e)}") + return jsonify([]) + def init_app(app): """Initialisiert die Anwendung mit allen notwendigen Einstellungen.""" with app.app_context(): diff --git a/templates/index.html b/templates/index.html index 9c5d7b9..f6e4e3f 100644 --- a/templates/index.html +++ b/templates/index.html @@ -107,6 +107,8 @@ \ No newline at end of file