STABLE: Final schema sync, optimized gitignore

This commit is contained in:
Kincses
2026-02-26 08:19:25 +01:00
parent 893f39fa15
commit 505543330a
203 changed files with 11590 additions and 9542 deletions

View File

@@ -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())