73 lines
1.1 KiB
Python
73 lines
1.1 KiB
Python
from modules.fulfillment_base.schemas.service import ServiceSchema
|
|
from schemas.base import BaseSchema, BaseResponse
|
|
|
|
|
|
# region Entity
|
|
|
|
|
|
class DealServiceSchema(BaseSchema):
|
|
deal_id: int
|
|
service_id: int
|
|
service: ServiceSchema
|
|
quantity: int
|
|
price: float
|
|
is_fixed_price: bool
|
|
|
|
|
|
class CreateDealServiceSchema(BaseSchema):
|
|
deal_id: int
|
|
service_id: int
|
|
quantity: int
|
|
price: float
|
|
|
|
|
|
class UpdateDealServiceSchema(BaseSchema):
|
|
quantity: int
|
|
price: float
|
|
is_fixed_price: bool
|
|
|
|
|
|
# endregion
|
|
|
|
# region Request
|
|
|
|
|
|
class CreateDealServiceRequest(BaseSchema):
|
|
entity: CreateDealServiceSchema
|
|
|
|
|
|
class UpdateDealServiceRequest(BaseSchema):
|
|
entity: UpdateDealServiceSchema
|
|
|
|
|
|
class DealAddKitRequest(BaseSchema):
|
|
deal_id: int
|
|
kit_id: int
|
|
|
|
|
|
# endregion
|
|
|
|
# region Response
|
|
|
|
|
|
class GetDealServicesResponse(BaseSchema):
|
|
items: list[DealServiceSchema]
|
|
|
|
|
|
class CreateDealServiceResponse(BaseResponse):
|
|
entity: DealServiceSchema
|
|
|
|
|
|
class UpdateDealServiceResponse(BaseResponse):
|
|
pass
|
|
|
|
|
|
class DeleteDealServiceResponse(BaseResponse):
|
|
pass
|
|
|
|
|
|
class DealAddKitResponse(BaseResponse):
|
|
pass
|
|
|
|
# endregion
|