| from extensions.ext_database import db |
|
|
| from .model import Message |
| from .types import StringUUID |
|
|
|
|
| class SavedMessage(db.Model): |
| __tablename__ = "saved_messages" |
| __table_args__ = ( |
| db.PrimaryKeyConstraint("id", name="saved_message_pkey"), |
| db.Index("saved_message_message_idx", "app_id", "message_id", "created_by_role", "created_by"), |
| ) |
|
|
| id = db.Column(StringUUID, server_default=db.text("uuid_generate_v4()")) |
| app_id = db.Column(StringUUID, nullable=False) |
| message_id = db.Column(StringUUID, nullable=False) |
| created_by_role = db.Column(db.String(255), nullable=False, server_default=db.text("'end_user'::character varying")) |
| created_by = db.Column(StringUUID, nullable=False) |
| created_at = db.Column(db.DateTime, nullable=False, server_default=db.text("CURRENT_TIMESTAMP(0)")) |
|
|
| @property |
| def message(self): |
| return db.session.query(Message).filter(Message.id == self.message_id).first() |
|
|
|
|
| class PinnedConversation(db.Model): |
| __tablename__ = "pinned_conversations" |
| __table_args__ = ( |
| db.PrimaryKeyConstraint("id", name="pinned_conversation_pkey"), |
| db.Index("pinned_conversation_conversation_idx", "app_id", "conversation_id", "created_by_role", "created_by"), |
| ) |
|
|
| id = db.Column(StringUUID, server_default=db.text("uuid_generate_v4()")) |
| app_id = db.Column(StringUUID, nullable=False) |
| conversation_id = db.Column(StringUUID, nullable=False) |
| created_by_role = db.Column(db.String(255), nullable=False, server_default=db.text("'end_user'::character varying")) |
| created_by = db.Column(StringUUID, nullable=False) |
| created_at = db.Column(db.DateTime, nullable=False, server_default=db.text("CURRENT_TIMESTAMP(0)")) |
|
|