| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- from pydantic import BaseModel, ConfigDict, Field
- from typing import Optional
- from datetime import datetime
- class ProductionWorkOrderBase(BaseModel):
- remark: Optional[str] = None
- class ProductionWorkOrderListQuery(BaseModel):
- page: int = 1
- page_size: int = 20
- keyword: Optional[str] = None
- work_order_no: Optional[str] = None
- work_order_status: Optional[str] = None
- work_order_type: Optional[str] = None
- reception_source: Optional[str] = None
- biz_type: Optional[str] = None
- protocol_no: Optional[str] = None
- sample_code: Optional[str] = None
- create_time_start: Optional[str] = None
- create_time_end: Optional[str] = None
- infusion_time_start: Optional[str] = None
- infusion_time_end: Optional[str] = None
- planned_start_time_start: Optional[str] = None
- planned_start_time_end: Optional[str] = None
- exclude_void_protocol: Optional[bool] = Field(True, description="是否排除关联协议无效态的入库工单")
- class ProductionWorkOrderComplete(BaseModel):
- conclusion: str = Field(..., description="生产结论 cg=成功 sb=失败,写入本次级联完成的任务")
- remark: Optional[str] = None
- class ProductionWorkOrderUpdate(BaseModel):
- model_config = ConfigDict(populate_by_name=True)
- remark: Optional[str] = Field(None, description="备注")
- class ProductionWorkOrderCreate(BaseModel):
- model_config = ConfigDict(populate_by_name=True)
- work_order_type: Optional[str] = Field("inbound", alias="workOrderType", description="工单类型 inbound/temporary")
- protocol_no: Optional[str] = Field(None, alias="protocolNo", description="协议号")
- sample_code: Optional[str] = Field(None, alias="sampleCode", description="样本编码")
- reception_source: Optional[str] = Field("cell_storage", alias="receptionSource", description="来源类型")
- remark: Optional[str] = Field(None, description="备注")
- class ProductionWorkOrderConfigureBody(BaseModel):
- model_config = ConfigDict(populate_by_name=True)
- task_name: Optional[str] = Field("", alias="taskName")
- assignee_user_id: str = Field(..., alias="assigneeUserId")
- task_type: Optional[str] = Field("cell_storage", alias="taskType")
- route_id: Optional[str] = Field(None, alias="routeId")
- description: Optional[str] = Field("", alias="description")
- remark: Optional[str] = Field("", alias="remark")
|