STABLE: Final schema sync, optimized gitignore
This commit is contained in:
@@ -1,43 +1,32 @@
|
||||
# /opt/docker/dev/service_finder/backend/app/scripts/seed_system_params.py
|
||||
import asyncio
|
||||
import json
|
||||
from sqlalchemy.ext.asyncio import create_async_engine, AsyncSession
|
||||
from sqlalchemy.orm import sessionmaker
|
||||
from app.models import SystemParameter
|
||||
from app.core.config import settings
|
||||
from sqlalchemy import select
|
||||
from app.db.session import SessionLocal
|
||||
from app.models.system import SystemParameter
|
||||
|
||||
async def seed_system():
|
||||
engine = create_async_engine(settings.DATABASE_URL)
|
||||
async_session = sessionmaker(engine, class_=AsyncSession, expire_on_commit=False)
|
||||
|
||||
async with async_session() as session:
|
||||
async def seed_params():
|
||||
async with SessionLocal() as db:
|
||||
params = [
|
||||
{
|
||||
"key": "fuel_types",
|
||||
"value": ["Benzin (95)", "Benzin (100)", "Dízel", "Prémium Dízel", "LPG", "Elektromos", "Hibrid"],
|
||||
"description": "Rendszerben használható üzemanyag típusok"
|
||||
"key": "VEHICLE_LIMIT",
|
||||
"value": {"free": 1, "premium": 5, "vip": 50},
|
||||
"category": "limits",
|
||||
"description": "Járműszám korlátok előfizetési csomagonként"
|
||||
},
|
||||
{
|
||||
"key": "currencies",
|
||||
"value": ["HUF", "EUR", "USD", "GBP"],
|
||||
"description": "Támogatott pénznemek"
|
||||
},
|
||||
{
|
||||
"key": "expense_categories",
|
||||
"value": ["Üzemanyag", "Szerviz", "Biztosítás", "Autópálya matrica", "Parkolás", "Adó", "Egyéb"],
|
||||
"description": "Költség kategóriák"
|
||||
"key": "xp_multipliers",
|
||||
"value": {"manual_input": 1.0, "ocr_scan": 1.5, "verified_hunt": 2.0},
|
||||
"category": "gamification"
|
||||
}
|
||||
]
|
||||
|
||||
for p in params:
|
||||
# Megnézzük, létezik-e már
|
||||
from sqlalchemy import select
|
||||
result = await session.execute(select(SystemParameter).where(SystemParameter.key == p["key"]))
|
||||
if not result.scalar_one_or_none():
|
||||
new_param = SystemParameter(**p)
|
||||
session.add(new_param)
|
||||
stmt = select(SystemParameter).where(SystemParameter.key == p["key"])
|
||||
if not (await db.execute(stmt)).scalar_one_or_none():
|
||||
db.add(SystemParameter(**p))
|
||||
|
||||
await session.commit()
|
||||
print("✅ Rendszer paraméterek sikeresen feltöltve!")
|
||||
await db.commit()
|
||||
print("✅ Sentinel paraméterek feltöltve.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(seed_system())
|
||||
asyncio.run(seed_params())
|
||||
Reference in New Issue
Block a user