fix: Lint fixes of api and repositories
All checks were successful
Backend CI / test (push) Successful in 3m58s

This commit is contained in:
JSC
2025-07-31 22:29:11 +02:00
parent 7ba52ad6fc
commit 95ccb76233
4 changed files with 104 additions and 80 deletions

View File

@@ -1,6 +1,6 @@
"""Base repository with common CRUD operations."""
from typing import Any, Generic, TypeVar
from typing import Any, TypeVar
from sqlmodel import select
from sqlmodel.ext.asyncio.session import AsyncSession
@@ -13,7 +13,7 @@ ModelType = TypeVar("ModelType")
logger = get_logger(__name__)
class BaseRepository(Generic[ModelType]):
class BaseRepository[ModelType]:
"""Base repository with common CRUD operations."""
def __init__(self, model: type[ModelType], session: AsyncSession) -> None:
@@ -42,7 +42,9 @@ class BaseRepository(Generic[ModelType]):
result = await self.session.exec(statement)
return result.first()
except Exception:
logger.exception("Failed to get %s by ID: %s", self.model.__name__, entity_id)
logger.exception(
"Failed to get %s by ID: %s", self.model.__name__, entity_id,
)
raise
async def get_all(
@@ -83,12 +85,17 @@ class BaseRepository(Generic[ModelType]):
self.session.add(entity)
await self.session.commit()
await self.session.refresh(entity)
logger.info("Created new %s with ID: %s", self.model.__name__, getattr(entity, "id", "unknown"))
return entity
except Exception:
await self.session.rollback()
logger.exception("Failed to create %s", self.model.__name__)
raise
else:
logger.info(
"Created new %s with ID: %s",
self.model.__name__,
getattr(entity, "id", "unknown"),
)
return entity
async def update(self, entity: ModelType, update_data: dict[str, Any]) -> ModelType:
"""Update an entity.
@@ -108,12 +115,17 @@ class BaseRepository(Generic[ModelType]):
self.session.add(entity)
await self.session.commit()
await self.session.refresh(entity)
logger.info("Updated %s with ID: %s", self.model.__name__, getattr(entity, "id", "unknown"))
return entity
except Exception:
await self.session.rollback()
logger.exception("Failed to update %s", self.model.__name__)
raise
else:
logger.info(
"Updated %s with ID: %s",
self.model.__name__,
getattr(entity, "id", "unknown"),
)
return entity
async def delete(self, entity: ModelType) -> None:
"""Delete an entity.
@@ -125,7 +137,11 @@ class BaseRepository(Generic[ModelType]):
try:
await self.session.delete(entity)
await self.session.commit()
logger.info("Deleted %s with ID: %s", self.model.__name__, getattr(entity, "id", "unknown"))
logger.info(
"Deleted %s with ID: %s",
self.model.__name__,
getattr(entity, "id", "unknown"),
)
except Exception:
await self.session.rollback()
logger.exception("Failed to delete %s", self.model.__name__)