Files
ai-ticket-platform/backend/apps/tickets/draft_schemas.py
2026-07-16 19:37:32 +08:00

67 lines
1.2 KiB
Python

from datetime import datetime
from ninja import Schema
class TicketDraftCreateIn(Schema):
source_text: str = ""
class TicketDraftPatchIn(Schema):
expected_revision: int
fields: dict
class TicketDraftActionIn(Schema):
expected_revision: int
class TicketDraftAnswerIn(Schema):
expected_revision: int
answer: str
question: str = ""
class TicketDraftImageOut(Schema):
id: str
file_name: str
mime_type: str
file_size: int
status: str
class TicketDraftMessageOut(Schema):
role: str
content: str
round_number: int
created_at: datetime
class TicketDraftOut(Schema):
public_id: str
status: str
revision: int
source_text: str
fields: dict
last_ai_fields: dict
missing_fields: list[str]
questions: list[str]
guided_rounds: int
agent_run_public_id: str | None = None
images: list[TicketDraftImageOut]
messages: list[TicketDraftMessageOut]
decision: str
error_code: str
error_message: str
confirmed_ticket: dict | None = None
created_at: datetime
updated_at: datetime
expires_at: datetime
class TicketDraftAvailabilityOut(Schema):
available: bool
reason: str
vision_available: bool
vision_reason: str