Files
Fulfillment-Backend/schemas/barcode.py
2024-05-07 08:06:51 +03:00

70 lines
1.4 KiB
Python

from schemas.base import CustomModelCamel, OkMessageSchema
# region Entities
class BarcodeTemplateAttributeSchema(CustomModelCamel):
id: int
key: str
name: str
class BaseBarcodeTemplateSchema(CustomModelCamel):
name: str
is_default: bool
width: int
height: int
class BarcodeTemplateSchema(BaseBarcodeTemplateSchema):
id: int
attributes: list[BarcodeTemplateAttributeSchema]
# endregion
# region Requests
class GetBarcodeTemplateByIdRequest(CustomModelCamel):
id: int
class BarcodeTemplateCreateResponse(OkMessageSchema):
id: int
class BarcodeTemplateUpdateResponse(OkMessageSchema):
pass
class CreateBarcodeTemplateAttributeRequest(CustomModelCamel):
name: str
label: str
# endregion
# region Responses
class GetBarcodeTemplateByIdResponse(CustomModelCamel):
barcode_template: BarcodeTemplateSchema
class BarcodeTemplateCreateRequest(BaseBarcodeTemplateSchema):
attribute_ids: list[int]
class BarcodeTemplateUpdateRequest(BaseBarcodeTemplateSchema):
id: int
attribute_ids: list[int]
class CreateBarcodeTemplateAttributeResponse(OkMessageSchema):
id: int
class GetAllBarcodeTemplatesResponse(CustomModelCamel):
templates: list[BarcodeTemplateSchema]
class GetAllBarcodeTemplateAttributesResponse(CustomModelCamel):
attributes: list[BarcodeTemplateAttributeSchema]
# endregion