Updates for Cvent and IDAA custom status field
This commit is contained in:
@@ -474,6 +474,7 @@ def create_update_aether_person(
|
||||
# Important variables used more than once.
|
||||
person_external_id = None
|
||||
status = None
|
||||
log.debug(cvent_contact_obj.get('customFields'))
|
||||
if custom_field_list := cvent_contact_obj.get('customFields'): # List
|
||||
for custom_field in custom_field_list:
|
||||
# Get the External ID created by OSIT
|
||||
@@ -485,6 +486,11 @@ def create_update_aether_person(
|
||||
if custom_field.get('id') == 'e4e51781-e1ec-4f61-8329-b5d29bec6886':
|
||||
# person_data['external_id'] = custom_field.get('value')[0]
|
||||
status = custom_field.get('value')[0].lower()
|
||||
log.debug(f'Cvent Customer Custom Status: {status}')
|
||||
if status: pass
|
||||
else: status = 'unknown' # Will try to improve this guess in membership section below
|
||||
log.debug(status)
|
||||
|
||||
email = cvent_contact_obj.get('email')
|
||||
membership_person_id = None
|
||||
membership_person_type_id = None
|
||||
@@ -626,6 +632,17 @@ def create_update_aether_person(
|
||||
membership_person_type_data['last_end_on'] = datetime.datetime.strptime(cvent_contact_obj.get('membership').get('expiration'), '%Y-%m-%d')
|
||||
|
||||
current_datetime = datetime.datetime.now()
|
||||
log.debug(status)
|
||||
if status == 'unknown':
|
||||
log.info('Status is unknown. Going to try and make a guess...')
|
||||
if membership_person_type_data['first_start_on'] < current_datetime and membership_person_type_data['end_on'] >= current_datetime:
|
||||
person_data['status'] = 'approved' # approved and current
|
||||
elif membership_person_type_data['first_start_on'] < current_datetime and membership_person_type_data['end_on'] < current_datetime:
|
||||
person_data['status'] = 'approved' # approved but expired
|
||||
else:
|
||||
person_data['status'] = 'pending' # likely new?
|
||||
log.debug(person_data['status'])
|
||||
|
||||
if membership_person_type_data['end_on'] >= current_datetime:
|
||||
membership_person_type_data['lu_membership_type_status_id'] = 5 # 5 = active; expiration is > now
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user