Add dataset, slurm_id, and FAILED status to models
Enhanced the models with new fields: a dataset field for Experiment Parameters and a slurm_id for Jobs. Introduced a FAILED status for the JobStatus enum. Updated functionality to handle datasets and trigger job creation based on dataset status.
This commit is contained in:
@ -898,9 +898,16 @@ class BeamlineParameters(BaseModel):
|
||||
# beamstopDiameter_mm: Optional[float] = None
|
||||
|
||||
|
||||
class Datasets(BaseModel):
|
||||
filepath: str
|
||||
status: str
|
||||
written_at: datetime
|
||||
|
||||
|
||||
class ExperimentParametersBase(BaseModel):
|
||||
run_number: int
|
||||
beamline_parameters: Optional[BeamlineParameters] = None
|
||||
dataset: Optional[Datasets] = None
|
||||
sample_id: int
|
||||
|
||||
|
||||
@ -915,6 +922,12 @@ class ExperimentParametersRead(ExperimentParametersBase):
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ExperimentParametersUpdate(BaseModel):
|
||||
run_number: int
|
||||
dataset: Optional[Datasets]
|
||||
sample_id: int
|
||||
|
||||
|
||||
class SampleResult(BaseModel):
|
||||
sample_id: int
|
||||
sample_name: str
|
||||
@ -952,6 +965,7 @@ class JobsCreate(BaseModel):
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
experiment_parameters: BeamlineParameters
|
||||
slurm_id: Optional[int] = None
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
@ -968,8 +982,10 @@ class JobsResponse(BaseModel):
|
||||
updated_at: Optional[datetime]
|
||||
data_collection_parameters: Optional[DataCollectionParameters] = None
|
||||
experiment_parameters: BeamlineParameters
|
||||
slurm_id: Optional[int] = None
|
||||
|
||||
|
||||
class JobsUpdate(BaseModel):
|
||||
job_id: int
|
||||
status: str
|
||||
slurm_id: int
|
||||
|
Reference in New Issue
Block a user