Skip to content

Commit c9b9cc6

Browse files
committed
Take order delivery names/dates from db
1 parent 8f9bfd4 commit c9b9cc6

File tree

4 files changed

+23
-8
lines changed

4 files changed

+23
-8
lines changed

app/modules/amap/cruds_amap.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,9 +248,11 @@ async def get_products_of_order(
248248
async def add_order_to_delivery(
249249
db: AsyncSession,
250250
order: schemas_amap.OrderComplete,
251+
delivery: models_amap.Delivery,
251252
):
252253
db.add(
253254
models_amap.Order(
255+
delivery=delivery,
254256
**order.model_dump(exclude={"products_ids", "products_quantity"}),
255257
),
256258
)

app/modules/amap/endpoints_amap.py

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,14 @@ async def get_orders_from_delivery(
359359
schemas_amap.ProductQuantity(**product.__dict__)
360360
for product in order_content
361361
]
362-
res.append(schemas_amap.OrderReturn(productsdetail=products, **order.__dict__))
362+
res.append(
363+
schemas_amap.OrderReturn(
364+
productsdetail=products,
365+
delivery_date=delivery.delivery_date,
366+
delivery_name=delivery.name,
367+
**order.__dict__,
368+
),
369+
)
363370
return res
364371

365372

@@ -384,7 +391,12 @@ async def get_order_by_id(
384391
raise HTTPException(status_code=404, detail="Delivery not found")
385392

386393
products = await cruds_amap.get_products_of_order(db=db, order_id=order_id)
387-
return schemas_amap.OrderReturn(productsdetail=products, **order.__dict__)
394+
return schemas_amap.OrderReturn(
395+
productsdetail=products,
396+
delivery_name=order.delivery.name,
397+
delivery_date=order.delivery.delivery_date,
398+
**order.__dict__,
399+
)
388400

389401

390402
@module.router.post(
@@ -443,7 +455,6 @@ async def add_order_to_delievery(
443455
order_id=order_id,
444456
amount=amount,
445457
ordering_date=ordering_date,
446-
delivery_date=delivery.delivery_date,
447458
**order.model_dump(),
448459
)
449460
balance: models_amap.Cash | None = await cruds_amap.get_cash_by_id(

app/modules/amap/models_amap.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,10 @@ class Delivery(Base):
5858
index=True,
5959
)
6060
status: Mapped[DeliveryStatusType] = mapped_column(String)
61-
orders: Mapped[list["Order"]] = relationship("Order", init=False)
61+
orders: Mapped[list["Order"]] = relationship(
62+
init=False,
63+
back_populates="delivery",
64+
)
6265
products: Mapped[list[Product]] = relationship(
6366
"Product",
6467
secondary="amap_delivery_content",
@@ -76,12 +79,13 @@ class Order(Base):
7679
ForeignKey("amap_delivery.id"),
7780
index=True,
7881
)
79-
delivery_name: Mapped[str]
8082
order_id: Mapped[str] = mapped_column(primary_key=True, index=True)
8183
amount: Mapped[float]
8284
collection_slot: Mapped[AmapSlotType]
8385
ordering_date: Mapped[datetime]
84-
delivery_date: Mapped[date]
86+
delivery: Mapped["Delivery"] = relationship(
87+
back_populates="orders",
88+
)
8589
user: Mapped[CoreUser] = relationship(
8690
"CoreUser",
8791
init=False,

app/modules/amap/schemas_amap.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,6 @@ class DeliveryProductsUpdate(BaseModel):
7070
class OrderBase(BaseModel):
7171
user_id: str
7272
delivery_id: str
73-
delivery_name: str
7473
products_ids: list[str]
7574
collection_slot: AmapSlotType
7675
products_quantity: list[int]
@@ -80,7 +79,6 @@ class OrderComplete(OrderBase):
8079
order_id: str
8180
amount: float
8281
ordering_date: datetime
83-
delivery_date: date
8482
model_config = ConfigDict(from_attributes=True)
8583

8684

0 commit comments

Comments
 (0)