File tree Expand file tree Collapse file tree 2 files changed +19
-3
lines changed
Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Original file line number Diff line number Diff line change @@ -39,7 +39,7 @@ class Config:
3939
4040
4141class SavedClinicalControlWithMappedVariants (SavedClinicalControl ):
42- mapped_variants : Sequence ["SavedMappedVariant " ]
42+ mapped_variants : Sequence ["MappedVariantForClinicalControl " ]
4343
4444
4545# Properties to return to non-admin clients
@@ -48,7 +48,7 @@ class ClinicalControl(SavedClinicalControl):
4848
4949
5050class ClinicalControlWithMappedVariants (SavedClinicalControlWithMappedVariants ):
51- mapped_variants : Sequence [ "MappedVariant" ]
51+ pass
5252
5353
5454class ClinicalControlOptions (BaseModel ):
@@ -57,7 +57,7 @@ class ClinicalControlOptions(BaseModel):
5757
5858
5959# ruff: noqa: E402
60- from mavedb .view_models .mapped_variant import MappedVariant , SavedMappedVariant , MappedVariantCreate
60+ from mavedb .view_models .mapped_variant import MappedVariantCreate , MappedVariantForClinicalControl
6161
6262# ClinicalControlUpdate.model_rebuild()
6363SavedClinicalControlWithMappedVariants .model_rebuild ()
Original file line number Diff line number Diff line change @@ -80,6 +80,22 @@ class MappedVariantWithControls(SavedMappedVariantWithControls):
8080 gnomad_variants : Sequence ["GnomADVariant" ]
8181
8282
83+ class MappedVariantForClinicalControl (BaseModel ):
84+ variant_urn : str
85+
86+ class Config :
87+ from_attributes = True
88+
89+ @model_validator (mode = "before" )
90+ def generate_score_set_urn_list (cls , data : Any ):
91+ if not hasattr (data , "variant_urn" ) and hasattr (data , "variant" ):
92+ try :
93+ data .__setattr__ ("variant_urn" , None if not data .variant else data .variant .urn )
94+ except AttributeError as exc :
95+ raise ValidationError (f"Unable to create { cls .__name__ } without attribute: { exc } ." ) # type: ignore
96+ return data
97+
98+
8399# ruff: noqa: E402
84100from mavedb .view_models .clinical_control import ClinicalControlBase , ClinicalControl , SavedClinicalControl
85101from mavedb .view_models .gnomad_variant import GnomADVariantBase , GnomADVariant , SavedGnomADVariant
You can’t perform that action at this time.
0 commit comments