feat: Optimierung der Einstellungen speichern und Fehlerbehandlung verbessern

This commit is contained in:
Till Tomczak 2025-05-29 19:33:11 +02:00
parent 68f593764f
commit 71ebfe7297

View File

@ -5124,6 +5124,7 @@ def perform_batch_operation():
@login_required
def optimization_settings():
"""Optimierungs-Einstellungen abrufen und speichern"""
db_session = get_db_session()
if request.method == 'GET':
try:
# Standard-Einstellungen oder benutzerdefinierte laden
@ -5156,7 +5157,6 @@ def optimization_settings():
'success': False,
'error': 'Fehler beim Laden der Einstellungen'
}), 500
elif request.method == 'POST':
try:
settings = request.get_json()
@ -5168,8 +5168,21 @@ def optimization_settings():
'error': 'Ungültige Optimierungs-Einstellungen'
}), 400
# Hier könnten die Einstellungen in der Datenbank gespeichert werden
# Momentan werden sie nur im Browser-localStorage gespeichert
# Einstellungen in der Session speichern
user_settings = session.get('user_settings', {})
if 'optimization' not in user_settings:
user_settings['optimization'] = {}
# Aktualisiere die Optimierungseinstellungen
user_settings['optimization'].update(settings)
session['user_settings'] = user_settings
# Einstellungen in der Datenbank speichern, wenn möglich
if hasattr(current_user, 'settings'):
import json
current_user.settings = json.dumps(user_settings)
current_user.updated_at = datetime.now()
db_session.commit()
app_logger.info(f"Optimierungs-Einstellungen für Benutzer {current_user.id} aktualisiert")
@ -5179,10 +5192,11 @@ def optimization_settings():
})
except Exception as e:
db_session.rollback()
app_logger.error(f"Fehler beim Speichern der Optimierungs-Einstellungen: {str(e)}")
return jsonify({
'success': False,
'error': 'Fehler beim Speichern der Einstellungen'
'error': f'Fehler beim Speichern der Einstellungen: {str(e)}'
}), 500
# ===== OPTIMIERUNGS-ALGORITHMUS-FUNKTIONEN =====