fix: removed crap, category on service and deal

This commit is contained in:
2024-09-27 04:50:01 +03:00
parent 5df64d4916
commit 91cf44f3ae
10 changed files with 258 additions and 64 deletions

View File

@@ -3,12 +3,13 @@ from typing import List, Optional, Union
from pydantic import constr, field_validator
from models import ServiceCategoryPrice, ServicePriceCategory
from schemas.base import BaseSchema, OkMessageSchema
from schemas.billing import DealBillRequestSchema
from schemas.client import ClientSchema
from schemas.marketplace import BaseMarketplaceSchema
from schemas.product import ProductSchema
from schemas.service import ServiceSchema
from schemas.service import ServiceSchema, ServicePriceCategorySchema
from schemas.shipping_warehouse import ShippingWarehouseSchema
from schemas.user import UserSchema
@@ -37,6 +38,7 @@ class DealSummary(BaseSchema):
shipment_warehouse_id: Optional[int]
shipment_warehouse_name: Optional[str]
class DealServiceSchema(BaseSchema):
service: ServiceSchema
quantity: int
@@ -81,6 +83,7 @@ class DealSchema(BaseSchema):
comment: str
shipping_warehouse: Optional[Union[ShippingWarehouseSchema, str]] = None
bill_request: Optional[DealBillRequestSchema] = None
category: Optional[ServicePriceCategorySchema] = None
class DealGeneralInfoSchema(BaseSchema):
@@ -110,6 +113,7 @@ class DealQuickCreateRequest(BaseSchema):
acceptance_date: datetime.datetime
shipping_warehouse: constr(strip_whitespace=True)
base_marketplace: BaseMarketplaceSchema
category: Optional[ServicePriceCategorySchema] = None
class DealSummaryRequest(BaseSchema):
@@ -212,9 +216,11 @@ class DealAddKitRequest(BaseSchema):
class DealCreateGuestUrlRequest(BaseSchema):
deal_id: int
class DealCompleteRequest(BaseSchema):
deal_id: int
# endregion Requests
# region Responses
@@ -311,6 +317,7 @@ class DealAddKitResponse(OkMessageSchema):
class DealCreateGuestUrlResponse(OkMessageSchema):
url: str
class DealCompleteResponse(OkMessageSchema):
pass

View File

@@ -4,6 +4,8 @@ from schemas.base import BaseSchema, OkMessageSchema, BaseEnumSchema
# region Entities
# region Services
class ServicePriceRangeSchema(BaseSchema):
id: int | None
from_quantity: int
@@ -16,6 +18,16 @@ class ServiceCategorySchema(BaseSchema):
name: str
class ServicePriceCategorySchema(BaseSchema):
id: int
name: str
class ServiceCategoryPriceSchema(BaseSchema):
category: ServicePriceCategorySchema
price: float
class ServiceSchema(BaseSchema):
id: int
name: str
@@ -23,9 +35,13 @@ class ServiceSchema(BaseSchema):
price: float
service_type: int
price_ranges: List[ServicePriceRangeSchema]
category_prices: List[ServiceCategoryPriceSchema]
cost: Optional[int]
# endregion
# region Kits
class BaseServiceKitSchema(BaseSchema):
name: str
service_type: int
@@ -47,6 +63,12 @@ class UpdateServiceKitSchema(BaseServiceKitSchema):
# endregion
# region Category prices
# endregion
# endregion
# region Requests
class ServiceCreateRequest(BaseSchema):
@@ -73,6 +95,19 @@ class UpdateServicesKitRequest(BaseSchema):
data: UpdateServiceKitSchema
class CreatePriceCategoryRequest(BaseSchema):
name: str
class UpdatePriceCategoryRequest(BaseSchema):
id: int
name: str
class DeletePriceCategoryRequest(BaseSchema):
id: int
# endregion
@@ -111,4 +146,21 @@ class UpdateServicesKitResponse(OkMessageSchema):
class GetAllServicesKitsResponse(BaseSchema):
services_kits: List[GetServiceKitSchema]
class GetAllPriceCategoriesResponse(BaseSchema):
price_categories: List[ServicePriceCategorySchema]
class CreatePriceCategoryResponse(OkMessageSchema):
pass
class UpdatePriceCategoryResponse(OkMessageSchema):
pass
class DeletePriceCategoryResponse(OkMessageSchema):
pass
# endregion