This commit is contained in:
Timothy Jaeryang Baek 2025-09-27 04:38:54 -05:00
parent 86ef57f6c3
commit 272c6f5ec5

View file

@ -174,19 +174,27 @@ class MessageTable:
.order_by(Message.created_at.desc())
.all()
)
return [
MessageReplyToResponse.model_validate(
{
**MessageModel.model_validate(message).model_dump(),
"reply_to_message": (
self.get_message_by_id(message.reply_to_id).model_dump()
if message.reply_to_id
else None
),
}
messages = []
for message in all_messages:
reply_to_message = (
self.get_message_by_id(message.reply_to_id)
if message.reply_to_id
else None
)
for message in all_messages
]
messages.append(
MessageReplyToResponse.model_validate(
{
**MessageModel.model_validate(message).model_dump(),
"reply_to_message": (
reply_to_message.model_dump()
if reply_to_message
else None
),
}
)
)
return messages
def get_reply_user_ids_by_message_id(self, id: str) -> list[str]:
with get_db() as db:
@ -208,19 +216,26 @@ class MessageTable:
.all()
)
return [
MessageReplyToResponse.model_validate(
{
**MessageModel.model_validate(message).model_dump(),
"reply_to_message": (
self.get_message_by_id(message.reply_to_id).model_dump()
if message.reply_to_id
else None
),
}
messages = []
for message in all_messages:
reply_to_message = (
self.get_message_by_id(message.reply_to_id)
if message.reply_to_id
else None
)
for message in all_messages
]
messages.append(
MessageReplyToResponse.model_validate(
{
**MessageModel.model_validate(message).model_dump(),
"reply_to_message": (
reply_to_message.model_dump()
if reply_to_message
else None
),
}
)
)
return messages
def get_messages_by_parent_id(
self, channel_id: str, parent_id: str, skip: int = 0, limit: int = 50
@ -244,19 +259,26 @@ class MessageTable:
if len(all_messages) < limit:
all_messages.append(message)
return [
MessageReplyToResponse.model_validate(
{
**MessageModel.model_validate(message).model_dump(),
"reply_to_message": (
self.get_message_by_id(message.reply_to_id).model_dump()
if message.reply_to_id
else None
),
}
messages = []
for message in all_messages:
reply_to_message = (
self.get_message_by_id(message.reply_to_id)
if message.reply_to_id
else None
)
for message in all_messages
]
messages.append(
MessageReplyToResponse.model_validate(
{
**MessageModel.model_validate(message).model_dump(),
"reply_to_message": (
reply_to_message.model_dump()
if reply_to_message
else None
),
}
)
)
return messages
def update_message_by_id(
self, id: str, form_data: MessageForm