feat: Add optional telegram_id field to Generation and GenerationRequest models.

This commit is contained in:
xds
2026-02-05 21:10:50 +03:00
parent 463e73fa1e
commit d4682b1418
10 changed files with 29 additions and 3 deletions

View File

@@ -9,6 +9,8 @@ from repos.dao import DAO
# ... ваши импорты ...
from aiogram import Bot
# Провайдеры "сырых" клиентов из состояния приложения
def get_mongo_client(request: Request) -> AsyncIOMotorClient:
return request.app.state.mongo_client
@@ -16,6 +18,9 @@ def get_mongo_client(request: Request) -> AsyncIOMotorClient:
def get_gemini_client(request: Request) -> GoogleAdapter:
return request.app.state.gemini_client
def get_bot_client(request: Request) -> Bot:
return request.app.state.bot
# Провайдер DAO (собирается из mongo_client)
def get_dao(mongo_client: AsyncIOMotorClient = Depends(get_mongo_client)) -> DAO:
# FastAPI кэширует результат Depends в рамках одного запроса,
@@ -26,5 +31,6 @@ def get_dao(mongo_client: AsyncIOMotorClient = Depends(get_mongo_client)) -> DAO
def get_generation_service(
dao: DAO = Depends(get_dao),
gemini: GoogleAdapter = Depends(get_gemini_client),
bot: Bot = Depends(get_bot_client),
) -> GenerationService:
return GenerationService(dao, gemini)
return GenerationService(dao, gemini, bot)