fix: new deal statuses, delivery date, receiving slot date
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
from datetime import datetime
|
||||
from enum import IntEnum, unique
|
||||
from typing import Optional, TYPE_CHECKING
|
||||
|
||||
@@ -12,15 +13,27 @@ if TYPE_CHECKING:
|
||||
from . import DealBillRequest, ServicePriceCategory
|
||||
|
||||
|
||||
# @unique
|
||||
# class DealStatus(IntEnum):
|
||||
# CREATED = 0
|
||||
# AWAITING_ACCEPTANCE = 1
|
||||
# PACKAGING = 2
|
||||
# AWAITING_SHIPMENT = 3
|
||||
# AWAITING_PAYMENT = 4
|
||||
# COMPLETED = 5
|
||||
# CANCELLED = 6
|
||||
|
||||
@unique
|
||||
class DealStatus(IntEnum):
|
||||
CREATED = 0
|
||||
AWAITING_ACCEPTANCE = 1
|
||||
PACKAGING = 2
|
||||
AWAITING_SHIPMENT = 3
|
||||
AWAITING_PAYMENT = 4
|
||||
COMPLETED = 5
|
||||
CANCELLED = 6
|
||||
READY_FOR_WORK = 2
|
||||
PACKAGING = 3
|
||||
AWAITING_SHIPMENT = 4
|
||||
IN_DELIVERY = 5
|
||||
AWAITING_PAYMENT = 6
|
||||
COMPLETED = 7
|
||||
CANCELLED = 8
|
||||
|
||||
|
||||
class DealPriceCategory(BaseModel):
|
||||
@@ -51,6 +64,9 @@ class Deal(BaseModel):
|
||||
base_marketplace_key: Mapped[str] = mapped_column(ForeignKey("base_marketplaces.key"), nullable=True)
|
||||
base_marketplace: Mapped["BaseMarketplace"] = relationship(lazy="joined")
|
||||
|
||||
delivery_date: Mapped[Optional[datetime]] = mapped_column(nullable=True)
|
||||
receiving_slot_date: Mapped[Optional[datetime]] = mapped_column(nullable=True)
|
||||
|
||||
services = relationship(
|
||||
'DealService',
|
||||
back_populates='deal',
|
||||
|
||||
@@ -38,6 +38,9 @@ class DealSummary(BaseSchema):
|
||||
shipment_warehouse_id: Optional[int]
|
||||
shipment_warehouse_name: Optional[str]
|
||||
|
||||
delivery_date: Optional[datetime.datetime] = None
|
||||
receiving_slot_date: Optional[datetime.datetime] = None
|
||||
|
||||
|
||||
class DealServiceSchema(BaseSchema):
|
||||
service: ServiceSchema
|
||||
@@ -85,6 +88,9 @@ class DealSchema(BaseSchema):
|
||||
bill_request: Optional[DealBillRequestSchema] = None
|
||||
category: Optional[ServicePriceCategorySchema] = None
|
||||
|
||||
delivery_date: Optional[datetime.datetime] = None
|
||||
receiving_slot_date: Optional[datetime.datetime] = None
|
||||
|
||||
|
||||
class DealGeneralInfoSchema(BaseSchema):
|
||||
name: str
|
||||
@@ -92,6 +98,8 @@ class DealGeneralInfoSchema(BaseSchema):
|
||||
is_completed: bool
|
||||
comment: str
|
||||
shipping_warehouse: Optional[str] = None
|
||||
delivery_date: Optional[datetime.datetime] = None
|
||||
receiving_slot_date: Optional[datetime.datetime] = None
|
||||
|
||||
|
||||
# endregion Entities
|
||||
|
||||
@@ -250,7 +250,9 @@ class DealService(BaseService):
|
||||
created_at=deal.created_at,
|
||||
shipment_warehouse_id=deal.shipping_warehouse_id,
|
||||
shipment_warehouse_name=shipment_warehouse_name,
|
||||
total_products=products_count
|
||||
total_products=products_count,
|
||||
delivery_date=deal.delivery_date,
|
||||
receiving_slot_date=deal.receiving_slot_date
|
||||
)
|
||||
)
|
||||
return DealSummaryResponse(summaries=summaries)
|
||||
@@ -346,6 +348,8 @@ class DealService(BaseService):
|
||||
deal.comment = request.data.comment
|
||||
deal.is_deleted = request.data.is_deleted
|
||||
deal.is_completed = request.data.is_completed
|
||||
deal.delivery_date = request.data.delivery_date
|
||||
deal.receiving_slot_date = request.data.receiving_slot_date
|
||||
|
||||
# Updating shipping warehouse
|
||||
shipping_warehouse_service = ShippingWarehouseService(self.session)
|
||||
|
||||
Reference in New Issue
Block a user