Work on cleaning up viewing and searching for badge only records. Not tied to an event_person record.

This commit is contained in:
Scott Idem
2022-06-27 19:51:20 -04:00
parent 9376388f90
commit efcbe17b6b

View File

@@ -154,6 +154,8 @@ async def search_event_badge_obj_li(
family_name: str = Query('', max_length=25), family_name: str = Query('', max_length=25),
email: str = Query('', max_length=50), email: str = Query('', max_length=50),
badge_only: bool = False, # NOTE: Use the v_event_badge_only view
hidden: str = 'not_hidden', # hidden, not_hidden, all hidden: str = 'not_hidden', # hidden, not_hidden, all
commons: Common_Route_Params = Depends(common_route_params), commons: Common_Route_Params = Depends(common_route_params),
@@ -267,6 +269,19 @@ async def search_event_badge_obj_li(
{sql_limit}; {sql_limit};
""" """
elif query_str and len(query_str) > 1: elif query_str and len(query_str) > 1:
if badge_only:
sql = f"""
SELECT *
FROM `v_event_badge_only` AS event_badge
WHERE event_badge.event_id = :event_id
{sql_badge_type_code}
AND event_badge.query_str LIKE :query_str
{sql_hidden}
{sql_enabled}
ORDER BY event_badge.given_name ASC, event_badge.family_name ASC, event_badge.created_on DESC, event_badge.updated_on DESC
{sql_limit};
"""
else:
# sql = f""" # sql = f"""
# SELECT * # SELECT *
# FROM `v_event_badge` AS event_badge # FROM `v_event_badge` AS event_badge
@@ -304,6 +319,21 @@ async def search_event_badge_obj_li(
ORDER BY event_badge.given_name ASC, event_badge.family_name ASC, event_badge.created_on DESC, event_badge.updated_on DESC ORDER BY event_badge.given_name ASC, event_badge.family_name ASC, event_badge.created_on DESC, event_badge.updated_on DESC
{sql_limit}; {sql_limit};
""" """
else:
if badge_only:
sql = f"""
SELECT *
FROM `v_event_badge_only` AS event_badge
WHERE event_badge.event_id = :event_id
{sql_badge_type_code}
AND (event_badge.given_name LIKE :given_name
AND event_badge.family_name LIKE :family_name)
AND event_badge.email LIKE :email
{sql_hidden}
{sql_enabled}
ORDER BY event_badge.given_name ASC, event_badge.family_name ASC, event_badge.created_on DESC, event_badge.updated_on DESC
{sql_limit};
"""
else: else:
# sql = f""" # sql = f"""
# SELECT * # SELECT *
@@ -400,6 +430,14 @@ async def get_event_badge_obj(
# event_badge_dict = event_badge_obj.dict(by_alias=commons.by_alias, exclude_unset=commons.exclude_unset) # event_badge_dict = event_badge_obj.dict(by_alias=commons.by_alias, exclude_unset=commons.exclude_unset)
# return mk_resp(data=event_badge_dict, response=commons.response) # return mk_resp(data=event_badge_dict, response=commons.response)
response_data = event_badge_obj response_data = event_badge_obj
else:
# NOTE: This is not really the best way to do this. This is to help get badges that are not tied to an event_person record.
if event_badge_obj := load_event_badge_obj(
event_badge_id = event_badge_id,
badge_only = True,
inc_event_badge_template = inc_event_badge_template,
):
response_data = event_badge_obj
else: else:
return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request