From 7dcf5e5375ab4958c097f047e2d5218a678d01d2 Mon Sep 17 00:00:00 2001 From: aaron <> Date: Thu, 13 Mar 2025 23:59:21 +0800 Subject: [PATCH] update --- app/api/endpoints/order.py | 10 +++++++--- app/models/order.py | 1 + jobs.sqlite | Bin 24576 -> 24576 bytes 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/api/endpoints/order.py b/app/api/endpoints/order.py index 81c4b86..04d18d0 100644 --- a/app/api/endpoints/order.py +++ b/app/api/endpoints/order.py @@ -86,6 +86,8 @@ def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: S coupon_discount_amount=0, points_discount_amount=0, original_amount=0, + base_delivery_price=0, + more_station_price=0, final_amount=0 ) ) @@ -107,8 +109,8 @@ def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: S # 是否有多驿站 more_station_price = float(community.more_station_price) * (len(price_request.packages) - 1) if len(price_request.packages) > 1 else 0 - - original_amount = round(more_station_price + (base_price + extra_package_price * max(0, package_count - extra_package_threshold)), 2) + base_delivery_price = round(base_price + extra_package_price * max(0, package_count - extra_package_threshold), 2) + original_amount = round(more_station_price + base_delivery_price, 2) result.price_info.package_count = package_count result.price_info.pickup_images_count = pickup_images_count @@ -116,6 +118,7 @@ def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: S result.price_info.original_amount = original_amount result.price_info.more_station_price = more_station_price result.price_info.final_amount = original_amount + result.price_info.base_delivery_price = base_delivery_price remaining_amount = original_amount @@ -149,7 +152,7 @@ def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: S result.price_info.final_amount = round(remaining_amount, 2) # 计算价格详情 - result.price_detail_text = f"基础配送费{round(base_price, 1)}元 (含{extra_package_threshold}件包裹),超出部分{round(extra_package_price, 1)}元/件,多驿站费: {round(more_station_price, 1)}元/驿站" + result.price_detail_text = f"基础配送费 {round(base_price, 1)} 元(限 {extra_package_threshold} 件),超件 {round(extra_package_price, 1)} 元 / 件,多驿站每件加收 {round(more_station_price, 1)} 元 。" return result @@ -508,6 +511,7 @@ async def get_order_detail( "pickup_code_count": order.pickup_code_count, "pickup_images_count": order.pickup_images_count, "original_amount": order.original_amount, + "base_delivery_price": order.original_amount - order.more_station_price, "coupon_discount_amount": order.coupon_discount_amount, "point_discount_amount": order.point_discount_amount, "more_station_price": order.more_station_price, diff --git a/app/models/order.py b/app/models/order.py index 7b4a1d1..787f061 100644 --- a/app/models/order.py +++ b/app/models/order.py @@ -223,6 +223,7 @@ class OrderPriceInfo(BaseModel): coupon_discount_amount: float = 0 points_discount_amount: float = 0 more_station_price: float = 0 + base_delivery_price: float = 0 coupon_id: Optional[int] = None final_amount: float = 0 diff --git a/jobs.sqlite b/jobs.sqlite index 3ee5678838d8dcaa2d4058f399fd6aaa86cd4966..a12181d7ea771b5ce07a9ba243d19eaeb5154dea 100644 GIT binary patch delta 21 bcmZoTz}Rqrae@>R6XQe~Cm^{oVL?0qN9hJO delta 21 bcmZoTz}Rqrae@>R