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,13 +1,14 @@
# /opt/docker/dev/service_finder/backend/app/scripts/morning_report.py
import asyncio
from sqlalchemy import select, func
from sqlalchemy import select
from app.db.session import SessionLocal
from app.models.audit import ProcessLog
from datetime import datetime, timedelta
from datetime import datetime, timedelta, timezone
async def generate_morning_report():
""" Összesíti a háttérfolyamatok (robotok) elmúlt 24 órás teljesítményét. """
async with SessionLocal() as db:
# Az elmúlt 24 óra logjai
yesterday = datetime.now() - timedelta(days=1)
yesterday = datetime.now(timezone.utc) - timedelta(days=1)
stmt = select(ProcessLog).where(ProcessLog.start_time >= yesterday)
res = await db.execute(stmt)
logs = res.scalars().all()
@@ -15,27 +16,19 @@ async def generate_morning_report():
report = f"📊 REGGELI ROBOT JELENTÉS - {datetime.now().date()}\n"
report += "="*40 + "\n"
total_proc = 0
total_fail = 0
cleaned_list = []
for log in logs:
total_proc += log.items_processed
total_fail += log.items_failed
if "cleaned" in log.details:
cleaned_list.extend(log.details["cleaned"])
report += f"✅ Feldolgozott modellek: {total_proc}\n"
report += f"❌ Hibás/Sikertelen: {total_fail}\n"
report += f"🧹 AI névtisztítások száma: {len(cleaned_list)}\n\n"
total_proc = sum(log.items_processed for log in logs)
total_fail = sum(log.items_failed for log in logs)
if cleaned_list:
report += "Példák a tisztított nevekre:\n"
for item in cleaned_list[:10]: # Csak az első 10-et listázzuk
report += f" - {item}\n"
report += f"✅ Feldolgozott egységek: {total_proc}\n"
report += f"❌ Sikertelen műveletek: {total_fail}\n"
if logs:
report += "\nAktív robotok állapota:\n"
for log in logs:
status = "🟢 OK" if log.items_failed == 0 else "🔴 HIBA"
report += f" - {log.process_name}: {log.items_processed} feldolgozva ({status})\n"
print(report)
# Itt hívható az EmailManager.send(...)
return report
if __name__ == "__main__":