Refactor code structure for improved readability and maintainability

This commit is contained in:
JSC
2025-08-29 15:27:12 +02:00
parent dc89e45675
commit 2bdd109492
23 changed files with 652 additions and 719 deletions

View File

@@ -72,18 +72,22 @@ class BaseRepository[ModelType]:
logger.exception("Failed to get all %s", self.model.__name__)
raise
async def create(self, entity_data: dict[str, Any]) -> ModelType:
async def create(self, entity_data: dict[str, Any] | ModelType) -> ModelType:
"""Create a new entity.
Args:
entity_data: Dictionary of entity data
entity_data: Dictionary of entity data or model instance
Returns:
The created entity
"""
try:
entity = self.model(**entity_data)
if isinstance(entity_data, dict):
entity = self.model(**entity_data)
else:
# Already a model instance
entity = entity_data
self.session.add(entity)
await self.session.commit()
await self.session.refresh(entity)