felicity-lims/felicity/apps/job/schemas.py
Aurthur Musendame ad14d5f12f iter 2 done
2024-07-23 22:30:01 +02:00

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