Начало переделки бд
This commit is contained in:
parent
b8d7683ef2
commit
0c863176e7
3 changed files with 16 additions and 16 deletions
|
@ -53,9 +53,9 @@ class ChatDAO(BaseDAO):
|
|||
async def get_message_by_id(message_id: int):
|
||||
query = (select(Messages.id, Messages.message, Messages.image_url, Messages.chat_id, Messages.user_id,
|
||||
Messages.created_at, Users.avatar_image, Users.username, Users.avatar_hex,
|
||||
Answers.answer_id, Answers.message_id).select_from(Messages)
|
||||
Answers.self_id, Answers.answer_id).select_from(Messages)
|
||||
.join(Users, Users.id == Messages.user_id)
|
||||
.join(Answers, Answers.answer_id == Messages.id, isouter=True)
|
||||
.join(Answers, Answers.self_id == Messages.id, isouter=True)
|
||||
.where(
|
||||
and_(
|
||||
Messages.id == message_id,
|
||||
|
@ -101,7 +101,7 @@ class ChatDAO(BaseDAO):
|
|||
messages_with_users.c.chat_id, messages_with_users.c.user_id,
|
||||
messages_with_users.c.created_at, messages_with_users.c.avatar_image,
|
||||
messages_with_users.c.username, messages_with_users.c.avatar_hex,
|
||||
messages_with_users.c.answer_id, messages_with_users.c.message_id,
|
||||
messages_with_users.c.self_id, messages_with_users.c.answer_id,
|
||||
)
|
||||
.where(
|
||||
and_(
|
||||
|
@ -254,10 +254,10 @@ class ChatDAO(BaseDAO):
|
|||
query = (select(Messages.id, Messages.message, Messages.image_url,
|
||||
Messages.chat_id, Messages.user_id,
|
||||
Messages.created_at, Users.avatar_image,
|
||||
Users.username, Users.avatar_hex, Answers.answer_id, Answers.message_id).select_from(PinnedMessages)
|
||||
Users.username, Users.avatar_hex, Answers.self_id, Answers.answer_id).select_from(PinnedMessages)
|
||||
.join(Messages, PinnedMessages.message_id == Messages.id, isouter=True)
|
||||
.join(Users, PinnedMessages.user_id == Users.id, isouter=True)
|
||||
.join(Answers, Answers.answer_id == Messages.id, isouter=True)
|
||||
.join(Answers, Answers.self_id == Messages.id, isouter=True)
|
||||
.where(and_(PinnedMessages.chat_id == chat_id, Messages.visibility == True))
|
||||
.order_by(Messages.created_at.desc()))
|
||||
async with async_session_maker() as session:
|
||||
|
|
|
@ -13,8 +13,8 @@ class SMessage(BaseModel):
|
|||
created_at: str
|
||||
avatar_image: str
|
||||
avatar_hex: str
|
||||
self_id: int | None
|
||||
answer_id: int | None
|
||||
message_id: int | None
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -23,24 +23,24 @@ class ConnectionManager(WebSocket):
|
|||
if "flag" not in message:
|
||||
raise IncorrectDataException
|
||||
|
||||
if message['flag'] == 'send':
|
||||
if message["flag"] == "send":
|
||||
new_message = await self.add_message_to_database(
|
||||
user_id=user_id, chat_id=chat_id, message=message['message'],
|
||||
image_url=message['image_url'], answer=message["answer"]
|
||||
user_id=user_id, chat_id=chat_id, message=message["message"],
|
||||
image_url=message["image_url"], answer=message["answer"]
|
||||
)
|
||||
new_message = dict(new_message)
|
||||
new_message['created_at'] = new_message['created_at'].isoformat()
|
||||
new_message['flag'] = 'send'
|
||||
elif message['flag'] == 'delete':
|
||||
new_message["created_at"] = new_message["created_at"].isoformat()
|
||||
new_message["flag"] = "send"
|
||||
elif message["flag"] == "delete":
|
||||
if message["user_id"] != user_id:
|
||||
raise UserDontHavePermissionException
|
||||
deleted_message = await self.delete_message(message["id"])
|
||||
new_message = {'deleted_message': deleted_message, 'id': message['id'], "flag": "delete"}
|
||||
elif message['flag'] == 'edit':
|
||||
new_message = {"deleted_message": deleted_message, "id": message["id"], "flag": "delete"}
|
||||
elif message["flag"] == "edit":
|
||||
if message["user_id"] != user_id:
|
||||
raise UserDontHavePermissionException
|
||||
edited_message = await self.edit_message(message['id'], message['new_message'], message['new_image_url'])
|
||||
new_message = {'edited_message': edited_message, "flag": "edit", "id": message["id"],
|
||||
edited_message = await self.edit_message(message["id"], message["new_message"], message["new_image_url"])
|
||||
new_message = {"edited_message": edited_message, "flag": "edit", "id": message["id"],
|
||||
"new_message": message["new_message"], "new_image_url": message["new_image_url"]}
|
||||
else:
|
||||
raise IncorrectDataException
|
||||
|
|
Loading…
Add table
Reference in a new issue