urban-investment-research/Mods/EditRecord/Router.py

82 lines
3.8 KiB
Python

from fastapi import APIRouter, Depends, HTTPException
from sqlalchemy.orm import Session
from Context.common import common_db, auth_util
from . import Schemas
from . import Crud
router = APIRouter(tags=["编辑记录"],
prefix="/record", dependencies=[Depends(auth_util.token_data_depend)])
@router.post("/edit_item_type/add", summary="添加修改项类型", response_model=Schemas.EditItemTypeAddRes)
def edit_item_type_add(req: Schemas.EditItemTypeAddReq, db: Session = Depends(common_db.get_db)):
item = Crud.edit_item_type_add(db, req)
return Schemas.EditItemTypeAddRes(**item.to_dict())
@router.post("/edit_item_type/delete", summary="删除修改项类型")
def edit_item_type_delete(req: Schemas.EditItemTypeDeleteReq, db: Session = Depends(common_db.get_db)):
Crud.edit_item_type_delete(db, req.id)
return "删除成功"
@router.post("/edit_item_type/update", summary="更新修改项类型", response_model=Schemas.EditItemTypeUpdateRes)
def edit_item_type_update(req: Schemas.EditItemTypeUpdateReq, db: Session = Depends(common_db.get_db)):
item = Crud.edit_item_type_update(db, req)
if not item:
raise HTTPException(detail="该数据不存在,无法更新", status_code=404)
return Schemas.EditItemTypeUpdateRes(**item.to_dict())
@router.post("/edit_item_type/get", summary="获取修改项类型", response_model=Schemas.EditItemTypeGetRes)
def edit_item_type_get(req: Schemas.EditItemTypeGetReq, db: Session = Depends(common_db.get_db)):
item = Crud.edit_item_type_get(db, req.id)
if not item:
raise HTTPException(detail="未查询到信息", status_code=404)
return Schemas.EditItemTypeGetRes(**item.to_dict())
@router.post("/edit_item_type/query", summary="查询修改项类型", response_model=Schemas.EditItemTypeQueryRes)
def edit_item_type_query(req: Schemas.EditItemTypeQueryReq, db: Session = Depends(common_db.get_db)):
count, query = Crud.edit_item_type_query(db, req)
items = [Schemas.EditItemTypeInfo(**item.to_dict()) for item in query]
return Schemas.EditItemTypeQueryRes(count=count, items=items)
#########
@router.post("/edit_record/add", summary="添加编辑记录", response_model=Schemas.EditRecordAddRes)
def edit_record_query(req: Schemas.EditRecordAddReq, db: Session = Depends(common_db.get_db)):
item = Crud.edit_record_add(db, req)
return Schemas.EditRecordAddRes(**item.to_dict())
@router.post("/edit_record/delete", summary="删除编辑记录")
def edit_record_delete(req: Schemas.EditRecordDeleteReq, db: Session = Depends(common_db.get_db)):
Crud.edit_record_delete(db, req.id)
return "删除成功"
@router.post("/edit_record/update", summary="更新编辑记录", response_model=Schemas.EditRecordUpdateRes)
def edit_record_update(req: Schemas.EditRecordUpdateReq, db: Session = Depends(common_db.get_db)):
item = Crud.edit_record_update(db, req)
if not item:
raise HTTPException(detail="该数据不存在,无法更新", status_code=404)
return Schemas.EditRecordUpdateRes(**item.to_dict())
@router.post("/edit_record/get", summary="获取编辑记录", response_model=Schemas.EditRecordGetRes)
def edit_record_get(req: Schemas.EditRecordGetReq, db: Session = Depends(common_db.get_db)):
item = Crud.edit_record_get(db, req.id)
if not item:
raise HTTPException(detail="未查询到信息", status_code=404)
return Schemas.EditRecordGetRes(**item.to_dict())
@router.post("/edit_record/query", summary="查询编辑记录", response_model=Schemas.EditRecordQueryRes)
def edit_record_query(req: Schemas.EditRecordQueryReq, db: Session = Depends(common_db.get_db)):
count, query = Crud.edit_record_query(db, req)
items = [Schemas.EditRecordFullInfo(**item.to_dict()) for item in query]
return Schemas.EditRecordQueryRes(count=count, items=items)