rename module pyrohlik to rohlik
This commit is contained in:
parent
d10cef9705
commit
e3ba823070
8 changed files with 1 additions and 1 deletions
79
rohlik/models/order.py
Normal file
79
rohlik/models/order.py
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
from decimal import Decimal
|
||||
from datetime import datetime
|
||||
from typing import List, Optional
|
||||
from pydantic import BaseModel, Field, RootModel
|
||||
|
||||
|
||||
class Price(BaseModel):
|
||||
amount: Decimal
|
||||
currency: str
|
||||
|
||||
|
||||
class PriceCompositionOrder(BaseModel):
|
||||
total: Price
|
||||
goods: Price
|
||||
delivery: Price
|
||||
credits_used: Price = Field(alias='creditsUsed')
|
||||
courier_tip: Price = Field(alias='courierTip')
|
||||
fines: Price
|
||||
reusable_bags_deposit: Price = Field(alias='reusableBagsDeposit')
|
||||
|
||||
|
||||
class PriceCompositionOrderProduct(BaseModel):
|
||||
total: Price
|
||||
unit: Price
|
||||
|
||||
class PriceCompositionOrderList(BaseModel):
|
||||
total: Price
|
||||
|
||||
|
||||
class OrderProduct(BaseModel):
|
||||
name: str
|
||||
unit: str
|
||||
textual_amount: str = Field(..., alias='textualAmount')
|
||||
amount: int
|
||||
images: List[str]
|
||||
price_composition: PriceCompositionOrderProduct = Field(..., alias='priceComposition')
|
||||
compensated: bool
|
||||
id: int
|
||||
|
||||
|
||||
class DeliverySlot(BaseModel):
|
||||
id: int
|
||||
type: str
|
||||
since: datetime
|
||||
till: datetime
|
||||
|
||||
|
||||
class OrderList(BaseModel):
|
||||
id: int
|
||||
items_count: int = Field(alias='itemsCount')
|
||||
order_time: datetime = Field(alias='orderTime')
|
||||
price_composition: PriceCompositionOrderList = Field(..., alias='priceComposition')
|
||||
delivery_slot: Optional[DeliverySlot] = Field(..., alias='deliverySlot')
|
||||
|
||||
|
||||
class Document(BaseModel):
|
||||
type: str
|
||||
title: str
|
||||
link: str
|
||||
|
||||
|
||||
class Order(BaseModel):
|
||||
id: int
|
||||
items_count: int = Field(..., alias='itemsCount')
|
||||
price_composition: PriceCompositionOrder = Field(..., alias='priceComposition')
|
||||
order_time: datetime = Field(..., alias='orderTime')
|
||||
delivery_type: str = Field(..., alias='deliveryType')
|
||||
delivery_slot: DeliverySlot = Field(..., alias='deliverySlot')
|
||||
state: str
|
||||
payment: int
|
||||
address: str
|
||||
delivery_note: str = Field(..., alias='deliveryNote')
|
||||
documents: List[Document]
|
||||
available_actions: List[str] = Field(..., alias='availableActions')
|
||||
items: List[OrderProduct]
|
||||
|
||||
|
||||
class Orders(RootModel):
|
||||
root: List[OrderList]
|
||||
Loading…
Add table
Add a link
Reference in a new issue