Initial commit: Robot ökoszisztéma v2.0 - Stabilizált jármű és szerviz robotok
This commit is contained in:
35
backend/app/scripts/morning_report.py
Executable file
35
backend/app/scripts/morning_report.py
Executable file
@@ -0,0 +1,35 @@
|
||||
# /opt/docker/dev/service_finder/backend/app/scripts/morning_report.py
|
||||
import asyncio
|
||||
from sqlalchemy import select
|
||||
from app.db.session import SessionLocal
|
||||
from app.models.audit import ProcessLog
|
||||
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:
|
||||
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()
|
||||
|
||||
report = f"📊 REGGELI ROBOT JELENTÉS - {datetime.now().date()}\n"
|
||||
report += "="*40 + "\n"
|
||||
|
||||
total_proc = sum(log.items_processed for log in logs)
|
||||
total_fail = sum(log.items_failed for log in logs)
|
||||
|
||||
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)
|
||||
return report
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(generate_morning_report())
|
||||
Reference in New Issue
Block a user