mirror of
https://github.com/beak-insights/felicity-lims.git
synced 2025-02-23 16:33:11 +08:00
33 lines
679 B
Python
33 lines
679 B
Python
from typing import Any, Optional
|
|
|
|
from pydantic import BaseModel, ConfigDict
|
|
|
|
from .enum import JobCategory, JobPriority, JobState
|
|
|
|
|
|
#
|
|
# Job Schemas
|
|
#
|
|
class JobBase(BaseModel):
|
|
action: str | None = None
|
|
category: str | None = JobCategory.WORKSHEET
|
|
priority: int | None = JobPriority.NORMAL
|
|
data: Optional[Any] = None
|
|
job_id: str | None = None
|
|
status: str | None = JobState.PENDING
|
|
reason: str | None = None
|
|
creator_uid: str | None = None
|
|
|
|
|
|
class Job(JobBase):
|
|
uid: str | None = None
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
|
|
class JobCreate(JobBase):
|
|
pass
|
|
|
|
|
|
class JobUpdate(JobBase):
|
|
pass
|