add missing endpoints for creating items
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 4s

This commit is contained in:
Thomas Peetz
2026-05-26 22:43:04 +02:00
parent 0f9c90b883
commit c885f6cc02
16 changed files with 314 additions and 145 deletions
+4 -4
View File
@@ -16,9 +16,9 @@ from src.apis.version1.comics import (
issuework,
)
from src.apis.version1.media import (
mediaactor,
actor,
file,
mediaactorfile,
mediafile,
mediavideo,
mediaarticle,
)
@@ -93,7 +93,7 @@ api_router.include_router(
dependencies=[Depends(get_current_user_from_token)],
)
api_router.include_router(
mediafile.router,
file.router,
prefix="/media",
tags=["media"],
dependencies=[Depends(get_current_user_from_token)],
@@ -111,7 +111,7 @@ api_router.include_router(
dependencies=[Depends(get_current_user_from_token)],
)
api_router.include_router(
mediaactor.router,
actor.router,
prefix="/media",
tags=["media"],
dependencies=[Depends(get_current_user_from_token)],
@@ -2,7 +2,7 @@ from typing import List
from fastapi import APIRouter, status, HTTPException
from src.core.log_conf import logger
from src.db.repository.media import create_new_mediaactor, delete_mediaactor
from src.db.repository.media.actor import delete_mediaactor, import_mediaactor
from src.db.session import SessionDep
from src.schema.media.actor import MediaActorModel, MediaActorResponse, actor_to_response
from src.db.models.media import MediaActor
@@ -38,8 +38,8 @@ def delete_actor(actor_id: str, db: SessionDep):
def add_actor(new_actor: MediaActorModel, db: SessionDep) -> MediaActorResponse:
logger.info(f"add actor {new_actor.url}")
try:
mediaActor: MediaActor = create_new_mediaactor(new_actor, db)
except:
raise HTTPException(status_code=409, detail="Link duplicate")
mediaActor: MediaActor = import_mediaactor(db, new_actor)
except Exception as exception:
raise HTTPException(status_code=409, detail=f"Link duplicate: {exception}")
response = actor_to_response(mediaActor)
return response
@@ -2,17 +2,14 @@ from typing import List
from fastapi import APIRouter, status, HTTPException
from src.core.log_conf import logger
from src.db.repository.media import (
create_new_mediaactorfile,
create_new_mediafile,
delete_mediafile,
)
from src.db.repository.media.actorfile import create_new_mediaactorfile
from src.db.repository.media.file import delete_mediafile, import_mediafile
from src.db.session import SessionDep
from src.schema.media.actor import MediaActorResponse, actor_to_response
from src.schema.media.actorfile import MediaActorFileResponse, actorfile_to_response
from src.schema.media.file import (
MediaFileModel,
MediaFileResponse,
Link,
file_to_response,
file_to_model,
)
@@ -150,11 +147,11 @@ def update_file(
@router.post("/files", status_code=status.HTTP_201_CREATED)
def add_file(new_link: Link, db: SessionDep) -> MediaFileResponse: # type: ignore
logger.info("add url %s", new_link.url)
def add_file(new_file: MediaFileModel, db: SessionDep) -> MediaFileResponse:
logger.info("add mediafile %s", new_file)
try:
mediaFile: MediaFile = create_new_mediafile(new_link.url, db)
mediaFile: MediaFile = import_mediafile(db, new_file)
except:
raise HTTPException(status_code=409, detail="Link duplicate")
raise HTTPException(status_code=409, detail="MediaFile duplicate")
response = file_to_response(mediaFile)
return response
@@ -1,7 +1,7 @@
from typing import List
from fastapi import APIRouter, status, HTTPException
from src.db.models.media import MediaActorFile
from src.db.repository.media import delete_mediaactorfile
from src.db.repository.media.actorfile import delete_mediaactorfile
from src.db.session import SessionDep
from src.schema.media.actorfile import MediaActorFileResponse, actorfile_to_response