From ea077f2518ef93df3d95efc9dd5cb299af323915 Mon Sep 17 00:00:00 2001 From: aaron <> Date: Thu, 27 Mar 2025 19:07:08 +0800 Subject: [PATCH] update --- app/api/endpoints/merchant_order.py | 35 +++++++++++++++++----------- jobs.sqlite | Bin 24576 -> 24576 bytes 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/app/api/endpoints/merchant_order.py b/app/api/endpoints/merchant_order.py index c7e8176..7bec9d9 100644 --- a/app/api/endpoints/merchant_order.py +++ b/app/api/endpoints/merchant_order.py @@ -386,32 +386,39 @@ async def accept_order( return error_response(code=500, message=f"确认订单失败: {str(e)}") -@router.get("/merchant/verify/{verify_code}", response_model=ResponseModel) -async def query_verify( +@router.get("/merchant/scan_query_order/{verify_code}", response_model=ResponseModel) +async def scan_query_order( verify_code: str, db: Session = Depends(get_db), merchant_user: UserDB = Depends(get_merchant_user) ): """查询待核销订单""" + merchant = db.query(MerchantDB).filter( + MerchantDB.user_id == merchant_user.userid + ).first() + if not merchant: + return error_response(code=404, message="商家不存在") + order = db.query( - MerchantOrderDB, - MerchantProductDB, - MerchantDB - ).join( - MerchantProductDB, - MerchantOrderDB.merchant_product_id == MerchantProductDB.id - ).join( - MerchantDB, - MerchantProductDB.merchant_id == MerchantDB.id + MerchantOrderDB ).filter( MerchantOrderDB.order_verify_code == verify_code, MerchantOrderDB.status == MerchantOrderStatus.PICKUP_READY, - MerchantDB.user_id == merchant_user.userid + MerchantOrderDB.merchant_id == merchant.id ).first() - return success_response(data=MerchantOrderInfo.model_validate(order)) + if not order: + return error_response(code=404, message="订单不存在或已核销") + + result = { + "order" : MerchantOrderInfo.model_validate(order), + "product" : MerchantProductInfo.model_validate(order.merchant_product), + "merchant" : MerchantInfo.model_validate(merchant) + } -@router.post("/merchant/verify", response_model=ResponseModel) + return success_response(data=result) + +@router.post("/merchant/verify_order", response_model=ResponseModel) async def verify_order( request: MerchantOrderVerify, db: Session = Depends(get_db), diff --git a/jobs.sqlite b/jobs.sqlite index 19bc42f4eab9a1c16d87b492ff4ed2206a292fbb..ab1cad5cc78828c9c7d69d6f3d58ac7e8dec667d 100644 GIT binary patch delta 19 acmZoTz}Rqrae_2s$Ne3*rGse+MD} delta 19 acmZoTz}Rqrae_2s{zMsP#{7*53*rGr=?4w~