Improve data store record retrieval.

This commit is contained in:
Scott Idem
2023-05-22 13:41:30 -04:00
parent b9b45969f3
commit 0375bd8c05
5 changed files with 95 additions and 7 deletions

View File

@@ -193,6 +193,71 @@ async def get_event_abstract_obj(
# ### END ### API Event Abstract ### get_event_abstract_obj() ###
# ### BEGIN ### API Event Abstract ### get_event_id_event_abstract_obj_li() ###
# Updated 2023-05-22
@router.get('/event/{event_id}/event/abstract/list', response_model=Resp_Body_Base)
async def get_event_id_event_abstract_obj_li(
event_id: str = Query(..., min_length=11, max_length=22),
# inc_address: bool = False,
# inc_contact: bool = False,
# inc_event_file_list: bool = False,
inc_event_person: bool = False, # Intended for event_presenter
# inc_file_count: bool = False, # NOTE: file counts are from separate views
# inc_poc_event_person: bool = False,
approved: str = 'all', # approved, not_approved, all
hidden: str = 'not_hidden', # hidden, not_hidden, all
review: str = 'all', # hidden, not_hidden, all
commons: Common_Route_Params = Depends(common_route_params),
):
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 mk_resp(data=None, status_code=404, response=commons.response)
# Updated 2023-05-22
if event_abstract_rec_list_result := get_event_abstract_rec_list(
event_id = event_id,
# review = review, # ready, not_ready, all
approved = approved, # approve(d), not_approved, all
# hidden = hidden, # hidden, not_hidden, all
enabled = commons.enabled,
limit = commons.limit,
offset = commons.offset,
):
event_abstract_result_list = []
for event_abstract_rec in event_abstract_rec_list_result:
if load_event_abstract_result := load_event_abstract_obj(
event_abstract_id = event_abstract_rec.get('event_abstract_id', None),
# review = review,
# approved = approved,
hidden = hidden,
enabled = commons.enabled,
limit = commons.limit,
inc_event_person = inc_event_person,
):
event_abstract_result_list.append(load_event_abstract_result)
else:
event_abstract_result_list.append(None)
response_data = event_abstract_result_list
elif isinstance(event_abstract_rec_list_result, list) or event_abstract_rec_list_result is None: # Empty list or None
log.info('No results')
return mk_resp(data=False, status_code=404, response=commons.response) # Not Found
else:
log.warning('Likely bad request')
return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request
return mk_resp(data=response_data, response=commons.response)
# ### END ### API Event Abstract ### get_event_id_event_abstract_obj_li() ###
# ### BEGIN ### API Event Abstract ### delete_event_abstract_obj() ###
# Updated 2023-03-22
@router.delete('/event/abstract/{event_abstract_id}', response_model=Resp_Body_Base)