📝 "Refactor session handling

This commit is contained in:
2025-06-13 07:32:57 +02:00
parent 691a4f2d41
commit eaf415c80f
86 changed files with 603 additions and 720 deletions

View File

@@ -772,6 +772,39 @@ def api_update_request(request_id):
logger.error(f"Fehler beim Aktualisieren der Gastanfrage: {str(e)}")
return jsonify({"error": "Fehler beim Verarbeiten der Anfrage"}), 500
@guest_blueprint.route('/api/admin/requests/<int:request_id>', methods=['DELETE'])
@approver_required
def api_delete_request(request_id):
"""Gastanfrage löschen (nur für Admins)."""
try:
with get_cached_session() as db_session:
guest_request = db_session.query(GuestRequest).filter_by(id=request_id).first()
if not guest_request:
return jsonify({"error": "Anfrage nicht gefunden"}), 404
# Falls ein Job verknüpft ist, diesen auch löschen
if guest_request.job_id:
job = db_session.query(Job).filter_by(id=guest_request.job_id).first()
if job:
db_session.delete(job)
# Gastanfrage löschen
db_session.delete(guest_request)
db_session.commit()
logger.info(f"Gastanfrage {request_id} gelöscht von Admin {current_user.id} ({current_user.username})")
return jsonify({
"success": True,
"message": "Anfrage erfolgreich gelöscht",
"deleted_by": current_user.username,
"deleted_at": datetime.now().isoformat()
})
except Exception as e:
logger.error(f"Fehler beim Löschen der Gastanfrage: {str(e)}")
return jsonify({"error": "Fehler beim Verarbeiten der Anfrage"}), 500
# Admin-Routen
@guest_blueprint.route('/admin/requests', methods=['GET'])
@approver_required