production_task_set.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. from typing import List, Optional
  2. from pydantic import BaseModel, ConfigDict, Field
  3. class ProductionTaskSetItemBody(BaseModel):
  4. model_config = ConfigDict(populate_by_name=True)
  5. task_name: str = Field(..., alias="taskName")
  6. route_id: Optional[str] = Field(None, alias="routeId")
  7. description: Optional[str] = None
  8. remark: Optional[str] = None
  9. class ProductionTaskSetCreateBody(BaseModel):
  10. model_config = ConfigDict(populate_by_name=True)
  11. set_name: str = Field(..., alias="setName")
  12. status: Optional[str] = "1"
  13. remark: Optional[str] = None
  14. items: List[ProductionTaskSetItemBody] = []
  15. class ProductionTaskSetUpdateBody(BaseModel):
  16. model_config = ConfigDict(populate_by_name=True)
  17. set_name: Optional[str] = Field(None, alias="setName")
  18. status: Optional[str] = None
  19. remark: Optional[str] = None
  20. items: Optional[List[ProductionTaskSetItemBody]] = None
  21. class ProductionTaskSetFromWorkOrderBody(BaseModel):
  22. model_config = ConfigDict(populate_by_name=True)
  23. work_order_id: str = Field(..., alias="workOrderId")
  24. set_name: str = Field(..., alias="setName")
  25. remark: Optional[str] = None
  26. items: Optional[List[ProductionTaskSetItemBody]] = None
  27. class ProductionTasksFromSetBody(BaseModel):
  28. model_config = ConfigDict(populate_by_name=True)
  29. work_order_id: str = Field(..., alias="workOrderId")
  30. set_id: str = Field(..., alias="setId")
  31. items: Optional[List[ProductionTaskSetItemBody]] = None