Work on person, user, contact, address improvements

This commit is contained in:
Scott Idem
2021-12-14 19:38:55 -05:00
parent 0863303740
commit 7066715495
4 changed files with 24 additions and 20 deletions

View File

@@ -56,7 +56,7 @@ def load_contact_obj(
model_as_dict = model_as_dict, model_as_dict = model_as_dict,
): ):
contact_obj.address = address_result contact_obj.address = address_result
else: contact_obj.address = None else: contact_obj.address = {} # None
if model_as_dict: if model_as_dict:
return contact_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member return contact_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from app.db_sql import redis_lookup_id_random, sql_insert, sql_insert_or_update, sql_select, sql_update from app.db_sql import redis_lookup_id_random, sql_insert, sql_insert_or_update, sql_select, sql_update
from app.lib_general import log, logging, send_email from app.lib_general import log, logging, logger_reset, send_email
# from app.methods.address_methods import load_address_obj # from app.methods.address_methods import load_address_obj
from app.methods.contact_methods import create_contact_obj, create_update_contact_obj, create_update_contact_obj_v4, load_contact_obj, update_contact_obj from app.methods.contact_methods import create_contact_obj, create_update_contact_obj, create_update_contact_obj_v4, load_contact_obj, update_contact_obj
@@ -77,7 +77,7 @@ def load_person_obj(
log.error(e.json()) log.error(e.json())
return False return False
# Updated 2021-07-09 # Updated 2021-12-14
if inc_contact: if inc_contact:
log.info('Need to include contact data...') log.info('Need to include contact data...')
contact_id = person_rec.get('contact_id', None) contact_id = person_rec.get('contact_id', None)
@@ -92,7 +92,7 @@ def load_person_obj(
inc_address = inc_address, inc_address = inc_address,
): ):
person_obj.contact = contact_result person_obj.contact = contact_result
else: person_obj.contact = None else: person_obj.contact = {} # None
# Updated 2021-07-09 # Updated 2021-07-09
# if inc_membership_group_list: # if inc_membership_group_list:
@@ -123,7 +123,7 @@ def load_person_obj(
# person_obj.membership_group_list = membership_group_result_list # person_obj.membership_group_list = membership_group_result_list
# else: person_obj.membership_group_list = [] # else: person_obj.membership_group_list = []
# Updated 2021-07-09 # Updated 2021-12-14
if inc_membership_person: if inc_membership_person:
log.info('Need to include membership person data...') log.info('Need to include membership person data...')
from app.methods.membership_person_methods import load_membership_person_obj from app.methods.membership_person_methods import load_membership_person_obj
@@ -151,7 +151,7 @@ def load_person_obj(
# inc_user = inc_user, # inc_user = inc_user,
): ):
person_obj.membership_person = membership_person_result person_obj.membership_person = membership_person_result
else: person_obj.membership_person = None else: person_obj.membership_person = {} # None
# Updated 2021-07-09 # Updated 2021-07-09
# if inc_membership_type or inc_membership_type_list: # Technically should this be inc_membership_type_list??? # if inc_membership_type or inc_membership_type_list: # Technically should this be inc_membership_type_list???
@@ -182,7 +182,7 @@ def load_person_obj(
# type_obj.membership_type_list = membership_type_result_list # type_obj.membership_type_list = membership_type_result_list
# else: type_obj.membership_type_list = [] # else: type_obj.membership_type_list = []
# Updated 2021-11-16 # Updated 2021-12-14
if inc_order_cart: if inc_order_cart:
log.info('Need to include order cart...') log.info('Need to include order cart...')
if order_cart_id := get_order_cart_id_for_person_id( if order_cart_id := get_order_cart_id_for_person_id(
@@ -193,7 +193,7 @@ def load_person_obj(
inc_order_cart_line_list = True, inc_order_cart_line_list = True,
): ):
person_obj.order_cart = order_cart_result person_obj.order_cart = order_cart_result
else: person_obj.order_cart = None else: person_obj.order_cart = {} # None
# Updated 2021-11-16 # Updated 2021-11-16
if inc_order_closed_count: if inc_order_closed_count:
@@ -239,7 +239,7 @@ def load_person_obj(
person_obj.order_list = order_result_list person_obj.order_list = order_result_list
else: person_obj.order_list = [] else: person_obj.order_list = []
# Updated 2021-06-18 # Updated 2021-12-14
if inc_organization: if inc_organization:
log.info('Need to include organization data...') log.info('Need to include organization data...')
organization_id = person_rec.get('organization_id', None) organization_id = person_rec.get('organization_id', None)
@@ -255,9 +255,9 @@ def load_person_obj(
inc_contact = inc_contact, inc_contact = inc_contact,
): ):
person_obj.organization = organization_dict person_obj.organization = organization_dict
else: person_obj.organization = None else: person_obj.organization = {} # None
# Updated 2021-08-19 # Updated 2021-12-14
if inc_user: if inc_user:
log.info('Need to include user data...') log.info('Need to include user data...')
user_id = person_rec.get('user_id', None) user_id = person_rec.get('user_id', None)
@@ -273,7 +273,7 @@ def load_person_obj(
inc_user_role_list = inc_user_role_list, inc_user_role_list = inc_user_role_list,
): ):
person_obj.user = user_result person_obj.user = user_result
else: person_obj.user = None else: person_obj.user = {} # None
if model_as_dict: if model_as_dict:
return person_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member return person_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member
@@ -283,6 +283,7 @@ def load_person_obj(
# ### BEGIN ### API Person Methods ### get_person_rec_list() ### # ### BEGIN ### API Person Methods ### get_person_rec_list() ###
@logger_reset
def get_person_rec_list( def get_person_rec_list(
for_obj_type: str, for_obj_type: str,
for_obj_id: str, for_obj_id: str,
@@ -344,11 +345,12 @@ def get_person_rec_list(
ORDER BY `person`.priority DESC, `person`.sort ASC,`person`.given_name ASC, `person`.family_name ASC, `person`.created_on DESC, `person`.updated_on DESC ORDER BY `person`.priority DESC, `person`.sort ASC,`person`.given_name ASC, `person`.family_name ASC, `person`.created_on DESC, `person`.updated_on DESC
{sql_limit}; {sql_limit};
""" """
log.debug(sql)
if person_rec_li_result := sql_select(data=data, sql=sql, as_list=True): if person_rec_li_result := sql_select(data=data, sql=sql, as_list=True):
log.info('Got a list result') log.info('Got a list result')
person_rec_li = person_rec_li_result person_rec_li = person_rec_li_result
else: # None or False else: # [] or False
log.info('No results or something went wrong') log.info('No results or something went wrong')
person_rec_li = person_rec_li_result person_rec_li = person_rec_li_result

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from app.db_sql import redis_lookup_id_random, sql_insert, sql_select, sql_update from app.db_sql import redis_lookup_id_random, sql_insert, sql_select, sql_update
from app.lib_general import log, logging, send_email from app.lib_general import log, logging, logger_reset, send_email
# from app.methods.account_methods import load_account_cfg_obj # from app.methods.account_methods import load_account_cfg_obj
from app.methods.contact_methods import load_contact_obj, update_contact_obj from app.methods.contact_methods import load_contact_obj, update_contact_obj
@@ -299,7 +299,7 @@ def load_user_obj(
# inc_address = inc_address, # inc_address = inc_address,
# ): # ):
# user_obj.contact = contact_result # user_obj.contact = contact_result
# else: user_obj.contact = None # else: user_obj.contact = {} # None
if inc_event_list: if inc_event_list:
log.warning(f'This is being deprecated? load_user_obj() inc_event_list') log.warning(f'This is being deprecated? load_user_obj() inc_event_list')
@@ -340,7 +340,7 @@ def load_user_obj(
user_obj.order_list = order_result_list user_obj.order_list = order_result_list
else: user_obj.order_list = [] else: user_obj.order_list = []
# Updated 2021-06-18 # Updated 2021-12-14
if inc_organization: if inc_organization:
log.warning(f'This is being deprecated? load_user_obj() inc_organization') log.warning(f'This is being deprecated? load_user_obj() inc_organization')
organization_id = user_rec.get('organization_id', None) organization_id = user_rec.get('organization_id', None)
@@ -356,9 +356,9 @@ def load_user_obj(
inc_contact = inc_contact, inc_contact = inc_contact,
): ):
user_obj.organization = organization_result user_obj.organization = organization_result
else: user_obj.organization = None else: user_obj.organization = {} # None
# Updated 2021-06-18 # Updated 2021-12-14
if inc_person: if inc_person:
person_id = user_rec.get('person_id', None) person_id = user_rec.get('person_id', None)
log.debug(person_id) log.debug(person_id)
@@ -372,7 +372,7 @@ def load_user_obj(
inc_organization = inc_organization, inc_organization = inc_organization,
): ):
user_obj.person = person_result user_obj.person = person_result
else: user_obj.person = None else: user_obj.person = {} # None
log.debug(person_result) log.debug(person_result)
# Updated 2021-06-18 # Updated 2021-06-18
@@ -434,6 +434,7 @@ def load_user_obj(
# ### BEGIN ### API User Methods ### get_user_rec_list() ### # ### BEGIN ### API User Methods ### get_user_rec_list() ###
# Updated 2021-12-13 # Updated 2021-12-13
@logger_reset
def get_user_rec_list( def get_user_rec_list(
account_id: int|str, account_id: int|str,
hidden: str = 'not_hidden', # hidden, not_hidden, all hidden: str = 'not_hidden', # hidden, not_hidden, all

View File

@@ -398,6 +398,7 @@ async def lookup_email(
# time.sleep(1) # time.sleep(1)
# Updated 2021-12-13
if person_rec_list_result := get_person_rec_list( if person_rec_list_result := get_person_rec_list(
#account_id = account_id, #account_id = account_id,
for_obj_type = 'account', for_obj_type = 'account',
@@ -424,7 +425,7 @@ async def lookup_email(
else: else:
person_result_list.append(None) person_result_list.append(None)
response_data = person_result_list response_data = person_result_list
elif person_rec_list_result is None: elif isinstance(person_rec_list_result, list) or person_rec_list_result is None: # Empty list or None
log.info('No results') log.info('No results')
return mk_resp(data=None, status_code=404, response=response) # Not Found return mk_resp(data=None, status_code=404, response=response) # Not Found
else: else: