Working on IDAA data imports
This commit is contained in:
@@ -522,14 +522,18 @@ async def ins_up_person_contact_address_user_data(
|
||||
return mk_resp(data=person_data_li)
|
||||
|
||||
|
||||
# Second round: Creating membership records from the Cvent Address Book export data
|
||||
@router.post('/person_data_v2_membership', response_model=Resp_Body_Base)
|
||||
async def importing_person_data_v2_membership(
|
||||
# Based on the Cvent Address Book Contacts export data. New External IDs should already be added in Cvent and updated in Aether as well. Use importing_update_w_external_id() endpoint function. Person contact address user data needs to be updated. Use ins_up_person_contact_address_user_data() endpoint function.
|
||||
# All records should have an External ID.
|
||||
# Updated 2021-10-04
|
||||
@router.get('/ins_up_membership_person_data', response_model=Resp_Body_Base)
|
||||
async def ins_up_membership_person_data(
|
||||
response: Response = Response,
|
||||
):
|
||||
log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
log.debug(locals())
|
||||
|
||||
log.info('Starting membership person data insert update...')
|
||||
|
||||
allow_insert_person = True
|
||||
allow_insert_contact = True
|
||||
allow_insert_address = True
|
||||
@@ -543,14 +547,14 @@ async def importing_person_data_v2_membership(
|
||||
# allow_update_membership = True
|
||||
# allow_update_person_new_user = True
|
||||
|
||||
account_id = 99
|
||||
account_id = 13
|
||||
full_file_path = 'admin/temp/import_person_contact_address_user_data.xlsx'
|
||||
|
||||
df = pandas.read_excel(full_file_path, na_filter=False, dtype={'external_import_id':str, 'phone_home':str, 'phone_mobile':str, 'city':str, 'state_province':str, 'address_postal_code':str, 'country':str})
|
||||
df = pandas.read_excel(full_file_path, na_filter=False, dtype={'external_id':str, 'external_import_id':str, 'phone_home':str, 'phone_mobile':str, 'city':str, 'state_province':str, 'address_postal_code':str, 'country':str})
|
||||
log.debug(df)
|
||||
|
||||
df_dict = df.to_dict(orient='records')
|
||||
# log.debug(df_dict)
|
||||
log.debug(df_dict)
|
||||
|
||||
person_data_li = []
|
||||
for record in df_dict:
|
||||
@@ -565,6 +569,12 @@ async def importing_person_data_v2_membership(
|
||||
|
||||
person_data = {}
|
||||
person_data['account_id'] = account_id
|
||||
|
||||
if record['external_id']: # This is now required for the membership portion 2021-10-04
|
||||
external_id = record['external_id']
|
||||
else: continue # external_id = None
|
||||
log.info(f'External ID: {external_id}')
|
||||
|
||||
if record['external_import_id']:
|
||||
person_data['external_import_id'] = record['external_import_id']
|
||||
else:
|
||||
@@ -576,15 +586,23 @@ async def importing_person_data_v2_membership(
|
||||
|
||||
data = {}
|
||||
data['account_id'] = account_id
|
||||
data['external_id'] = external_id
|
||||
data['external_import_id'] = external_import_id
|
||||
sql = f"""
|
||||
SELECT *
|
||||
FROM `v_person` AS `person`
|
||||
WHERE person.account_id = :account_id
|
||||
AND person.external_import_id = :external_import_id
|
||||
ORDER BY `person`.created_on DESC, `person`.updated_on DESC
|
||||
AND person.external_id = :external_id
|
||||
LIMIT 1;
|
||||
"""
|
||||
# sql = f"""
|
||||
# SELECT *
|
||||
# FROM `v_person` AS `person`
|
||||
# WHERE person.account_id = :account_id
|
||||
# AND person.external_import_id = :external_import_id
|
||||
# ORDER BY `person`.created_on DESC, `person`.updated_on DESC
|
||||
# LIMIT 1;
|
||||
# """
|
||||
if person_rec_result := sql_select(data=data, sql=sql):
|
||||
# Pull out IDs of existing person record
|
||||
log.debug('Found one record')
|
||||
@@ -669,7 +687,6 @@ async def importing_person_data_v2_membership(
|
||||
SELECT *
|
||||
FROM `v_membership_person` AS `membership_person`
|
||||
WHERE membership_person.id = :membership_person_id
|
||||
ORDER BY `membership_person`.created_on DESC, `membership_person`.updated_on DESC
|
||||
LIMIT 1;
|
||||
"""
|
||||
if membership_person_rec_result := sql_select(data=data, sql=sql):
|
||||
|
||||
Reference in New Issue
Block a user