from fastapi import APIRouter,Depends,HTTPException from day22.model.order_model import Order from day22.schema.order_schema import Request,OrderResponse from day22.database import get_db from day22.dao.order_dao import * OrderAPI = APIRouter(prefix="/orders", tags=["订单管理"]) @OrderAPI.post("/orders",summary='添加订单接口') def create_order(order: Request,db=Depends(get_db)): d = order.model_dump() r = add_student_dao(o=d, db=db) if not r: raise HTTPException(status_code=500, detail='服务器繁忙,请稍后添加!') return OrderResponse(totals=1, data=d) # ③ 编写put接口对订单进行更新操作 @OrderAPI.put("/orders/{id}",summary='更新订单接口') def update_order(id: int, order: Request,db=Depends(get_db)): d = order.model_dump(exclude_unset=True) r = update_orders_dao(id=id, update_data=d, db=db) if not r: raise HTTPException(status_code=500, detail='没有更新!') return {'code': 200, 'totals': r, 'detail': '更新成功'} # ④ 编写get接口对订单进行查询操作 @OrderAPI.get("/orders/{id}",summary='查询订单接口') def get_order(id: int,db=Depends(get_db)): req = get_order_dao(id = id, db=db) return req # ⑤ 编写delete接口对订单进行删除操作 @OrderAPI.delete("/orders/{id}",summary='删除订单接口') def delete_order(order_id: int, db=Depends(get_db)): r = delete_order_dao(id, db=db) return {'code': 200, 'totals': r, 'detail': '删除成功'}