Calendar + NLP modules implemented

This commit is contained in:
c-d-p
2025-04-17 11:25:21 +02:00
parent 18ddb2f332
commit 4f3946d1c3
36 changed files with 366 additions and 23 deletions

View File

@@ -0,0 +1,46 @@
# modules/calendar/api.py
from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from datetime import datetime
from modules.auth.dependencies import get_current_user
from core.database import get_db
from modules.auth.models import User
from modules.calendar.schemas import CalendarEventCreate, CalendarEventResponse
from modules.calendar.service import create_calendar_event, get_calendar_events, update_calendar_event, delete_calendar_event
router = APIRouter(prefix="/calendar", tags=["calendar"])
@router.post("/events", response_model=CalendarEventResponse)
def create_event(
event: CalendarEventCreate,
user: User = Depends(get_current_user),
db: Session = Depends(get_db)
):
return create_calendar_event(db, user.id, event)
@router.get("/events", response_model=list[CalendarEventResponse])
def get_events(
user: User = Depends(get_current_user),
db: Session = Depends(get_db),
start: datetime | None = None,
end: datetime | None = None
):
return get_calendar_events(db, user.id, start, end)
@router.put("/events/{event_id}", response_model=CalendarEventResponse)
def update_event(
event_id: int,
event: CalendarEventCreate,
user: User = Depends(get_current_user),
db: Session = Depends(get_db)
):
return update_calendar_event(db, user.id, event_id, event)
@router.delete("/events/{event_id}")
def delete_event(
event_id: int,
user: User = Depends(get_current_user),
db: Session = Depends(get_db)
):
delete_calendar_event(db, user.id, event_id)
return {"message": "Event deleted"}