增加pickup_images_count
This commit is contained in:
parent
509224a687
commit
a1dddbdf7b
@ -52,21 +52,27 @@ def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: S
|
||||
OrderPriceResult: 包含价格信息和使用的优惠券/积分信息
|
||||
"""
|
||||
# 计算所有包裹中的取件码总数
|
||||
pickup_code_count = 0
|
||||
pickup_images_count = 0
|
||||
package_count = 0
|
||||
if price_request.pickup_images:
|
||||
package_count += price_request.package_count
|
||||
pickup_images_count = price_request.pickup_images_count
|
||||
|
||||
if price_request.packages:
|
||||
package_count += sum(
|
||||
pickup_code_count = sum(
|
||||
# 如果package.pickup_codes是空字符串,则取0
|
||||
0 if len(package.pickup_codes.split(',')) == 0 else len(package.pickup_codes.split(','))
|
||||
for package in price_request.packages
|
||||
if package.pickup_codes
|
||||
)
|
||||
|
||||
package_count = pickup_code_count + pickup_images_count
|
||||
|
||||
result = OrderPriceResult(
|
||||
price_info=OrderPriceInfo(
|
||||
package_count=package_count,
|
||||
pickup_images_count=pickup_images_count,
|
||||
pickup_code_count=pickup_code_count,
|
||||
coupon_discount_amount=0,
|
||||
points_discount_amount=0,
|
||||
original_amount=0,
|
||||
@ -83,6 +89,8 @@ def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: S
|
||||
original_amount += extra_count * settings.ORDER_EXTRA_PACKAGE_PRICE
|
||||
|
||||
result.price_info.package_count = package_count
|
||||
result.price_info.pickup_images_count = pickup_images_count
|
||||
result.price_info.pickup_code_count = pickup_code_count
|
||||
result.price_info.original_amount = original_amount
|
||||
result.price_info.final_amount = original_amount
|
||||
|
||||
@ -197,6 +205,8 @@ async def create_order(
|
||||
address_community_building_name=address.community_building_name,
|
||||
address_detail=address.address_detail,
|
||||
package_count=price_info.package_count,
|
||||
pickup_images_count=price_info.pickup_images_count,
|
||||
pickup_code_count=price_info.pickup_code_count,
|
||||
original_amount=original_amount,
|
||||
coupon_discount_amount=coupon_discount,
|
||||
point_discount_amount=price_info.points_discount_amount,
|
||||
@ -358,6 +368,8 @@ async def get_order_detail(
|
||||
"userid": order.userid,
|
||||
"pickup_images": order.optimized_pickup_images,
|
||||
"package_count": order.package_count,
|
||||
"pickup_code_count": order.pickup_code_count,
|
||||
"pickup_images_count": order.pickup_images_count,
|
||||
"original_amount": order.original_amount,
|
||||
"coupon_discount_amount": order.coupon_discount_amount,
|
||||
"coupon_id": order.coupon_id,
|
||||
@ -557,6 +569,8 @@ async def get_user_orders(
|
||||
"status": order.status,
|
||||
"pickup_images": order.optimized_pickup_images,
|
||||
"package_count": order.package_count,
|
||||
"pickup_code_count": order.pickup_code_count,
|
||||
"pickup_images_count": order.pickup_images_count,
|
||||
"create_time": order.create_time,
|
||||
"delivery_method": order.delivery_method,
|
||||
"original_amount": order.original_amount,
|
||||
@ -756,6 +770,8 @@ async def get_deliveryman_orders(
|
||||
"status": order.status,
|
||||
"pickup_images": order.optimized_pickup_images,
|
||||
"package_count": order.package_count,
|
||||
"pickup_code_count": order.pickup_code_count,
|
||||
"pickup_images_count": order.pickup_images_count,
|
||||
"create_time": order.create_time,
|
||||
"delivery_method": order.delivery_method,
|
||||
"original_amount": order.original_amount,
|
||||
@ -1143,6 +1159,8 @@ async def get_admin_orders(
|
||||
"status": order.status,
|
||||
"pickup_images": order.optimized_pickup_images,
|
||||
"package_count": order.package_count,
|
||||
"pickup_code_count": order.pickup_code_count,
|
||||
"pickup_images_count": order.pickup_images_count,
|
||||
"create_time": order.create_time,
|
||||
"delivery_method": order.delivery_method,
|
||||
"original_amount": order.original_amount,
|
||||
|
||||
@ -53,6 +53,9 @@ class ShippingOrderDB(Base):
|
||||
|
||||
# 取件图片
|
||||
pickup_images = Column(String(1000), nullable=True) # 取件图片URL,多个URL用逗号分隔
|
||||
pickup_images_count = Column(Integer, nullable=False, default=0) # 取件图片数量
|
||||
|
||||
pickup_code_count = Column(Integer, nullable=False, default=0) # 取件码数量
|
||||
|
||||
delivery_method = Column(Enum(DeliveryMethod), nullable=False)
|
||||
package_count = Column(Integer, nullable=False)
|
||||
@ -108,8 +111,8 @@ class OrderPackage(BaseModel):
|
||||
|
||||
# 先定义 OrderPriceCalculateRequest
|
||||
class OrderPriceCalculateRequest(BaseModel):
|
||||
package_count: int = 0
|
||||
pickup_images: Optional[str] = None
|
||||
pickup_images_count: int = 0
|
||||
packages: Optional[List[OrderPackage]] = None
|
||||
|
||||
# 然后再定义 OrderCreate
|
||||
@ -135,7 +138,9 @@ class OrderInfo(BaseModel):
|
||||
address_customer_gender: Gender
|
||||
|
||||
pickup_images: Optional[str] = None
|
||||
pickup_images_count: int
|
||||
package_count: int
|
||||
pickup_code_count: int
|
||||
original_amount: float
|
||||
coupon_discount_amount: float
|
||||
point_discount_amount: float = 0
|
||||
@ -179,6 +184,8 @@ class OrderPackageInfo(BaseModel):
|
||||
|
||||
class OrderPriceInfo(BaseModel):
|
||||
package_count: int = 0
|
||||
pickup_images_count: int = 0
|
||||
pickup_code_count: int = 0
|
||||
original_amount: float = 0
|
||||
coupon_discount_amount: float = 0
|
||||
points_discount_amount: float = 0
|
||||
|
||||
Loading…
Reference in New Issue
Block a user