Work on a lot of things. Mainly cleaning up person and profile related fields in multiple tables.
This commit is contained in:
@@ -24,6 +24,13 @@ def load_event_presentation_obj(
|
||||
event_presentation_id: int|str,
|
||||
enabled: str = 'enabled', # enabled, disabled, all
|
||||
limit: int = 1000,
|
||||
by_alias: bool = True,
|
||||
exclude_unset: bool = True,
|
||||
model_as_dict: bool = False,
|
||||
event_file_file_purpose_id: int = None,
|
||||
event_file_file_purpose: str = None,
|
||||
event_file_priority: bool = None,
|
||||
event_file_group: str = None,
|
||||
inc_address: bool = False,
|
||||
inc_contact: bool = False,
|
||||
inc_event_abstract_list: bool = False,
|
||||
@@ -37,6 +44,7 @@ def load_event_presentation_obj(
|
||||
inc_event_presenter_list: bool = False,
|
||||
inc_event_registration: bool = False,
|
||||
#inc_event_registration_list: bool = False,
|
||||
inc_event_session: bool = False,
|
||||
inc_person: bool = False,
|
||||
inc_user: bool = False,
|
||||
) -> Event_Presentation_Base|bool:
|
||||
@@ -46,101 +54,119 @@ def load_event_presentation_obj(
|
||||
if event_presentation_id := redis_lookup_id_random(record_id_random=event_presentation_id, table_name='event_presentation'): pass
|
||||
else: return False
|
||||
|
||||
if event_presentation_rec := sql_select(table_name='v_event_presentation', record_id=event_presentation_id):
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(event_presentation_rec)
|
||||
if event_presentation_rec := sql_select(table_name='v_event_presentation', record_id=event_presentation_id): pass
|
||||
else: return False
|
||||
|
||||
try:
|
||||
event_presentation_obj = Event_Presentation_Base(**event_presentation_rec)
|
||||
log.debug(event_presentation_obj)
|
||||
except ValidationError as e:
|
||||
log.error(e.json())
|
||||
return False
|
||||
# log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(event_presentation_rec)
|
||||
|
||||
# event_presentation_obj = Event_Presentation_Base(**event_presentation_rec)
|
||||
# log.debug(event_presentation_obj)
|
||||
|
||||
#return False
|
||||
|
||||
#account_id = event_presentation_rec.get('account_id', None)
|
||||
event_id = event_presentation_rec.get('event_id', None)
|
||||
event_abstract_id = event_presentation_rec.get('event_abstract_id', None)
|
||||
event_person_id = event_presentation_rec.get('event_person_id', None)
|
||||
event_session_id = event_presentation_rec.get('event_session_id', None)
|
||||
|
||||
#if inc_event: pass
|
||||
if inc_event_abstract_list: pass
|
||||
#if inc_event_badge_list: pass
|
||||
if inc_event_device_list: pass
|
||||
if inc_event_file_list: pass
|
||||
if inc_event_person_list: pass
|
||||
if inc_event_presenter_list:
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
|
||||
data = {}
|
||||
data['event_presentation_id'] = event_presentation_id
|
||||
|
||||
if enabled in ['enabled', 'disabled', 'all']:
|
||||
if enabled == 'enabled':
|
||||
data['enable'] = True
|
||||
sql_enabled = f'AND `event_presenter`.enable = :enable'
|
||||
elif enabled == 'disabled':
|
||||
data['enable'] = False
|
||||
sql_enabled = f'AND `event_presenter`.enable = :enable'
|
||||
elif enabled == 'all':
|
||||
sql_enabled = ''
|
||||
# else: event_obj['event_session'] = None
|
||||
|
||||
# if limit:
|
||||
# data['limit'] = limit
|
||||
# sql_limit = f'LIMIT :limit'
|
||||
# else:
|
||||
# sql_limit = ''
|
||||
|
||||
sql = f"""
|
||||
SELECT `event_presenter`.id AS 'event_presenter_id', `event_presenter`.id_random AS 'event_presenter_id_random'
|
||||
FROM `event_presenter` AS `event_presenter`
|
||||
WHERE `event_presenter`.event_presentation_id = :event_presentation_id
|
||||
{sql_enabled}
|
||||
ORDER BY `event_presenter`.created_on DESC, `event_presenter`.updated_on DESC;
|
||||
"""
|
||||
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
if event_presenter_obj_li_result := sql_select(data=data, sql=sql, as_list=True):
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(event_presenter_obj_li_result)
|
||||
event_presenter_obj_li = []
|
||||
for event_presenter_obj in event_presenter_obj_li_result:
|
||||
event_presenter_id = event_presenter_obj.get('event_presenter_id', None)
|
||||
if event_presenter_obj := load_event_presenter_obj(
|
||||
event_presenter_id = event_presenter_id,
|
||||
enabled = enabled,
|
||||
inc_address = inc_address,
|
||||
inc_contact = inc_contact,
|
||||
inc_event_abstract_list = inc_event_abstract_list,
|
||||
inc_event_badge = inc_event_badge,
|
||||
inc_event_device_list = inc_event_device_list,
|
||||
inc_event_file_list = inc_event_file_list,
|
||||
inc_event_person = inc_event_person,
|
||||
inc_event_person_profile = inc_event_person_profile,
|
||||
inc_event_registration = inc_event_registration,
|
||||
inc_person = inc_person,
|
||||
inc_user = inc_user,
|
||||
):
|
||||
data = event_presenter_obj.dict(by_alias=True, exclude_unset=True)
|
||||
event_presenter_obj_li.append(data)
|
||||
log.debug(event_presenter_obj_li)
|
||||
event_presentation_obj.event_presenter_list = event_presenter_obj_li
|
||||
else:
|
||||
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(event_presenter_obj_li_result)
|
||||
event_presentation_obj.event_presenter_list = []
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
#if inc_user: pass
|
||||
else:
|
||||
try:
|
||||
log.info('Try to apply event presentation record data to Event_Presentation_Base...')
|
||||
event_presentation_obj = Event_Presentation_Base(**event_presentation_rec)
|
||||
log.debug(event_presentation_obj)
|
||||
except ValidationError as e:
|
||||
log.error(e.json())
|
||||
return False
|
||||
|
||||
return event_presentation_obj
|
||||
# event_presentation_obj = Event_Presentation_Base(**event_presentation_rec)
|
||||
# log.debug(event_presentation_obj)
|
||||
|
||||
# account_id = event_presentation_rec.get('account_id', None)
|
||||
event_id = event_presentation_rec.get('event_id', None)
|
||||
event_abstract_id = event_presentation_rec.get('event_abstract_id', None)
|
||||
event_person_id = event_presentation_rec.get('event_person_id', None)
|
||||
event_session_id = event_presentation_rec.get('event_session_id', None)
|
||||
|
||||
# if inc_event: pass
|
||||
if inc_event_abstract_list: pass
|
||||
# if inc_event_badge_list: pass
|
||||
if inc_event_device_list: pass
|
||||
if inc_event_file_list: pass
|
||||
if inc_event_person_list: pass
|
||||
|
||||
if inc_event_presenter_list:
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
|
||||
data = {}
|
||||
data['event_presentation_id'] = event_presentation_id
|
||||
|
||||
if enabled in ['enabled', 'disabled', 'all']:
|
||||
if enabled == 'enabled':
|
||||
data['enable'] = True
|
||||
sql_enabled = f'AND `event_presenter`.enable = :enable'
|
||||
elif enabled == 'disabled':
|
||||
data['enable'] = False
|
||||
sql_enabled = f'AND `event_presenter`.enable = :enable'
|
||||
elif enabled == 'all':
|
||||
sql_enabled = ''
|
||||
# else: event_obj['event_session'] = None
|
||||
|
||||
# if limit:
|
||||
# data['limit'] = limit
|
||||
# sql_limit = f'LIMIT :limit'
|
||||
# else:
|
||||
# sql_limit = ''
|
||||
|
||||
sql = f"""
|
||||
SELECT `event_presenter`.id AS 'event_presenter_id', `event_presenter`.id_random AS 'event_presenter_id_random'
|
||||
FROM `event_presenter` AS `event_presenter`
|
||||
WHERE `event_presenter`.event_presentation_id = :event_presentation_id
|
||||
{sql_enabled}
|
||||
ORDER BY `event_presenter`.created_on DESC, `event_presenter`.updated_on DESC;
|
||||
"""
|
||||
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
if event_presenter_obj_li_result := sql_select(data=data, sql=sql, as_list=True):
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(event_presenter_obj_li_result)
|
||||
event_presenter_obj_li = []
|
||||
for event_presenter_obj in event_presenter_obj_li_result:
|
||||
event_presenter_id = event_presenter_obj.get('event_presenter_id', None)
|
||||
if event_presenter_obj := load_event_presenter_obj(
|
||||
event_presenter_id = event_presenter_id,
|
||||
enabled = enabled,
|
||||
inc_address = inc_address,
|
||||
inc_contact = inc_contact,
|
||||
inc_event_abstract_list = inc_event_abstract_list,
|
||||
inc_event_badge = inc_event_badge,
|
||||
inc_event_device_list = inc_event_device_list,
|
||||
inc_event_file_list = inc_event_file_list,
|
||||
inc_event_person = inc_event_person,
|
||||
inc_event_person_profile = inc_event_person_profile,
|
||||
inc_event_registration = inc_event_registration,
|
||||
inc_person = inc_person,
|
||||
inc_user = inc_user,
|
||||
):
|
||||
data = event_presenter_obj.dict(by_alias=True, exclude_unset=True)
|
||||
event_presenter_obj_li.append(data)
|
||||
log.debug(event_presenter_obj_li)
|
||||
event_presentation_obj.event_presenter_list = event_presenter_obj_li
|
||||
else:
|
||||
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(event_presenter_obj_li_result)
|
||||
event_presentation_obj.event_presenter_list = []
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
|
||||
if inc_event_session:
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
from app.methods.event_session_methods import load_event_session_obj
|
||||
|
||||
if event_session_obj := load_event_session_obj(
|
||||
event_session_id = event_session_id,
|
||||
# Don't append the presentation list and things
|
||||
):
|
||||
log.debug(event_session_obj)
|
||||
event_presentation_obj.event_session = event_session_obj
|
||||
else:
|
||||
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(event_session_obj)
|
||||
event_presentation_obj.event_session = None
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
|
||||
if model_as_dict:
|
||||
return event_presentation_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member
|
||||
else:
|
||||
return event_presentation_obj
|
||||
# ### END ### API Event Presentation Methods ### load_event_presentation_obj() ###
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user