From 35c6452d86ce08c816be717b6ea7f390051fb099 Mon Sep 17 00:00:00 2001 From: Renato Rosa Date: Wed, 19 Aug 2026 20:38:27 -0300 Subject: [PATCH] Atualizar app/models.py --- app/models.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/app/models.py b/app/models.py index 3d20425..364ac3f 100644 --- a/app/models.py +++ b/app/models.py @@ -66,3 +66,36 @@ class AuditTrail(Base): action = Column(String) details = Column(Text) timestamp = Column(DateTime, default=datetime.utcnow) + +# *** + +# All comments are in English. + +from sqlalchemy import Column, String, Text, DateTime, ForeignKey +from sqlalchemy.orm import declarative_base, relationship +from datetime import datetime + +Base = declarative_base() + +class Conversation(Base): + __tablename__ = "conversations" + id = Column(String, primary_key=True) + title = Column(String) + messages = relationship("Message", back_populates="conversation") + +class Message(Base): + __tablename__ = "messages" + id = Column(String, primary_key=True) + conversation_id = Column(String, ForeignKey("conversations.id")) + role = Column(String) # "user" or "assistant" + content = Column(Text) + created_at = Column(DateTime, default=datetime.utcnow) + conversation = relationship("Conversation", back_populates="messages") + +class Attachment(Base): + __tablename__ = "attachments" + id = Column(String, primary_key=True) + conversation_id = Column(String, ForeignKey("conversations.id")) + filename = Column(String) + mime_type = Column(String) + data = Column(Text) # base64 or small text payload