Files
service-finder/backend/app/seed_system.py

59 lines
2.0 KiB
Python
Executable File

import asyncio
from datetime import datetime
from sqlalchemy import select
from app.db.session import SessionLocal
from app.models.legal import LegalDocument
from app.models.email_template import EmailTemplate, EmailType
from app.models.email_provider import EmailProviderConfig
async def seed_data():
async with SessionLocal() as db:
# 1. Jogi dokumentumok (HU)
legal_docs = [
LegalDocument(
title="Általános Szerződési Feltételek",
content="Ide jön az ÁSZF szövege... Kérjük görgessen az aljáig.",
version="v1.0",
region_code="HU",
language="hu"
),
LegalDocument(
title="Adatkezelési Tájékoztató (GDPR)",
content="Ide jön a GDPR szövege... Kérjük görgessen az aljáig.",
version="v1.0",
region_code="HU",
language="hu"
)
]
# 2. Email Sablon (Regisztráció)
reg_template = EmailTemplate(
type=EmailType.REGISTRATION,
subject="Üdvözöljük a Service Finderben!",
body_html="""
<h3>Kedves {{ name }}!</h3>
<p>Köszönjük a regisztrációt! Az aktiváláshoz kattints ide:</p>
<a href="{{ link }}">Fiók aktiválása</a>
<p>A link 24 óráig érvényes.</p>
"""
)
# 3. Email Szolgáltató (SendGrid)
sendgrid_provider = EmailProviderConfig(
name="SendGrid_Primary",
provider_type="SENDGRID",
priority=1,
settings={"api_key": "YOUR_SENDGRID_KEY_HERE"}, # Ezt majd az adminon írjuk át
max_fail_threshold=3
)
db.add_all(legal_docs)
db.add(reg_template)
db.add(sendgrid_provider)
await db.commit()
print("🌱 Alapadatok sikeresen feltöltve!")
if __name__ == "__main__":
asyncio.run(seed_data())