Improved create event exhibit tracking log entries

This commit is contained in:
Scott Idem
2022-04-08 14:20:44 -04:00
parent 6f9cea9ca6
commit 877a4e1758
2 changed files with 38 additions and 1 deletions

View File

@@ -96,6 +96,38 @@ def get_event_badge_template_id_w_event_id(
# ### END ### API Event Badge Methods ### get_event_badge_template_id_w_event_id() ###
# ### BEGIN ### API Event Badge Methods ### get_event_person_id_w_event_badge_id() ###
# Updated 2022-04-08
@logger_reset
def get_event_person_id_w_event_badge_id(
event_badge_id: int|str,
) -> bool|int|None:
log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
if event_badge_id := redis_lookup_id_random(record_id_random=event_badge_id, table_name='event_badge'): pass
else: return False
data = {}
data['event_badge_id'] = event_badge_id
sql = f"""
SELECT `event_badge`.id AS 'event_badge_id', `event_badge`.id_random AS 'event_badge_id_random', `event_badge`.event_person_id AS 'event_person_id'
FROM `event_badge` AS `event_badge`
WHERE `event_badge`.id = :event_badge_id
LIMIT 1;
"""
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
if event_badge_data_result := sql_select(data=data, sql=sql):
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(event_badge_data_result)
if event_person_id := event_badge_data_result.get('event_person_id', None): return event_person_id
else: return False
else: return None
# ### END ### API Event Badge Methods ### get_event_badge_template_id_w_event_id() ###
# ### BEGIN ### API Event Badge Methods ### create_update_event_badge_obj_v4() ###
# Updated 2022-02-23
@logger_reset

View File

@@ -7,6 +7,8 @@ from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, v
from app.db_sql import get_account_id_w_for_type_id, redis_lookup_id_random, sql_enable_part, sql_delete, sql_insert, sql_limit_offset_part, sql_select, sql_update
from app.lib_general import log, logging, logger_reset
from app.methods.event_badge_methods import get_event_person_id_w_event_badge_id
from app.models.common_field_schema import default_num_bytes
from app.models.event_exhibit_tracking_models import Event_Exhibit_Tracking_Base
@@ -21,10 +23,13 @@ def create_event_exhibit_tracking_obj(
event_person_id: int = None,
create_sub_obj: bool = False,
fail_any: bool = False, # Fail if any thing goes wrong for sub objects
log_lvl: int = logging.WARNING, # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log_lvl: int = logging.INFO, # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
) -> int|bool:
log.setLevel(log_lvl)
if event_badge_id and not event_person_id:
event_person_id = get_event_person_id_w_event_badge_id(event_badge_id)
# ### SECTION ### Secondary data validation
log.info('Create dictionary or Pydantic object')
log.debug(type(event_exhibit_tracking_dict_obj))