Scheduler: Refactor database utilities and

scheduler logic
This commit is contained in:
2025-07-15 05:05:09 +00:00
parent 2fa84c1e2b
commit 661d25d70c
3 changed files with 54 additions and 7 deletions

25
scheduler/db_utils.py Normal file
View File

@@ -0,0 +1,25 @@
# scheduler/db_utils.py
from models import Event
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from datetime import datetime
import os
import sys
sys.path.append('/workspace/server')
# DB-URL aus Umgebungsvariable oder Fallback
DB_CONN = os.environ.get("DB_CONN", "mysql+pymysql://user:password@db/dbname")
engine = create_engine(DB_CONN)
Session = sessionmaker(bind=engine)
def get_active_events(start: datetime, end: datetime, group_id: int = None):
session = Session()
query = session.query(Event).filter(Event.is_active == True)
if start and end:
query = query.filter(Event.start < end, Event.end > start)
if group_id:
query = query.filter(Event.group_id == group_id)
events = query.all()
session.close()
return events