This commit is contained in:
aaron 2025-03-04 22:35:18 +08:00
parent c915f4ffe4
commit 36fb885c8b
3 changed files with 14 additions and 9 deletions

View File

@ -125,6 +125,7 @@ async def get_community_time_periods(
today_orders_count = redis_client.get_community_period_today_orders_count(ctp.CommunityTimePeriodDB.id)
result.append({
"communtiy_time_period_id" :ctp.CommunityTimePeriodDB.id,
"time_period_id": ctp.CommunityTimePeriodDB.time_period_id,
"time_period_name": ctp.time_period_name,
"capacity": ctp.CommunityTimePeriodDB.capacity,

View File

@ -44,6 +44,7 @@ from fastapi import BackgroundTasks
from app.core.coupon_manager import CouponManager
from app.core.redis_client import redis_client
from app.models.timeperiod import TimePeriodDB
from app.models.community_timeperiod import CommunityTimePeriodDB
router = APIRouter()
def calculate_price(price_request: OrderPriceCalculateRequest,user: UserDB,db: Session) -> OrderPriceResult:
@ -243,15 +244,19 @@ async def create_order(
)
# 获取社区配送时段
time_period = db.query(TimePeriodDB).filter(
TimePeriodDB.id == order.time_period_id
).first()
community_time_period = db.query(CommunityTimePeriodDB,
TimePeriodDB.name.label('time_period_name'),
TimePeriodDB.from_time.label('time_period_from_time'),
TimePeriodDB.to_time.label('time_period_to_time')).filter(
CommunityTimePeriodDB.id == order.community_time_period_id
).join(TimePeriodDB,
CommunityTimePeriodDB.time_period_id == TimePeriodDB.id).first()
if time_period:
db_order.time_period_id = time_period.id
db_order.time_period_name = time_period.name
db_order.time_period_from_time = time_period.from_time
db_order.time_period_to_time = time_period.to_time
if community_time_period:
db_order.time_period_id = community_time_period.CommunityTimePeriodDB.time_period_id
db_order.time_period_name = community_time_period.time_period_name
db_order.time_period_from_time = community_time_period.time_period_from_time
db_order.time_period_to_time = community_time_period.time_period_to_time
# 获取取件图片
if order.price_request.pickup_images:

View File

@ -126,7 +126,6 @@ class OrderCreate(BaseModel):
addressid: int
price_request: OrderPriceCalculateRequest
community_time_period_id: int = 0
time_period_id: int = 0
delivery_method: DeliveryMethod = Field(
default=DeliveryMethod.DELIVERY_AT_DOORSTEP,
description="配送方式:放在门口或投递到家"