Files
test/api/counselor_api.py
2026-09-21 17:39:16 +08:00

69 lines
2.3 KiB
Python

from datetime import datetime
from fastapi import HTTPException, APIRouter, Depends
from sqlalchemy.orm import Session
from dao.counselor_dao import add_counselor, query_counselor,\
update_counselor, delete_counselor_id
from database import get_db
from schemas.counselor_scheme import CounselorCreate, DeleteCounselor, UpdateCounselor
router = APIRouter(
prefix="/counselor",
tags=["顾问管理"]
)
@router.post("/counselors/")
def counselor_create(cou: CounselorCreate,
db:Session=Depends(get_db)):
date_obj=(datetime.strptime(cou.c_time,"%Y-%m-%d"))
data= {
"id":cou.id,
"name":cou.name,
"c_time":date_obj.date()
}
add_counselor(db,data["id"], data["name"],data["c_time"])
return {"message":"新增成功"}
@router.get("/{id}")
def get_counselor(id:int, db:Session=Depends(get_db)):
cou = query_counselor(db, id)
if not cou:
raise HTTPException(404,detail="顾问不存在")
return {"data":cou}
# @router.get("/counselors/{name}")
# async def counselor_get_name(name,db:Session=Depends(get_db)):
# res=query_counselor_name(db,name)
# return {"message":"根据名字查询成功","data":res}
@router.delete("/{id}")
async def counselor_del_id(dele:DeleteCounselor,
db:Session=Depends(get_db)):
delete_counselor_id(db,dele.id)
return {"message":"根据id删除成功"}
# @router.delete("/counselors/{name}")
# async def counselor_del_name(name:str,
# db:Session=Depends(get_db)):
# delete_counselor_name(db,name)
# return {"message":"根据姓名删除成功"}
@router.put("/{id}")
async def update_tea(id:int,update:UpdateCounselor,db:Session=Depends(get_db)):
date_obj = datetime.strptime(update.c_time, "%Y-%m-%d")
res=update_counselor(db,id=id,
new_name=update.name,
new_c_time=date_obj
)
if res.get("msg")=="没找到顾问信息":
raise HTTPException(404,detail="顾问不存在")
return {"msg":"修改成功","data":res}
# @router.put("/counselors/{name}")
# async def counselor_update_name(id:int,name:str,c_time:datetime,db:Session=Depends(get_db)):
# res=query_counselor_name(db,id,name,c_time)
# return res