""" 对话记录模型 """ from sqlalchemy import Column, String, Integer, DateTime, Text, Boolean from sqlalchemy.sql import func from .database import Base class Conversation(Base): """对话记录表""" __tablename__ = "conversations" id = Column(Integer, primary_key=True, index=True, autoincrement=True) user_conversation_key = Column(String(200), unique=True, index=True, nullable=False, comment="用户对话唯一键(fromUser+conversation_id)") from_user = Column(String(100), index=True, nullable=False, comment="发送用户微信ID") conversation_id = Column(String(100), nullable=False, comment="Dify对话ID") # 用户问题 user_question = Column(Text, nullable=False, comment="用户提问内容") # AI回答 ai_answer = Column(Text, nullable=True, comment="AI回答内容") # 消息状态 is_processed = Column(Boolean, default=False, comment="是否已处理") is_sent = Column(Boolean, default=False, comment="是否已发送回复") # 时间戳 question_time = Column(DateTime, default=func.now(), comment="提问时间") answer_time = Column(DateTime, nullable=True, comment="回答时间") sent_time = Column(DateTime, nullable=True, comment="发送时间") created_at = Column(DateTime, default=func.now(), comment="创建时间") updated_at = Column(DateTime, default=func.now(), onupdate=func.now(), comment="更新时间") def __repr__(self): return f""