This commit is contained in:
2026-02-28 11:20:41 +03:00
parent b9ef6ccf09
commit 3c0d50a1aa
19 changed files with 544 additions and 185 deletions
+24 -13
View File
@@ -5,15 +5,27 @@ from sqlalchemy.ext.asyncio import AsyncEngine, AsyncSession, async_sessionmaker
from dutylog.infrastructure.database.config import create_engine, create_session_maker
from dutylog.infrastructure.database.dao.users_dao import UsersDAO
from dutylog.infrastructure.database.dao.hours_transactions_dao import HoursTransactionsDAO
from dutylog.infrastructure.database.dao.hours_transactions_dao import (
HoursTransactionsDAO,
)
from dutylog.infrastructure.database.dao.rooms_dao import RoomsDAO
from dutylog.infrastructure.database.dao.residents_dao import ResidentsDAO
from dutylog.infrastructure.database.dao.floors_dao import FloorsDAO
from dutylog.infrastructure.database.repositories.users_repository import UsersRepository
from dutylog.infrastructure.database.repositories.hours_transactions_repository import HoursTransactionsRepository
from dutylog.infrastructure.database.repositories.rooms_repository import RoomsRepository
from dutylog.infrastructure.database.repositories.residents_repository import ResidentsRepository
from dutylog.infrastructure.database.repositories.floors_repository import FloorsRepository
from dutylog.infrastructure.database.repositories.users_repository import (
UsersRepository,
)
from dutylog.infrastructure.database.repositories.hours_transactions_repository import (
HoursTransactionsRepository,
)
from dutylog.infrastructure.database.repositories.rooms_repository import (
RoomsRepository,
)
from dutylog.infrastructure.database.repositories.residents_repository import (
ResidentsRepository,
)
from dutylog.infrastructure.database.repositories.floors_repository import (
FloorsRepository,
)
from dutylog.infrastructure.utils.config import Config, load_config
@@ -29,7 +41,9 @@ class DatabaseProvider(Provider):
return create_engine(config.database.url)
@provide(scope=Scope.APP)
def get_session_maker(self, engine: AsyncEngine) -> async_sessionmaker[AsyncSession]:
def get_session_maker(
self, engine: AsyncEngine
) -> async_sessionmaker[AsyncSession]:
return create_session_maker(engine)
@provide(scope=Scope.REQUEST)
@@ -80,14 +94,11 @@ class RepositoryProvider(Provider):
return RoomsRepository(rooms_dao)
@provide(scope=Scope.REQUEST)
def get_residents_repository(self, residents_dao: ResidentsDAO) -> ResidentsRepository:
def get_residents_repository(
self, residents_dao: ResidentsDAO
) -> ResidentsRepository:
return ResidentsRepository(residents_dao)
@provide(scope=Scope.REQUEST)
def get_floors_repository(self, floors_dao: FloorsDAO) -> FloorsRepository:
return FloorsRepository(floors_dao)