Code reviewed and issue fixed.
This commit is contained in:
@@ -3,7 +3,7 @@ import logging
|
||||
import requests
|
||||
from flask import Blueprint, request, jsonify, current_app
|
||||
from flask_login import login_required, current_user
|
||||
from app import db
|
||||
from app import db, limiter
|
||||
from app.models import Ticket, TicketStatus, TicketPriority, TicketCategory
|
||||
from app.services.notification_service import notify_new_ticket
|
||||
from app.services.log_service import log_action
|
||||
@@ -79,6 +79,7 @@ def _call_groq(api_key, history, user_msg):
|
||||
|
||||
@chatbot_bp.route('/message', methods=['POST'])
|
||||
@login_required
|
||||
@limiter.limit('20 per minute; 100 per hour')
|
||||
def chat():
|
||||
data = request.get_json(force=True)
|
||||
history = data.get('history', []) # [{role, content}, ...]
|
||||
@@ -146,6 +147,10 @@ def chat():
|
||||
)
|
||||
ticket.ticket_number = ticket.generate_ticket_number()
|
||||
db.session.add(ticket)
|
||||
# Flush to obtain ticket.id from the DB sequence before logging.
|
||||
# Without this flush, ticket.id is None and the activity log
|
||||
# entry records entity_id=None, making the log entry unlinkable.
|
||||
db.session.flush()
|
||||
log_action(current_user.id, 'ticket_create_chatbot', 'ticket', ticket.id,
|
||||
f'ticket_number={ticket.ticket_number} ai_generated=True')
|
||||
db.session.commit()
|
||||
|
||||
Reference in New Issue
Block a user