feat: init collections

This commit is contained in:
swve 2023-11-16 21:30:01 +01:00
parent 727f17ba7c
commit e6adbca562
4 changed files with 219 additions and 178 deletions

View file

@ -1,4 +1,6 @@
from fastapi import APIRouter, Depends, Request
from src.core.events.database import get_db_session
from src.db.collections import CollectionCreate, CollectionUpdate
from src.security.auth import get_current_user
from src.services.users.users import PublicUser
from src.services.courses.collections import (
@ -17,13 +19,14 @@ router = APIRouter()
@router.post("/")
async def api_create_collection(
request: Request,
collection_object: Collection,
collection_object: CollectionCreate,
current_user: PublicUser = Depends(get_current_user),
db_session=Depends(get_db_session),
):
"""
Create new Collection
"""
return await create_collection(request, collection_object, current_user)
return await create_collection(request, collection_object, current_user, db_session)
@router.get("/{collection_id}")
@ -31,11 +34,12 @@ async def api_get_collection(
request: Request,
collection_id: str,
current_user: PublicUser = Depends(get_current_user),
db_session=Depends(get_db_session),
):
"""
Get single collection by ID
"""
return await get_collection(request, collection_id, current_user)
return await get_collection(request, collection_id, current_user, db_session)
@router.get("/org_id/{org_id}/page/{page}/limit/{limit}")
@ -45,26 +49,25 @@ async def api_get_collections_by(
limit: int,
org_id: str,
current_user: PublicUser = Depends(get_current_user),
db_session=Depends(get_db_session),
):
"""
Get collections by page and limit
"""
return await get_collections(request, org_id, current_user, page, limit)
return await get_collections(request, org_id, current_user, db_session, page, limit)
@router.put("/{collection_id}")
async def api_update_collection(
request: Request,
collection_object: Collection,
collection_id: str,
collection_object: CollectionUpdate,
current_user: PublicUser = Depends(get_current_user),
db_session=Depends(get_db_session),
):
"""
Update collection by ID
"""
return await update_collection(
request, collection_object, collection_id, current_user
)
return await update_collection(request, collection_object, current_user, db_session)
@router.delete("/{collection_id}")
@ -72,9 +75,10 @@ async def api_delete_collection(
request: Request,
collection_id: str,
current_user: PublicUser = Depends(get_current_user),
db_session=Depends(get_db_session),
):
"""
Delete collection by ID
"""
return await delete_collection(request, collection_id, current_user)
return await delete_collection(request, collection_id, current_user, db_session)