From 35f07a7993214dfe68a34fc6f1ece36e1a36b325 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Tue, 11 Jun 2024 19:36:10 -0400 Subject: [PATCH] Now with person_id --- app/models/event_presenter_models.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/app/models/event_presenter_models.py b/app/models/event_presenter_models.py index 6517fbd..700be1b 100644 --- a/app/models/event_presenter_models.py +++ b/app/models/event_presenter_models.py @@ -56,6 +56,9 @@ class Event_Presenter_Base(BaseModel): event_track_id_random: Optional[str] event_track_id: Optional[int] + person_id_random: Optional[str] + person_id: Optional[int] + for_type: Optional[str] for_id: Optional[int] @@ -217,6 +220,13 @@ class Event_Presenter_Base(BaseModel): return redis_lookup_id_random(record_id_random=id_random, table_name='event_session') return None + @validator('person_id', always=True) + def person_id_lookup(cls, v, values, **kwargs): + if isinstance(v, int) and v > 0: return v + elif id_random := values.get('person_id_random'): + return redis_lookup_id_random(record_id_random=id_random, table_name='person') + return None + class Config: underscore_attrs_are_private = True allow_population_by_field_name = True @@ -267,6 +277,9 @@ class Event_Presenter_Out_Base(BaseModel): # event_track_id_random: Optional[str] # event_track_id: Optional[int] + person_id_random: Optional[str] + person_id: Optional[int] + # for_type: Optional[str] # for_id: Optional[int] @@ -404,6 +417,13 @@ class Event_Presenter_Out_Base(BaseModel): return redis_lookup_id_random(record_id_random=id_random, table_name='event_session') return None + @validator('person_id', always=True) + def person_id_lookup(cls, v, values, **kwargs): + if isinstance(v, int) and v > 0: return v + elif id_random := values.get('person_id_random'): + return redis_lookup_id_random(record_id_random=id_random, table_name='person') + return None + class Config: underscore_attrs_are_private = True allow_population_by_field_name = True