视频提词优化管理后台配置
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
from fastapi import APIRouter
|
||||
|
||||
from app.api.admin.video_prompt_schema_config import router as video_prompt_schema_config_router
|
||||
|
||||
router = APIRouter()
|
||||
router.include_router(video_prompt_schema_config_router)
|
||||
@@ -0,0 +1,81 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from fastapi import APIRouter, Depends
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
from app.dependencies import get_admin_user, get_db
|
||||
from app.models.user import User
|
||||
from app.schemas.video_prompt_schema_config import (
|
||||
VideoPromptSchemaConfigImportRequest,
|
||||
VideoPromptSchemaConfigOut,
|
||||
VideoPromptSchemaConfigSaveRequest,
|
||||
VideoPromptSchemaExportOut,
|
||||
VideoPromptSchemaPreviewOut,
|
||||
VideoPromptSchemaPreviewRequest,
|
||||
)
|
||||
from app.services.video_prompt_schema_config_service import (
|
||||
export_video_prompt_schema_config,
|
||||
get_video_prompt_schema_config,
|
||||
import_video_prompt_schema_config,
|
||||
preview_runtime_schema,
|
||||
reset_video_prompt_schema_config,
|
||||
save_video_prompt_schema_config,
|
||||
)
|
||||
|
||||
router = APIRouter(prefix="/admin/video-prompt-schema-config", tags=["admin-video-prompt-schema-config"])
|
||||
|
||||
|
||||
@router.get("", response_model=VideoPromptSchemaConfigOut, summary="获取视频提词 Schema 配置")
|
||||
async def get_config(
|
||||
admin: User = Depends(get_admin_user),
|
||||
db: AsyncSession = Depends(get_db),
|
||||
):
|
||||
_ = admin
|
||||
return await get_video_prompt_schema_config(db)
|
||||
|
||||
|
||||
@router.put("", response_model=VideoPromptSchemaConfigOut, summary="保存视频提词 Schema 配置")
|
||||
async def save_config(
|
||||
req: VideoPromptSchemaConfigSaveRequest,
|
||||
admin: User = Depends(get_admin_user),
|
||||
db: AsyncSession = Depends(get_db),
|
||||
):
|
||||
_ = admin
|
||||
return await save_video_prompt_schema_config(db, data=req.data, is_enabled=req.is_enabled)
|
||||
|
||||
|
||||
@router.post("/reset-default", response_model=VideoPromptSchemaConfigOut, summary="恢复默认视频提词 Schema 配置")
|
||||
async def reset_default(
|
||||
admin: User = Depends(get_admin_user),
|
||||
db: AsyncSession = Depends(get_db),
|
||||
):
|
||||
_ = admin
|
||||
return await reset_video_prompt_schema_config(db)
|
||||
|
||||
|
||||
@router.get("/export", response_model=VideoPromptSchemaExportOut, summary="导出视频提词 Schema 配置")
|
||||
async def export_config(
|
||||
admin: User = Depends(get_admin_user),
|
||||
db: AsyncSession = Depends(get_db),
|
||||
):
|
||||
_ = admin
|
||||
return await export_video_prompt_schema_config(db)
|
||||
|
||||
|
||||
@router.post("/import", response_model=VideoPromptSchemaConfigOut, summary="导入视频提词 Schema 配置")
|
||||
async def import_config(
|
||||
req: VideoPromptSchemaConfigImportRequest,
|
||||
admin: User = Depends(get_admin_user),
|
||||
db: AsyncSession = Depends(get_db),
|
||||
):
|
||||
_ = admin
|
||||
return await import_video_prompt_schema_config(db, data=req.data, is_enabled=req.is_enabled)
|
||||
|
||||
|
||||
@router.post("/preview", response_model=VideoPromptSchemaPreviewOut, summary="预览视频提词运行时 Schema")
|
||||
async def preview_config(
|
||||
req: VideoPromptSchemaPreviewRequest,
|
||||
admin: User = Depends(get_admin_user),
|
||||
):
|
||||
_ = admin
|
||||
return preview_runtime_schema(data=req.data, is_enabled=req.is_enabled, video_config=req.to_video_config())
|
||||
@@ -22,6 +22,7 @@ from app.api.v1.user_oauth import router as user_oauth_router
|
||||
from app.api.v1.user_oauth_app import router as user_oauth_app_router
|
||||
from app.api.v1.upload_material import router as upload_material_router
|
||||
from app.api.v1.pre_test_template import router as pre_test_template_router
|
||||
from app.api.admin import router as admin_module_router
|
||||
|
||||
api_router = APIRouter()
|
||||
api_router.include_router(auth_router)
|
||||
@@ -46,3 +47,4 @@ api_router.include_router(user_oauth_router)
|
||||
api_router.include_router(user_oauth_app_router)
|
||||
api_router.include_router(upload_material_router)
|
||||
api_router.include_router(pre_test_template_router)
|
||||
api_router.include_router(admin_module_router)
|
||||
|
||||
Reference in New Issue
Block a user