chain-service/chain_service/controllers/chain.py
2024-02-25 10:43:58 +07:00

25 lines
775 B
Python

from loguru import logger
from chain_service.database.models.chain import Chain
from chain_service.repositories.chain import ChainRepository
from chain_service.dependencies.chain import get_chain_repository
from typing import Annotated
from fastapi import APIRouter, Depends, HTTPException
router = APIRouter(prefix="/chain")
@router.post("/")
async def chain_create_controller(
chain: Chain,
chain_repository: Annotated[ChainRepository, Depends(get_chain_repository)],
):
try:
created_chain = await chain_repository.create(chain)
return created_chain
except Exception:
logger.exception(f"Error during chain creation {chain.model_dump_json()}")
return HTTPException(status_code=500, detail="Error during chain creation")