Initial commit: Robot ökoszisztéma v2.0 - Stabilizált jármű és szerviz robotok
This commit is contained in:
27
code-server-config/data/User/History/-4958fed3/RO9K.py
Executable file
27
code-server-config/data/User/History/-4958fed3/RO9K.py
Executable file
@@ -0,0 +1,27 @@
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
from sqlalchemy.future import select
|
||||
from app.models.social import ServiceProvider, ModerationStatus
|
||||
from app.schemas.social import ServiceProviderCreate
|
||||
|
||||
class SocialService:
|
||||
@staticmethod
|
||||
async def create_service_provider(db: AsyncSession, schema: ServiceProviderCreate, user_id: int) -> ServiceProvider:
|
||||
# 1. Pydantic modell átalakítása SQLAlchemy modellé
|
||||
# A **schema.model_dump() kicsomagolja a mezőket (name, address, source)
|
||||
db_provider = ServiceProvider(
|
||||
**schema.model_dump(),
|
||||
added_by_user_id=user_id,
|
||||
status=ModerationStatus.PENDING # KRITIKUS: Alapértelmezetten moderációra vár
|
||||
)
|
||||
|
||||
# 2. Mentés az adatbázisba
|
||||
db.add(db_provider)
|
||||
await db.commit()
|
||||
await db.refresh(db_provider) # Visszakérjük az ID-t és a timestamp-et
|
||||
return db_provider
|
||||
|
||||
@staticmethod
|
||||
async def get_all_providers(db: AsyncSession):
|
||||
# Teszteléshez: listázzuk ki az összeset
|
||||
result = await db.execute(select(ServiceProvider))
|
||||
return result.scalars().all()
|
||||
Reference in New Issue
Block a user