This commit is contained in:
aaron 2025-03-08 23:40:30 +08:00
parent 9d84614ea8
commit 5eaaaf32ca

View File

@ -147,6 +147,15 @@ def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: S
return result return result
def format_delivery_time(delivery_date: datetime, time_period_name: str) -> str:
if delivery_date == datetime.now().date():
return f"今日 {time_period_name}"
elif delivery_date == datetime.now().date() - timedelta(days=1):
return f"昨日 {time_period_name}"
else:
return f"{delivery_date.strftime('%Y-%m-%d')}"
@router.post("/pre-order", response_model=ResponseModel) @router.post("/pre-order", response_model=ResponseModel)
async def pre_order( async def pre_order(
request: OrderPriceCalculateRequest, request: OrderPriceCalculateRequest,
@ -370,7 +379,7 @@ async def create_order(
data={ data={
"order": OrderInfo.model_validate(db_order), "order": OrderInfo.model_validate(db_order),
"packages": [OrderPackageInfo.model_validate(p) for p in packages], "packages": [OrderPackageInfo.model_validate(p) for p in packages],
"success_text" : f"订单预计 {db_order.time_period_name} 送达,请注意查收" "success_text" : f"预计 {format_delivery_time(db_order.delivery_date, db_order.time_period_name)} 送达,请注意查收"
} }
) )
except Exception as e: except Exception as e:
@ -472,20 +481,7 @@ async def get_order_detail(
} }
# 计算配送时间 # 计算配送时间
delivery_time = "预计 今日 送达" delivery_time = format_delivery_time(order.delivery_date, order.time_period_name)
# 如果配送时段不为空,则使用配送时段的时间
if order.time_period_id:
if order.delivery_date == datetime.now().date():
delivery_time = f"今日 {order.time_period_name}"
elif order.delivery_date == datetime.now().date() + timedelta(days=1):
delivery_time = f"明日 {order.time_period_name}"
elif order.delivery_date == datetime.now().date() - timedelta(days=1):
delivery_time = f"昨日 {order.time_period_name}"
else:
delivery_time = f"{order.delivery_date} {order.time_period_name}"
else:
delivery_time = f"今日"
# 构建响应数据 # 构建响应数据
order_data = { order_data = {
@ -970,16 +966,7 @@ async def deliveryman_orders(
"result": fee.OrderAdditionalFeeDB.result, "result": fee.OrderAdditionalFeeDB.result,
}) })
# 如果配送时段不为空,则使用配送时段的时间 delivery_time = format_delivery_time(order.delivery_date, order.time_period_name)
if order.time_period_id:
if order.delivery_date == datetime.now().date():
delivery_time = f"{order.time_period_name}"
elif order.delivery_date == datetime.now().date() + timedelta(days=1):
delivery_time = f"明日 {order.time_period_name}"
else:
delivery_time = f"{order.delivery_date}"
else:
delivery_time = f"今日"
orders.append({ orders.append({
"orderid": order.orderid, "orderid": order.orderid,