Refactoring of routes
group functionalities working
This commit is contained in:
33
server/routes/events.py
Normal file
33
server/routes/events.py
Normal file
@@ -0,0 +1,33 @@
|
||||
import sys
|
||||
sys.path.append('/workspace')
|
||||
from flask import Blueprint, request, jsonify
|
||||
from models import Event
|
||||
from sqlalchemy import and_
|
||||
from database import Session
|
||||
|
||||
events_bp = Blueprint("events", __name__, url_prefix="/api/events")
|
||||
|
||||
|
||||
@events_bp.route("", methods=["GET"])
|
||||
def get_events():
|
||||
session = Session()
|
||||
start = request.args.get("start")
|
||||
end = request.args.get("end")
|
||||
client_uuid = request.args.get("client_uuid")
|
||||
query = session.query(Event).filter(Event.is_active == True)
|
||||
if start and end:
|
||||
query = query.filter(and_(Event.start < end, Event.end > start))
|
||||
if client_uuid:
|
||||
query = query.filter(Event.client_uuid == client_uuid)
|
||||
events = query.all()
|
||||
result = []
|
||||
for e in events:
|
||||
result.append({
|
||||
"Id": str(e.id),
|
||||
"Subject": e.title,
|
||||
"StartTime": e.start.isoformat() if e.start else None,
|
||||
"EndTime": e.end.isoformat() if e.end else None,
|
||||
"IsAllDay": False,
|
||||
})
|
||||
session.close()
|
||||
return jsonify(result)
|
||||
Reference in New Issue
Block a user