Files
2024-02-15 00:17:51 +03:30

30 lines
879 B
Python

from typing import Any, Optional
from uuid import UUID
from fastapi import Body, UploadFile, File
from config import conf
from core.app import app
from core.utils.router import generate_router, safe_route
from upload.models import FileModel
from upload.repositories.upload import UploadRepository
router = generate_router("file", auth_dependencies=True, version='v2')
_tag_base = ['file']
_pre = conf.server.prefix_url.replace('v1', 'v2')
@router.post('/upload', response_model=FileModel, tags=_tag_base)
async def upload(file: UploadFile = File(...), payload: Optional[Any] = Body(None), module: Optional[str] = Body(None)):
return await safe_route('upload', UploadRepository.upload, file, payload, module)
@app.get(f'{_pre}' + '/file/{_id}', tags=_tag_base)
async def upload(_id: UUID):
return await UploadRepository.get_file(_id)
app.include_router(router)