комментарии на инструментах

This commit is contained in:
2025-12-20 23:22:51 +03:00
parent d7bfdb69a6
commit 83ecf65abf
11 changed files with 336 additions and 65 deletions
+26 -1
View File
@@ -1,5 +1,6 @@
from datetime import datetime
from db.handlers.stock import StockHandler
from db.handlers.user import UserHandler
from utils import logger, saveImage, safeFilename
from db import CRUD
from db.schemas.toolkit import Toolkit
@@ -175,7 +176,12 @@ class ToolkitHandler:
if not toolkit:
logger.error("Инструмент не найден")
return {}
return toolkit.toDict()
if toolkit.comment_user_id:
user_data = await UserHandler.get(toolkit.comment_user_id)
data = toolkit.toDict()
data["comment_user_data"] = user_data
logger.info(data)
return data
async def getSeveral(toolkitIds: list[int]) -> list[dict]:
query = select(Toolkit).where(Toolkit.id.in_(toolkitIds))
@@ -211,6 +217,25 @@ class ToolkitHandler:
)
return {"status": "ok"} if result else {"errorMessage": "Инструмент не удален"}
async def addComment(toolkitId: int, user_id: int, comment: str):
logger.info(f"Добавление комментария к инструменту {toolkitId}...")
logger.info(f"Комментарий: {comment}")
logger.info(f"Пользователь: {user_id}")
query = select(Toolkit).where(Toolkit.id == toolkitId)
toolkit = await CRUD.read(query)
if not toolkit:
logger.error("Инструмент не найден")
return {"errorMessage": "Инструмент не найден"}
try:
await toolkit.edit(
comment_text=comment, comment_user_id=user_id, comment_at=datetime.now()
)
except Exception as e:
logger.error(f"Ошибка добавления комментария: {str(e)}")
return {"errorMessage": f"Ошибка добавления комментария: {str(e)}"}
logger.info(f"Комментарий к инструменту {toolkit.title} успешно добавлен")
return {"status": "ok"}
async def initialize():
from .categories import CategoryHandler