Code clean up. Better debugging. Work on event session, presentation, and presenter.

This commit is contained in:
Scott Idem
2021-09-29 14:18:34 -04:00
parent b2c70c0c87
commit be788fc5e6
10 changed files with 253 additions and 159 deletions

View File

@@ -22,11 +22,15 @@ from app.models.event_location_models import Event_Location_Base
def load_event_location_obj(
event_location_id: int|str,
enabled: str = 'enabled', # enabled, disabled, all
limit: int = 1000,
inc_event_device_list: bool = False,
inc_event_file_list: bool = False,
inc_event_presentation_list: bool = False,
inc_event_presenter_list: bool = False,
inc_event_session_list: bool = False,
limit: int = 1000,
by_alias: bool = True,
exclude_unset: bool = True,
model_as_dict: bool = False,
) -> Event_Location_Base|bool:
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
@@ -35,22 +39,19 @@ def load_event_location_obj(
else: return False
if event_location_rec := sql_select(table_name='v_event_location', record_id=event_location_id): pass
else:
return False
else: return False
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
# log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(event_location_rec)
try:
log.info('Try to apply event location record data to Event_Location_Base...')
event_location_obj = Event_Location_Base(**event_location_rec)
log.debug(event_location_obj)
except ValidationError as e:
log.error(e.json())
return False
# event_location_obj = Event_Location_Base(**event_location_rec)
# log.debug(event_location_obj)
#account_id = event_location_rec.get('account_id', None)
event_id = event_location_rec.get('event_id', None)
@@ -116,4 +117,80 @@ def load_event_location_obj(
if inc_event_presenter_list: pass
return event_location_obj
if model_as_dict:
return event_location_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member
else:
return event_location_obj
return event_location_obj
# ### BEGIN ### API Event Location Methods ### get_event_location_rec_list() ###
def get_event_location_rec_list(
event_id: str,
enabled: str = 'enabled', # enabled, disabled, all
hidden: str = 'hidden', # hidden, not_hidden, all
limit: int = 100,
) -> list|bool:
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
if event_id := redis_lookup_id_random(record_id_random=event_id, table_name='event'): pass
else: return False
data = {}
data['event_id'] = event_id
if event_id:
sql_where_event_id = f'`event_location`.event_id = :event_id'
else: sql_where_event_id = ''
if enabled in ['enabled', 'disabled', 'all']:
if enabled == 'enabled':
data['enable'] = True
sql_enabled = f'AND `event_location`.enable = :enable'
elif enabled == 'disabled':
data['enable'] = False
sql_enabled = f'AND `event_location`.enable = :enable'
elif enabled == 'all':
sql_enabled = ''
if hidden in ['hidden', 'not_hidden', 'all']:
if hidden == 'hidden':
data['hide'] = True
sql_hidden = f'AND `event_location`.hide = :hide'
elif hidden == 'not_hidden':
data['hide'] = False
sql_hidden = f'AND `event_location`.hide = :hide'
elif hidden == 'all':
sql_hidden = ''
if limit:
data['limit'] = limit
sql_limit = f'LIMIT :limit'
else:
sql_limit = ''
sql = f"""
SELECT `event_location`.id AS 'event_location_id', `event_location`.id_random AS 'event_location_id_random'
FROM `event_location` AS `event_location`
WHERE
{sql_where_event_id}
{sql_enabled}
{sql_hidden}
ORDER BY `event_location`.created_on DESC, `event_location`.updated_on DESC
{sql_limit};
"""
if event_location_rec_li_result := sql_select(data=data, sql=sql, as_list=True):
event_location_rec_li = event_location_rec_li_result
else:
event_location_rec_li = []
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(event_location_rec_li_result)
log.debug(type(event_location_rec_li))
log.debug(len(event_location_rec_li))
return event_location_rec_li
# ### END ### API Event Location Methods ### get_event_location_rec_list() ###

View File

@@ -10,6 +10,7 @@ from app.lib_general import log, logging
from app.methods.address_methods import load_address_obj
from app.methods.contact_methods import load_contact_obj
from app.methods.event_cfg_methods import create_update_event_cfg_obj_v4, load_event_cfg_obj
from app.methods.event_location_methods import get_event_location_rec_list, load_event_location_obj
from app.methods.event_session_methods import get_event_session_rec_list, load_event_session_obj
from app.methods.person_methods import create_update_person_obj_v4b, load_person_obj
from app.methods.user_methods import create_user_obj, load_user_obj, update_user_obj
@@ -22,11 +23,10 @@ from app.models.event_cfg_models import Event_Cfg_Base
# ### BEGIN ### API Event Methods ### load_event_obj() ###
def load_event_obj(
event_id: int|str,
limit: int = 1000,
by_alias: bool = True,
exclude_unset: bool = True,
model_as_dict: bool = False,
enabled: str = 'enabled', # enabled, disabled, all
approved: str = 'all', # approved, not_approved, all
hidden: str = 'not_hidden', # hidden, not_hidden, all
review: str = 'all', # ready, not_ready, all
inc_address: bool = False, # Loads address_location and under contact(s)
# inc_address_location: bool = False,
inc_contact: bool = False, # Loads all 3 contacts
@@ -57,8 +57,12 @@ def load_event_obj(
inc_product: bool = False,
inc_product_list: bool = False,
inc_user: bool = False,
limit: int = 1000,
by_alias: bool = True,
exclude_unset: bool = True,
model_as_dict: bool = False,
) -> Event_Base|bool:
#log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
if event_id := redis_lookup_id_random(record_id_random=event_id, table_name='event'): pass
@@ -165,22 +169,59 @@ def load_event_obj(
if inc_event_device_list: pass
if inc_event_exhibit_list: pass
if inc_event_file_list: pass
if inc_event_location_list: pass
# Updated 2021-09-29
if inc_event_location_list:
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.info('Need to include event location list...')
if event_location_rec_list_result := get_event_location_rec_list(
event_id = event_id,
enabled = enabled, # enabled, disabled, all
hidden = 'all', # hidden, not_hidden, all
limit = limit,
):
event_location_result_list = []
for event_location_rec in event_location_rec_list_result:
if load_event_location_result := load_event_location_obj(
event_location_id = event_location_rec.get('event_location_id', None),
enabled = enabled,
inc_event_file_list = inc_event_file_list,
inc_event_presentation_list = inc_event_presentation_list,
inc_event_presenter_list = inc_event_presenter_list,
inc_event_session_list = inc_event_session_list,
limit = limit,
by_alias = by_alias,
exclude_unset = exclude_unset,
# model_as_dict = model_as_dict,
):
event_location_result_list.append(load_event_location_result)
else:
event_location_result_list.append(None)
log.debug(event_location_result_list)
event_obj.event_location_list = event_location_result_list
elif isinstance(event_location_rec_list_result, list):
event_obj.event_location_list = []
else:
event_obj.event_location_list = None
if inc_event_person_list: pass
if inc_event_presentation_list: pass
if inc_event_presenter_list: pass
# if inc_event_registration_cfg: pass
if inc_event_registration_list: pass
# Updated 2021-09-28
if inc_event_session_list:
log.info('Need to include event session list...')
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
if event_session_rec_list_result := get_event_session_rec_list(
event_id = event_id,
review = 'all', # ready, not_ready, all
enabled = enabled, # enabled, disabled, all
approved = 'all', # approve(d), not_approved, all
enabled = enabled,
hidden = 'not_hidden', # hidden, not_hidden, all
review = 'all', # ready, not_ready, all
limit = limit,
):
event_session_result_list = []
@@ -209,70 +250,6 @@ def load_event_obj(
else:
event_obj.event_session_list = None
# data = {}
# data['event_id'] = event_id
# if enabled in ['enabled', 'disabled', 'all']:
# if enabled == 'enabled':
# data['enable'] = True
# sql_enabled = f'AND `event_session`.enable = :enable'
# elif enabled == 'disabled':
# data['enable'] = False
# sql_enabled = f'AND `event_session`.enable = :enable'
# elif enabled == 'all':
# sql_enabled = ''
# else:
# sql_enabled = f'AND `event_session`.enable = :enable'
# # else: event_obj['event_session'] = None
# if limit:
# data['limit'] = limit
# sql_limit = f'LIMIT :limit'
# else:
# sql_limit = ''
# sql = f"""
# SELECT `event_session`.id AS 'event_session_id', `event_session`.id_random AS 'event_session_id_random'
# FROM `event_session` AS `event_session`
# WHERE `event_session`.event_id = :event_id
# {sql_enabled}
# ORDER BY `event_session`.created_on DESC, `event_session`.updated_on DESC
# {sql_limit};
# """
# #log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
# if event_session_obj_li_result := sql_select(data=data, sql=sql, as_list=True):
# #log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
# log.debug(event_session_obj_li_result)
# event_session_obj_li = []
# for event_session_obj in event_session_obj_li_result:
# event_session_id = event_session_obj.get('event_session_id', None)
# if event_session_obj := load_event_session_obj(
# event_session_id=event_session_id,
# limit = limit,
# enabled=enabled,
# inc_event_abstract_list=inc_event_abstract_list,
# inc_event_device_list=inc_event_device_list,
# inc_event_file_list=inc_event_file_list,
# inc_event_location=inc_event_location,
# inc_event_person_list=inc_event_person_list,
# inc_event_presentation_list=inc_event_presentation_list,
# inc_event_presenter_cat=inc_event_presenter_cat,
# inc_event_presenter_list=inc_event_presenter_list,
# #inc_event_track=inc_event_track,
# inc_person=inc_person,
# inc_user=inc_user,
# ):
# data = event_session_obj.dict(by_alias=True, exclude_unset=True)
# event_session_obj_li.append(data)
# log.debug(event_session_obj_li)
# #event_rec['event_session_list'] = event_session_obj_li
# event_obj.event_session_list = event_session_obj_li
# else:
# #log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
# log.debug(event_session_obj_li_result)
# #log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
if inc_event_track_list: pass
if inc_poc_event_person:

View File

@@ -25,10 +25,6 @@ def load_event_presentation_obj(
enabled: str = 'enabled', # enabled, disabled, all
hidden: str = 'not_hidden', # hidden, not_hidden, all
inc_file_count: bool = False, # NOTE: file counts are from separate views
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,
@@ -49,6 +45,10 @@ def load_event_presentation_obj(
inc_event_session: bool = False,
inc_person: bool = False,
inc_user: bool = False,
limit: int = 1000,
by_alias: bool = True,
exclude_unset: bool = True,
model_as_dict: bool = False,
) -> Event_Presentation_Base|bool:
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
@@ -75,9 +75,6 @@ def load_event_presentation_obj(
log.error(e.json())
return False
# 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)
@@ -99,11 +96,11 @@ def load_event_presentation_obj(
if hidden in ['hidden', 'not_hidden', 'all']:
if hidden == 'hidden':
data['hidden'] = True
sql_hidden = f'AND `event_presenter`.hidden = :hidden'
data['hide'] = True
sql_hidden = f'AND `event_presenter`.hide = :hide'
elif hidden == 'not_hidden':
data['hidden'] = False
sql_hidden = f'AND `event_presenter`.hidden = :hidden'
data['hide'] = False
sql_hidden = f'AND `event_presenter`.hide = :hide'
elif hidden == 'all':
sql_hidden = ''

View File

@@ -21,10 +21,6 @@ def load_event_presenter_obj(
enabled: str = 'enabled', # enabled, disabled, all
hidden: str = 'not_hidden', # hidden, not_hidden, all
inc_file_count: bool = False, # NOTE: file counts are from separate views
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,
@@ -43,6 +39,10 @@ def load_event_presenter_obj(
inc_event_session: bool = False,
inc_person: bool = False, # Using load_event_person_obj
inc_user: bool = False, # Using load_event_person_obj
limit: int = 1000,
by_alias: bool = True,
exclude_unset: bool = True,
model_as_dict: bool = False,
) -> Event_Presenter_Base|bool:
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
@@ -191,6 +191,7 @@ def load_event_presenter_obj(
def get_event_presenter_rec_list(
event_person_id: str = None,
event_presentation_id: str = None,
hidden: str = 'not_hidden', # hidden, not_hidden, all
enabled: str = 'enabled', # enabled, disabled, all
limit: int = 100,
) -> list|bool:
@@ -211,6 +212,16 @@ def get_event_presenter_rec_list(
sql_where_event_presentation_id = f'`event_presenter`.event_presentation_id = :event_presentation_id'
else: sql_where_event_presentation_id = ''
if hidden in ['hidden', 'not_hidden', 'all']:
if hidden == 'hidden':
data['hide'] = True
sql_hidden = f'AND `event_presenter`.hide = :hide'
elif hidden == 'not_hidden':
data['hide'] = False
sql_hidden = f'AND `event_presenter`.hide = :hide'
elif hidden == 'all':
sql_hidden = ''
if enabled in ['enabled', 'disabled', 'all']:
if enabled == 'enabled':
data['enable'] = True
@@ -233,6 +244,7 @@ def get_event_presenter_rec_list(
WHERE
{sql_where_event_person_id}
{sql_where_event_presentation_id}
{sql_hidden}
{sql_enabled}
ORDER BY `event_presenter`.created_on DESC, `event_presenter`.updated_on DESC
{sql_limit};

View File

@@ -22,10 +22,6 @@ from app.models.event_session_models import Event_Session_Base
# ### BEGIN ### API Event Session Methods ### load_event_session_obj() ###
def load_event_session_obj(
event_session_id: int|str,
limit: int = 1000,
by_alias: bool = True,
exclude_unset: bool = True,
model_as_dict: bool = False,
enabled: str = 'enabled', # enabled, disabled, all
hidden: str = 'not_hidden', # hidden, not_hidden, all
inc_file_count: bool = False, # NOTE: file counts are from separate views
@@ -52,6 +48,10 @@ def load_event_session_obj(
inc_poc_event_person: bool = False,
inc_person: bool = False,
inc_user: bool = False,
limit: int = 1000,
by_alias: bool = True,
exclude_unset: bool = True,
model_as_dict: bool = False,
) -> Event_Session_Base|bool:
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
@@ -159,11 +159,11 @@ def load_event_session_obj(
if hidden in ['hidden', 'not_hidden', 'all']:
if hidden == 'hidden':
data['hidden'] = True
sql_hidden = f'AND `event_presentation`.hidden = :hidden'
data['hide'] = True
sql_hidden = f'AND `event_presentation`.hide = :hide'
elif hidden == 'not_hidden':
data['hidden'] = False
sql_hidden = f'AND `event_presentation`.hidden = :hidden'
data['hide'] = False
sql_hidden = f'AND `event_presentation`.hide = :hide'
elif hidden == 'all':
sql_hidden = ''
@@ -271,10 +271,10 @@ def load_event_session_obj(
# ### BEGIN ### API Event Session Methods ### get_event_session_rec_list() ###
def get_event_session_rec_list(
event_id: str,
review: str = 'ready', # ready, not_ready, all
approved: str = 'approved', # approved, not_approved, all
hidden: str = 'hidden', # hidden, not_hidden, all
enabled: str = 'enabled', # enabled, disabled, all
approved: str = 'all', # approved, not_approved, all
hidden: str = 'not_hidden', # hidden, not_hidden, all
review: str = 'all', # ready, not_ready, all
limit: int = 100,
) -> list|bool:
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
@@ -310,11 +310,11 @@ def get_event_session_rec_list(
if hidden in ['hidden', 'not_hidden', 'all']:
if hidden == 'hidden':
data['hidden'] = True
sql_hidden = f'AND `event_session`.hidden = :hidden'
data['hide'] = True
sql_hidden = f'AND `event_session`.hide = :hide'
elif hidden == 'not_hidden':
data['hidden'] = False
sql_hidden = f'AND `event_session`.hidden = :hidden'
data['hide'] = False
sql_hidden = f'AND `event_session`.hide = :hide'
elif hidden == 'all':
sql_hidden = ''
@@ -347,6 +347,8 @@ def get_event_session_rec_list(
{sql_limit};
"""
log.debug(sql)
if event_session_rec_li_result := sql_select(data=data, sql=sql, as_list=True):
event_session_rec_li = event_session_rec_li_result