54 lines
2.6 KiB
Python
54 lines
2.6 KiB
Python
from fastapi import APIRouter, Depends, HTTPException
|
|
from sqlalchemy.orm import Session
|
|
|
|
from ...common import get_db
|
|
from . import crud
|
|
from . import schemas
|
|
|
|
router = APIRouter(tags=["chinese_name"], prefix='/snake_name')
|
|
|
|
|
|
@router.post("/add", summary="添加chinese_name", response_model=schemas.UpperCamelCaseNameAddRes)
|
|
def snake_name_add(req: schemas.UpperCamelCaseNameAddReq, db: Session = Depends(get_db)):
|
|
item = crud.snake_name_add(db, req)
|
|
return schemas.UpperCamelCaseNameAddRes(**item.to_dict())
|
|
|
|
|
|
@router.post("/delete", summary="删除chinese_name")
|
|
def snake_name_delete(req: schemas.UpperCamelCaseNameDeleteReq, db: Session = Depends(get_db)):
|
|
crud.snake_name_delete(db, req)
|
|
return "删除成功"
|
|
|
|
|
|
@router.post("/update", summary="更新chinese_name", response_model=schemas.UpperCamelCaseNameUpdateRes)
|
|
def snake_name_update(req: schemas.UpperCamelCaseNameUpdateReq, db: Session = Depends(get_db)):
|
|
item = crud.snake_name_update(db, req)
|
|
return schemas.UpperCamelCaseNameUpdateRes(**item.to_dict())
|
|
|
|
|
|
@router.post("/get", summary="获取chinese_name", response_model=schemas.UpperCamelCaseNameGetRes)
|
|
def snake_name_get(req: schemas.UpperCamelCaseNameGetReq, db: Session = Depends(get_db)):
|
|
item = crud.snake_name_get(db, req)
|
|
if not item:
|
|
raise HTTPException(detail="未查询到信息", status_code=404)
|
|
return schemas.UpperCamelCaseNameGetRes(**item.to_full_dict())
|
|
|
|
|
|
@router.post("/query", summary="查询chinese_name", response_model=schemas.UpperCamelCaseNameQueryRes)
|
|
def snake_name_query(req: schemas.UpperCamelCaseNameQueryReq, db: Session = Depends(get_db)):
|
|
count, query = crud.snake_name_query(db, req)
|
|
items = [schemas.UpperCamelCaseNameInfo(**item.to_full_dict(include=req.include,
|
|
ex_include=req.ex_include,
|
|
relation_use_id=req.relation_use_id)) for item in query]
|
|
return schemas.UpperCamelCaseNameQueryRes(count=count, items=items)
|
|
|
|
|
|
@router.post("/all", summary="获取所有chinese_name", response_model=schemas.UpperCamelCaseNameAllRes)
|
|
def snake_name_all(req: schemas.UpperCamelCaseNameAllReq, db: Session = Depends(get_db)):
|
|
query = crud.snake_name_all(db)
|
|
items = [schemas.UpperCamelCaseNameInfo(**item.to_full_dict(include=req.include,
|
|
ex_include=req.ex_include,
|
|
relation_use_id=req.relation_use_id)) for item in query]
|
|
return schemas.UpperCamelCaseNameAllRes(items=items)
|
|
#########
|