fix: correct indentation in _create_ticket_and_attach_files
This commit is contained in:
+34
-34
@@ -219,46 +219,46 @@ def _extract_attachments_from_content(content, is_attachment_type=False):
|
||||
async def _create_ticket_and_attach_files(user_id, msg_text, session, msg, login):
|
||||
"""Логика генерации темы, отправки в SD и загрузки всех очередей вложений."""
|
||||
session["step"] = "creating_ticket"
|
||||
ad_user = await asyncio.to_thread(get_ad_user_sync, login)
|
||||
sd_workflow_logger.info(f"👤 [AD Lookup] User: {login} -> Found: {ad_user is not None}")
|
||||
sender_email = ad_user.get("mail") if ad_user else DEFAULT_REQUESTER
|
||||
city = ad_user.get("city") if ad_user else "Кемерово"
|
||||
subject = await generate_smart_subject(msg_text)
|
||||
sd_workflow_logger.info(f"📝 [Subject Gen] Text: {msg_text[:50]}... -> Subject: {subject}")
|
||||
ad_user = await asyncio.to_thread(get_ad_user_sync, login)
|
||||
sd_workflow_logger.info(f"👤 [AD Lookup] User: {login} -> Found: {ad_user is not None}")
|
||||
sender_email = ad_user.get("mail") if ad_user else DEFAULT_REQUESTER
|
||||
city = ad_user.get("city") if ad_user else "Кемерово"
|
||||
subject = await generate_smart_subject(msg_text)
|
||||
sd_workflow_logger.info(f"📝 [Subject Gen] Text: {msg_text[:50]}... -> Subject: {subject}")
|
||||
|
||||
ticket_id = await create_ticket_in_sd(sender_email, subject, msg_text, city)
|
||||
sd_workflow_logger.info(f"🎫 [Ticket Created] ID: {ticket_id}")
|
||||
ticket_id = await create_ticket_in_sd(sender_email, subject, msg_text, city)
|
||||
sd_workflow_logger.info(f"🎫 [Ticket Created] ID: {ticket_id}")
|
||||
|
||||
if ticket_id:
|
||||
session["ticket_id"] = ticket_id
|
||||
if ticket_id:
|
||||
session["ticket_id"] = ticket_id
|
||||
|
||||
# 1. Загрузка основных вложений (накопленных до и во время таймаута)
|
||||
queued_files = list(session.get("files_queue", []))
|
||||
if queued_files:
|
||||
sd_workflow_logger.info(f"📎 [Upload] Uploading {len(queued_files)} file(s) to ticket #{ticket_id}")
|
||||
for f in queued_files:
|
||||
await process_and_upload_file(f['file_id'], f['file_name'], ticket_id)
|
||||
sd_workflow_logger.info(f"✅ [Upload] All queued file(s) uploaded")
|
||||
# 1. Загрузка основных вложений (накопленных до и во время таймаута)
|
||||
queued_files = list(session.get("files_queue", []))
|
||||
if queued_files:
|
||||
sd_workflow_logger.info(f"📎 [Upload] Uploading {len(queued_files)} file(s) to ticket #{ticket_id}")
|
||||
for f in queued_files:
|
||||
await process_and_upload_file(f['file_id'], f['file_name'], ticket_id)
|
||||
sd_workflow_logger.info(f"✅ [Upload] All queued file(s) uploaded")
|
||||
|
||||
# 2. Загрузка вложений, прилетевших во время выполнения API-запросов (из "черной дыры")
|
||||
post_files = list(session.get("post_create_queue", []))
|
||||
if post_files:
|
||||
sd_workflow_logger.info(f"📎 [Upload Extra] Uploading {len(post_files)} late file(s) to ticket #{ticket_id}")
|
||||
for f in post_files:
|
||||
await process_and_upload_file(f['file_id'], f['file_name'], ticket_id)
|
||||
# 2. Загрузка вложений, прилетевших во время выполнения API-запросов (из "черной дыры")
|
||||
post_files = list(session.get("post_create_queue", []))
|
||||
if post_files:
|
||||
sd_workflow_logger.info(f"📎 [Upload Extra] Uploading {len(post_files)} late file(s) to ticket #{ticket_id}")
|
||||
for f in post_files:
|
||||
await process_and_upload_file(f['file_id'], f['file_name'], ticket_id)
|
||||
|
||||
session["files_queue"] = []
|
||||
session["post_create_queue"] = []
|
||||
session["step"] = "ticket_created"
|
||||
session["files_queue"] = []
|
||||
session["post_create_queue"] = []
|
||||
session["step"] = "ticket_created"
|
||||
|
||||
await msg.answer(
|
||||
sd_ticket_created(ticket_id, subject, msg_text),
|
||||
parse_mode="html"
|
||||
)
|
||||
log_menu_stats(user_id, "Service Desk", f"Создание заявки #{ticket_id}")
|
||||
else:
|
||||
session["step"] = "need_text"
|
||||
await msg.answer(system_error_text(EMOJI_DIGITS), parse_mode="html")
|
||||
await msg.answer(
|
||||
sd_ticket_created(ticket_id, subject, msg_text),
|
||||
parse_mode="html"
|
||||
)
|
||||
log_menu_stats(user_id, "Service Desk", f"Создание заявки #{ticket_id}")
|
||||
else:
|
||||
session["step"] = "need_text"
|
||||
await msg.answer(system_error_text(EMOJI_DIGITS), parse_mode="html")
|
||||
|
||||
async def _wait_for_attachments_and_create(user_id, session):
|
||||
"""Фоновый таймер с возможностью отмены (Debounce)."""
|
||||
|
||||
Reference in New Issue
Block a user