Minor improvements for importing
This commit is contained in:
@@ -331,7 +331,7 @@ async def event_importing_create_update_w_external_id(
|
||||
# ### BEGIN ### Event Importing ### event_importing_program_data() ###
|
||||
# Based on the program import template the clients are given.
|
||||
# Create and update locations, sessions, presentations, and presenters as needed.
|
||||
# Updated 2023-05-01
|
||||
# Updated 2024-03-25
|
||||
@router.post('/event/{event_id}/importing/program_data', response_model=Resp_Body_Base)
|
||||
async def event_importing_program_data(
|
||||
event_id: str = Query(..., min_length=11, max_length=22),
|
||||
@@ -558,9 +558,9 @@ async def event_importing_program_data(
|
||||
event_location_data['code'] = record.get('location_code')
|
||||
event_location_data['event_id'] = event_id # INSERT and UPDATE the event_id just in case
|
||||
if record.get('location_name'):
|
||||
event_location_data['name'] = record.get('location_name')
|
||||
event_location_data['name'] = record.get('location_name').strip()
|
||||
elif record.get('location_code'):
|
||||
event_location_data['name'] = record.get('location_code')
|
||||
event_location_data['name'] = record.get('location_code').strip()
|
||||
event_location_data['enable'] = True
|
||||
|
||||
event_location_id = None
|
||||
@@ -610,10 +610,16 @@ async def event_importing_program_data(
|
||||
"""
|
||||
|
||||
event_session_data = {}
|
||||
event_session_data['code'] = record.get('session_code')
|
||||
if record.get('session_code'):
|
||||
event_session_data['code'] = record.get('session_code').strip()
|
||||
else:
|
||||
event_session_data['code'] = None
|
||||
event_session_data['event_id'] = event_id # INSERT and UPDATE the event_id just in case
|
||||
event_session_data['event_location_id'] = event_location_id # INSERT and UPDATE the event_location_id in case the session was moved
|
||||
event_session_data['name'] = record.get('session_name')
|
||||
if record.get('session_name'):
|
||||
event_session_data['name'] = record.get('session_name').strip()
|
||||
else:
|
||||
event_session_data['name'] = None
|
||||
event_session_data['description'] = record.get('session_description')
|
||||
|
||||
event_session_data['start_datetime'] = record.get('session_start_datetime')
|
||||
@@ -679,11 +685,17 @@ async def event_importing_program_data(
|
||||
"""
|
||||
|
||||
event_presentation_data = {}
|
||||
event_presentation_data['code'] = record.get('presentation_code')
|
||||
if record.get('presentation_code'):
|
||||
event_presentation_data['code'] = record.get('presentation_code').strip()
|
||||
else:
|
||||
event_presentation_data['code'] = None
|
||||
event_presentation_data['event_id'] = event_id # INSERT and UPDATE the event_id just in case
|
||||
event_presentation_data['event_session_id'] = event_session_id # UPDATE the event_session_id in case the presentation was moved
|
||||
|
||||
event_presentation_data['name'] = record.get('presentation_name')
|
||||
if record.get('presentation_name'):
|
||||
event_presentation_data['name'] = record.get('presentation_name').strip()
|
||||
else:
|
||||
event_presentation_data['name'] = None
|
||||
event_presentation_data['description'] = record.get('presentation_description')
|
||||
|
||||
if record.get('presentation_start_datetime'):
|
||||
@@ -706,38 +718,40 @@ async def event_importing_program_data(
|
||||
event_presentation_data['notes'] = record.get('presentation_notes')
|
||||
|
||||
event_presentation_id = None
|
||||
if event_presentation_rec_result := sql_select(data=data, sql=sql):
|
||||
# Pull out IDs and UPDATE existing event_presentation record
|
||||
event_presentation_rec = event_presentation_rec_result
|
||||
event_presentation_id = event_presentation_rec.get('event_presentation_id', None)
|
||||
event_presentation_id_random = event_presentation_rec.get('event_presentation_id_random', None)
|
||||
event_presentation_name = event_presentation_rec.get('name', None)
|
||||
log.info(f'Found one record. Event Presentation ID: {event_presentation_id_random} Event Presentation Name: {event_presentation_name}')
|
||||
if (record.get('presentation_external_id') or record.get('presentation_code')) and record.get('presentation_name'):
|
||||
if event_presentation_rec_result := sql_select(data=data, sql=sql):
|
||||
# Pull out IDs and UPDATE existing event_presentation record
|
||||
event_presentation_rec = event_presentation_rec_result
|
||||
event_presentation_id = event_presentation_rec.get('event_presentation_id', None)
|
||||
event_presentation_id_random = event_presentation_rec.get('event_presentation_id_random', None)
|
||||
event_presentation_name = event_presentation_rec.get('name', None)
|
||||
log.info(f'Found one record. Event Presentation ID: {event_presentation_id_random} Event Presentation Name: {event_presentation_name}')
|
||||
|
||||
event_presentation_data['id'] = event_presentation_id
|
||||
event_presentation_data['id'] = event_presentation_id
|
||||
|
||||
log.debug(event_presentation_data)
|
||||
log.debug(event_presentation_data)
|
||||
|
||||
if allow_updates:
|
||||
if event_presentation_obj_up_result := sql_update(data=event_presentation_data, table_name='event_presentation'):
|
||||
log.debug(event_presentation_obj_up_result)
|
||||
else:
|
||||
log.warning(event_presentation_obj_up_result)
|
||||
pass # Probably nothing to update
|
||||
else:
|
||||
log.info(f'No record found that needs to be updated. Creating a new event presentation. Event Presentation External ID: {event_presentation_external_id}')
|
||||
if allow_updates:
|
||||
if event_presentation_obj_up_result := sql_update(data=event_presentation_data, table_name='event_presentation'):
|
||||
log.debug(event_presentation_obj_up_result)
|
||||
else:
|
||||
log.warning(event_presentation_obj_up_result)
|
||||
pass # Probably nothing to update
|
||||
else:
|
||||
log.info(f'No record found that needs to be updated. Creating a new event presentation. Event Presentation External ID: {event_presentation_external_id}')
|
||||
|
||||
event_presentation_data['external_id'] = event_presentation_external_id # NOTE: This should never change
|
||||
event_presentation_data['external_id'] = event_presentation_external_id # NOTE: This should never change
|
||||
|
||||
log.debug(event_presentation_data)
|
||||
log.debug(event_presentation_data)
|
||||
|
||||
if allow_inserts:
|
||||
if event_presentation_obj_in_result := sql_insert(data=event_presentation_data, table_name='event_presentation'):
|
||||
log.debug(event_presentation_obj_in_result)
|
||||
event_presentation_id = event_presentation_obj_in_result
|
||||
else:
|
||||
log.warning(event_presentation_obj_in_result)
|
||||
continue # Something unexpected may have happened
|
||||
|
||||
if allow_inserts:
|
||||
if event_presentation_obj_in_result := sql_insert(data=event_presentation_data, table_name='event_presentation'):
|
||||
log.debug(event_presentation_obj_in_result)
|
||||
event_presentation_id = event_presentation_obj_in_result
|
||||
else:
|
||||
log.warning(event_presentation_obj_in_result)
|
||||
continue # Something unexpected may have happened
|
||||
data['event_presentation_id'] = event_presentation_id
|
||||
|
||||
# INSERT or UPDATE event_presenter
|
||||
@@ -782,38 +796,40 @@ async def event_importing_program_data(
|
||||
event_presenter_data['notes'] = record.get('presenter_notes', '')
|
||||
|
||||
event_presenter_id = None
|
||||
if event_presenter_rec_result := sql_select(data=data, sql=sql):
|
||||
# Pull out IDs and UPDATE existing event_presenter record
|
||||
event_presenter_rec = event_presenter_rec_result
|
||||
event_presenter_id = event_presenter_rec.get('event_presenter_id')
|
||||
event_presenter_id_random = event_presenter_rec.get('event_presenter_id_random')
|
||||
event_presenter_given_name = event_presenter_rec.get('given_name')
|
||||
log.info(f'Found one record. Event Presenter ID: {event_presenter_id_random} Event Presenter Given Name: {event_presenter_given_name}')
|
||||
if (record.get('presenter_code') or record.get('presenter_number')) and record.get('presenter_given_name'):
|
||||
if event_presenter_rec_result := sql_select(data=data, sql=sql):
|
||||
# Pull out IDs and UPDATE existing event_presenter record
|
||||
event_presenter_rec = event_presenter_rec_result
|
||||
event_presenter_id = event_presenter_rec.get('event_presenter_id')
|
||||
event_presenter_id_random = event_presenter_rec.get('event_presenter_id_random')
|
||||
event_presenter_given_name = event_presenter_rec.get('given_name')
|
||||
log.info(f'Found one record. Event Presenter ID: {event_presenter_id_random} Event Presenter Given Name: {event_presenter_given_name}')
|
||||
|
||||
event_presenter_data['id'] = event_presenter_id
|
||||
event_presenter_data['id'] = event_presenter_id
|
||||
|
||||
log.debug(event_presenter_data)
|
||||
log.debug(event_presenter_data)
|
||||
|
||||
if allow_updates:
|
||||
if event_presenter_obj_up_result := sql_update(data=event_presenter_data, table_name='event_presenter'):
|
||||
log.debug(event_presenter_obj_up_result)
|
||||
else:
|
||||
log.warning(event_presenter_obj_up_result)
|
||||
pass # Probably nothing to update
|
||||
else:
|
||||
log.info(f'No record found that needs to be updated. Creating a new event presenter. Event Presenter External ID: {event_presenter_external_id}')
|
||||
if allow_updates:
|
||||
if event_presenter_obj_up_result := sql_update(data=event_presenter_data, table_name='event_presenter'):
|
||||
log.debug(event_presenter_obj_up_result)
|
||||
else:
|
||||
log.warning(event_presenter_obj_up_result)
|
||||
pass # Probably nothing to update
|
||||
else:
|
||||
log.info(f'No record found that needs to be updated. Creating a new event presenter. Event Presenter External ID: {event_presenter_external_id}')
|
||||
|
||||
event_presenter_data['external_id'] = event_presenter_external_id # NOTE: This should never change
|
||||
event_presenter_data['external_id'] = event_presenter_external_id # NOTE: This should never change
|
||||
|
||||
log.debug(event_presenter_data)
|
||||
log.debug(event_presenter_data)
|
||||
|
||||
if allow_inserts:
|
||||
if event_presenter_obj_in_result := sql_insert(data=event_presenter_data, table_name='event_presenter'):
|
||||
log.debug(event_presenter_obj_in_result)
|
||||
event_presenter_id = event_presenter_obj_in_result
|
||||
else:
|
||||
log.warning(event_presenter_obj_in_result)
|
||||
continue # Something unexpected may have happened
|
||||
|
||||
if allow_inserts:
|
||||
if event_presenter_obj_in_result := sql_insert(data=event_presenter_data, table_name='event_presenter'):
|
||||
log.debug(event_presenter_obj_in_result)
|
||||
event_presenter_id = event_presenter_obj_in_result
|
||||
else:
|
||||
log.warning(event_presenter_obj_in_result)
|
||||
continue # Something unexpected may have happened
|
||||
data['event_presenter_id'] = event_presenter_id
|
||||
data['event_presenter_code'] = event_presenter_code
|
||||
data['event_presenter_number'] = event_presenter_number
|
||||
|
||||
Reference in New Issue
Block a user