Work on things related to event_person, tracking, badges, sessions, etc

This commit is contained in:
Scott Idem
2021-09-21 17:30:20 -04:00
parent 200ee82b9d
commit 0f87f69077
13 changed files with 661 additions and 27 deletions

View File

@@ -28,6 +28,11 @@ class Event_Base(BaseModel):
id: Optional[int] = Field(
alias = 'event_id'
)
code: Optional[str] = Field(
alias = 'event_code'
)
account_id_random: Optional[str]
account_id: Optional[int]

View File

@@ -63,6 +63,36 @@ class Event_Person_Base(BaseModel):
created_on: Optional[datetime.datetime] = None
updated_on: Optional[datetime.datetime] = None
# Including convenience data
# This is only for convenience. Probably going to keep unless it causes a problem.
event_badge_informal_name: Optional[str]
event_badge_given_name: Optional[str]
event_badge_family_name: Optional[str]
event_badge_display_name: Optional[str]
event_badge_full_name: Optional[str]
event_badge_affiliations: Optional[str]
event_badge_email: Optional[str]
event_person_informal_name: Optional[str]
event_person_given_name: Optional[str]
event_person_family_name: Optional[str]
event_person_display_name: Optional[str]
event_person_full_name: Optional[str]
event_person_affiliations: Optional[str]
event_person_email: Optional[str]
person_informal_name: Optional[str]
person_given_name: Optional[str]
person_family_name: Optional[str]
person_display_name: Optional[str]
person_full_name: Optional[str]
person_affiliations: Optional[str]
person_email: Optional[str]
user_email: Optional[str]
user_name: Optional[str]
user_username: Optional[str]
# Including other related objects
# event: Optional[Event_Base] # Causes an import loop
event_abstract_list: Optional[list] # Use event_person_detail table. An event_person record can be linked to one or more abstracts

View File

@@ -58,6 +58,32 @@ class Event_Person_Tracking_Base(BaseModel):
created_on: Optional[datetime.datetime] = None
updated_on: Optional[datetime.datetime] = None
# Including convenience data
# This is only for convenience. Probably going to keep unless it causes a problem.
# full_name: Optional[str] = Field(
# alias = 'event_person_full_name'
# )
# display_name: Optional[str] = Field(
# alias = 'event_person_display_name'
# )
event_person_informal_name: Optional[str]
event_person_given_name: Optional[str]
event_person_family_name: Optional[str]
event_person_display_name: Optional[str]
event_person_full_name: Optional[str]
event_person_affiliations: Optional[str]
event_person_email: Optional[str]
event_session_name: Optional[str]
location_name: Optional[str] = Field(
alias = 'event_location_name'
)
track_name: Optional[str] = Field(
alias = 'event_track_name'
)
# Maybe add timezone in the future?
_processed_at: datetime.datetime = PrivateAttr(default_factory=datetime.datetime.now)
#@validator('event_person_tracking_id_random', always=True)

View File

@@ -29,6 +29,10 @@ class Event_Presentation_Base(BaseModel):
alias = 'event_presentation_id'
)
code: Optional[str] = Field(
alias = 'event_presentation_code'
)
event_id_random: Optional[str]
event_id: Optional[int]
@@ -50,8 +54,6 @@ class Event_Presentation_Base(BaseModel):
for_type: Optional[str]
for_id: Optional[int]
code: Optional[str]
name: Optional[str]
description: Optional[str]

View File

@@ -29,6 +29,11 @@ class Event_Presenter_Base(BaseModel):
id: Optional[int] = Field(
alias = 'event_presenter_id'
)
code: Optional[str] = Field(
alias = 'event_presenter_code'
)
account_id_random: Optional[str]
account_id: Optional[int]
@@ -59,8 +64,6 @@ class Event_Presenter_Base(BaseModel):
for_type: Optional[str]
for_id: Optional[int]
code: Optional[str]
pronouns: Optional[str] # Preferred pronouns
informal_name: Optional[str] # Informal or nick name they commonly go by

View File

@@ -29,6 +29,10 @@ class Event_Session_Base(BaseModel):
alias = 'event_session_id'
)
code: Optional[str] = Field(
alias = 'event_session_code'
)
event_id_random: Optional[str]
event_id: Optional[int]
@@ -95,6 +99,16 @@ class Event_Session_Base(BaseModel):
created_on: Optional[datetime.datetime] = None
updated_on: Optional[datetime.datetime] = None
# Including convenience data
# This is only for convenience. Probably going to keep unless it causes a problem.
location_name: Optional[str] = Field(
alias = 'event_location_name'
)
track_name: Optional[str] = Field(
alias = 'event_track_name'
)
# Maybe add xxx in the future?
# Including other related objects
# event: Optional[Event_Base]
event_abstract_list: Optional[list] # Optional[Event_Abstract_Base]