From 39db1999fb8d41b0c335783389d933d9ca43732e Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Mon, 13 Dec 2021 18:55:31 -0500 Subject: [PATCH] Code clean up. Working on returning proper 404 vs 400 responses if the results are empty and nothing went wrong. --- app/db_sql.py | 5 +- app/methods/account_cfg_methods.py | 5 +- app/methods/account_methods.py | 11 +- app/methods/activity_log_methods.py | 12 +- app/methods/archive_methods.py | 7 +- app/methods/cont_edu_cert_person_methods.py | 6 +- app/methods/contact_methods.py | 25 ++- app/methods/event_badge_methods.py | 8 +- app/methods/event_location_methods.py | 6 +- app/methods/event_methods.py | 10 +- app/methods/event_person_methods.py | 9 +- app/methods/event_session_methods.py | 6 +- app/methods/order_methods.py | 6 +- app/methods/person_methods.py | 2 + app/methods/post_comment_methods.py | 38 ++-- app/methods/post_methods.py | 34 ++-- app/methods/user_methods.py | 9 +- app/routers/activity_log.py | 4 +- app/routers/api_crud.py | 4 +- app/routers/cont_edu_cert_person.py | 2 +- app/routers/event.py | 8 +- app/routers/event_location.py | 2 +- app/routers/event_session.py | 2 +- app/routers/lookup.py | 92 +++++---- app/routers/order.py | 212 ++++++++++---------- app/routers/post.py | 13 +- app/routers/user.py | 2 +- 27 files changed, 301 insertions(+), 239 deletions(-) diff --git a/app/db_sql.py b/app/db_sql.py index 1ba3b02..2636899 100644 --- a/app/db_sql.py +++ b/app/db_sql.py @@ -661,10 +661,11 @@ def sql_select( return record_li # Successful else: if as_list: - log.info('No records found. Returning as empty list.') + # log.info('No records found. Returning None since the list is an empty list.') + log.info('No records found. Returning an empty list.') log.debug(result) - return None # Successful + return [] # Successful else: log.info('No records found. Returning None.') log.debug(result) diff --git a/app/methods/account_cfg_methods.py b/app/methods/account_cfg_methods.py index c2f8a65..5c32fad 100644 --- a/app/methods/account_cfg_methods.py +++ b/app/methods/account_cfg_methods.py @@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator from app.db_sql import redis_lookup_id_random, sql_select -from app.lib_general import log, logging +from app.lib_general import log, logging, logger_reset from app.methods.membership_cfg_methods import load_membership_cfg_obj @@ -13,6 +13,7 @@ from app.models.account_cfg_models import Account_Cfg_Base # ### BEGIN ### API Account Cfg Methods ### load_account_cfg_obj() ### +@logger_reset def load_account_cfg_obj( account_id: int|str, model_as_dict: bool = False, @@ -20,7 +21,7 @@ def load_account_cfg_obj( inc_fundraising_cfg: bool = False, inc_membership_cfg: bool = False, ) -> Account_Cfg_Base|dict|bool: - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if account_id := redis_lookup_id_random(record_id_random=account_id, table_name='account'): pass diff --git a/app/methods/account_methods.py b/app/methods/account_methods.py index 5cac08a..9c10f28 100644 --- a/app/methods/account_methods.py +++ b/app/methods/account_methods.py @@ -567,7 +567,7 @@ def load_account_obj( # ### BEGIN ### API Account Methods ### get_account_rec_list() ### -# Updated 2021-09-28 +# Updated 2021-12-13 def get_account_rec_list( limit: int = 25, enabled: str = 'enabled', # enabled, disabled, all @@ -604,12 +604,15 @@ def get_account_rec_list( ORDER BY `account`.created_on DESC, `account`.updated_on DESC {sql_limit}; """ + log.debug(sql) if account_rec_li_result := sql_select(data=data, sql=sql, as_list=True): + log.info('Got a list result') account_rec_li = account_rec_li_result - else: - account_rec_li = [] - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + else: # [] or False + log.info('No results or something went wrong') + account_rec_li = account_rec_li_result + log.debug(account_rec_li_result) return account_rec_li diff --git a/app/methods/activity_log_methods.py b/app/methods/activity_log_methods.py index 4e437d6..a249f6d 100644 --- a/app/methods/activity_log_methods.py +++ b/app/methods/activity_log_methods.py @@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union 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.lib_general import log, logging +from app.lib_general import log, logging, logger_reset from app.models.common_field_schema import default_num_bytes @@ -43,6 +43,8 @@ def load_activity_log_obj( # ### BEGIN ### API Activity Log Methods ### get_activity_log_rec_list() ### +# Updated 2021-12-13 +@logger_reset def get_activity_log_rec_list( account_id: str, from_datetime: datetime.datetime = None, @@ -50,7 +52,7 @@ def get_activity_log_rec_list( limit: int = 1000, enabled: str = 'enabled', # enabled, disabled, all ) -> list|bool: - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if account_id := redis_lookup_id_random(record_id_random=account_id, table_name='account'): pass @@ -88,9 +90,9 @@ def get_activity_log_rec_list( if activity_log_rec_li_result := sql_select(data=data, sql=sql, as_list=True): activity_log_rec_li = activity_log_rec_li_result - else: - activity_log_rec_li = [] - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + else: # [] or False + activity_log_rec_li = activity_log_rec_li_result + log.debug(activity_log_rec_li_result) return activity_log_rec_li diff --git a/app/methods/archive_methods.py b/app/methods/archive_methods.py index 0fa3335..697ea69 100644 --- a/app/methods/archive_methods.py +++ b/app/methods/archive_methods.py @@ -115,12 +115,13 @@ def get_archive_rec_list( ORDER BY `tbl`.created_on DESC, `tbl`.updated_on DESC {sql_limit}; """ + log.debug(sql) if archive_rec_li_result := sql_select(data=data, sql=sql, as_list=True): archive_rec_li = archive_rec_li_result - else: - archive_rec_li = [] - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + else: # [] or False + archive_rec_li = archive_rec_li_result + log.debug(archive_rec_li_result) return archive_rec_li diff --git a/app/methods/cont_edu_cert_person_methods.py b/app/methods/cont_edu_cert_person_methods.py index 10db0b3..66bfda4 100644 --- a/app/methods/cont_edu_cert_person_methods.py +++ b/app/methods/cont_edu_cert_person_methods.py @@ -134,12 +134,12 @@ def get_cont_edu_cert_person_rec_list( """ log.debug(sql) - if cont_edu_cert_person_rec_li_result := sql_select(data=data, sql=sql): + if cont_edu_cert_person_rec_li_result := sql_select(data=data, sql=sql, as_list=True): log.info('Got a list result') cont_edu_cert_person_rec_li = cont_edu_cert_person_rec_li_result - else: # None or False + else: # [] or False log.info('No results or something went wrong') - cont_edu_cert_person_rec_li = cont_edu_cert_person_rec_li_result # [] + cont_edu_cert_person_rec_li = cont_edu_cert_person_rec_li_result log.debug(cont_edu_cert_person_rec_li_result) diff --git a/app/methods/contact_methods.py b/app/methods/contact_methods.py index ab8d507..95c7187 100644 --- a/app/methods/contact_methods.py +++ b/app/methods/contact_methods.py @@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator from app.db_sql import get_account_id_w_for_type_id, redis_lookup_id_random, sql_insert, sql_select, sql_update -from app.lib_general import log, logging +from app.lib_general import log, logging, logger_reset from app.methods.address_methods import create_address_obj, create_update_address_obj, create_update_address_obj_v4, update_address_obj @@ -66,13 +66,15 @@ def load_contact_obj( # ### BEGIN ### API Contact Methods ### get_contact_rec_list() ### +# Updated 2021-12-13 +@logger_reset def get_contact_rec_list( for_obj_type: str, for_obj_id: str, limit: int = 1000, enabled: str = 'enabled', # enabled, disabled, all ) -> list|bool: - # log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if for_obj_id := redis_lookup_id_random(record_id_random=for_obj_id, table_name=for_obj_type): pass @@ -80,15 +82,15 @@ def get_contact_rec_list( data = {} data[f'{for_obj_type}_id'] = for_obj_id # data['for_obj_type'] = for_obj_type - sql_obj_type_id = f'`tbl`.{for_obj_type}_id = :{for_obj_type}_id' + sql_obj_type_id = f'`contact`.{for_obj_type}_id = :{for_obj_type}_id' # if enabled in ['enabled', 'disabled', 'all']: # if enabled == 'enabled': # data['enable'] = True - # sql_enabled = f'AND `tbl`.enable = :enable' + # sql_enabled = f'AND `contact`.enable = :enable' # elif enabled == 'disabled': # data['enable'] = False - # sql_enabled = f'AND `tbl`.enable = :enable' + # sql_enabled = f'AND `contact`.enable = :enable' # elif enabled == 'all': # sql_enabled = '' sql_enabled = '' @@ -100,20 +102,21 @@ def get_contact_rec_list( sql_limit = '' sql = f""" - SELECT `tbl`.id AS 'contact_id', `tbl`.id_random AS 'contact_id_random' - FROM `contact` AS `tbl` + SELECT `contact`.id AS 'contact_id', `contact`.id_random AS 'contact_id_random' + FROM `contact` AS `contact` WHERE {sql_obj_type_id} {sql_enabled} - ORDER BY `tbl`.created_on DESC, `tbl`.updated_on DESC + ORDER BY `contact`.created_on DESC, `contact`.updated_on DESC {sql_limit}; """ + log.debug(sql) if contact_rec_li_result := sql_select(data=data, sql=sql, as_list=True): contact_rec_li = contact_rec_li_result - else: - contact_rec_li = [] - # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + else: # [] or False + contact_rec_li = contact_rec_li_result + log.debug(contact_rec_li_result) return contact_rec_li diff --git a/app/methods/event_badge_methods.py b/app/methods/event_badge_methods.py index 15f338f..f3499d2 100644 --- a/app/methods/event_badge_methods.py +++ b/app/methods/event_badge_methods.py @@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union 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.lib_general import log, logging +from app.lib_general import log, logging, logger_reset from app.methods.event_badge_template_methods import load_event_badge_template_obj @@ -13,6 +13,7 @@ from app.models.event_badge_models import Event_Badge_Base # ### BEGIN ### API Event Badge Methods ### load_event_badge_obj() ### +@logger_reset def load_event_badge_obj( event_badge_id: int|str, limit: int = 1000, @@ -22,7 +23,7 @@ def load_event_badge_obj( enabled: str = 'enabled', # enabled, disabled, all inc_event_badge_template: bool = False, ) -> Event_Badge_Base|dict|bool: - # log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if event_badge_id := redis_lookup_id_random(record_id_random=event_badge_id, table_name='event_badge'): pass @@ -62,10 +63,11 @@ def load_event_badge_obj( # ### BEGIN ### API Event Badge Methods ### get_event_badge_template_id_w_event_id() ### # Updated 2021-09-14 +@logger_reset def get_event_badge_template_id_w_event_id( event_id: int|str, ) -> bool|int|None: - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # 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 diff --git a/app/methods/event_location_methods.py b/app/methods/event_location_methods.py index 623f4fc..24fc1d6 100644 --- a/app/methods/event_location_methods.py +++ b/app/methods/event_location_methods.py @@ -266,12 +266,12 @@ def get_event_location_rec_list( """ log.debug(sql) - if event_location_rec_li_result := sql_select(data=data, sql=sql): + if event_location_rec_li_result := sql_select(data=data, sql=sql, as_list=True): log.info('Got a list result') event_location_rec_li = event_location_rec_li_result - else: # None or False + else: # [] or False log.info('No results or something went wrong') - event_location_rec_li = event_location_rec_li_result # [] + event_location_rec_li = event_location_rec_li_result log.debug(event_location_rec_li_result) diff --git a/app/methods/event_methods.py b/app/methods/event_methods.py index d8ebabb..a9f7198 100644 --- a/app/methods/event_methods.py +++ b/app/methods/event_methods.py @@ -449,12 +449,12 @@ def get_event_rec_list( """ log.debug(sql) - if event_rec_li_result := sql_select(data=data, sql=sql): + if event_rec_li_result := sql_select(data=data, sql=sql, as_list=True): log.info('Got a list result') event_rec_li = event_rec_li_result - else: # None or False + else: # [] or False log.info('No results or something went wrong') - event_rec_li = event_rec_li_result # [] + event_rec_li = event_rec_li_result log.debug(event_rec_li_result) @@ -597,9 +597,9 @@ def get_event_meeting_rec_list( log.info('Got a list result') log.debug(event_rec_li_result) event_rec_li = event_rec_li_result - else: # None or False + else: # [] or False log.info('No results or something went wrong') - event_rec_li = event_rec_li_result # [] + event_rec_li = event_rec_li_result log.debug(event_rec_li_result) diff --git a/app/methods/event_person_methods.py b/app/methods/event_person_methods.py index d9a0d96..b663bc5 100644 --- a/app/methods/event_person_methods.py +++ b/app/methods/event_person_methods.py @@ -230,12 +230,15 @@ def get_event_person_rec_list( ORDER BY `tbl`.created_on DESC, `tbl`.updated_on DESC {sql_limit}; """ + log.debug(sql) if event_person_rec_li_result := sql_select(data=data, sql=sql, as_list=True): + log.info('Got a list result') event_person_rec_li = event_person_rec_li_result - else: - event_person_rec_li = [] - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + else: # [] or False + log.info('No results or something went wrong') + event_person_rec_li = event_person_rec_li_result + log.debug(event_person_rec_li_result) return event_person_rec_li diff --git a/app/methods/event_session_methods.py b/app/methods/event_session_methods.py index 7bf39d8..47b11d5 100644 --- a/app/methods/event_session_methods.py +++ b/app/methods/event_session_methods.py @@ -358,12 +358,12 @@ def get_event_session_rec_list( """ log.debug(sql) - if event_session_rec_li_result := sql_select(data=data, sql=sql): + if event_session_rec_li_result := sql_select(data=data, sql=sql, as_list=True): log.info('Got a list result') event_session_rec_li = event_session_rec_li_result - else: # None or False + else: # [] or False log.info('No results or something went wrong') - event_session_rec_li = event_session_rec_li_result # [] + event_session_rec_li = event_session_rec_li_result log.debug(event_session_rec_li_result) diff --git a/app/methods/order_methods.py b/app/methods/order_methods.py index be225a9..45174d1 100644 --- a/app/methods/order_methods.py +++ b/app/methods/order_methods.py @@ -365,9 +365,11 @@ def get_order_rec_list( """ log.debug(sql) - if order_rec_li_result := sql_select(data=data, sql=sql): + if order_rec_li_result := sql_select(data=data, sql=sql, as_list=True): + log.info('Got a list result') order_rec_li = order_rec_li_result - else: # None or False + else: # [] or False + log.info('No results or something went wrong') order_rec_li = order_rec_li_result log.debug(order_rec_li_result) diff --git a/app/methods/person_methods.py b/app/methods/person_methods.py index 6262c88..5a81559 100644 --- a/app/methods/person_methods.py +++ b/app/methods/person_methods.py @@ -346,8 +346,10 @@ def get_person_rec_list( """ if person_rec_li_result := sql_select(data=data, sql=sql, as_list=True): + log.info('Got a list result') person_rec_li = person_rec_li_result else: # None or False + log.info('No results or something went wrong') person_rec_li = person_rec_li_result log.debug(person_rec_li_result) diff --git a/app/methods/post_comment_methods.py b/app/methods/post_comment_methods.py index 9b41287..696278d 100644 --- a/app/methods/post_comment_methods.py +++ b/app/methods/post_comment_methods.py @@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union 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.lib_general import log, logging +from app.lib_general import log, logging, logger_reset from app.methods.person_methods import load_person_obj # from app.methods.user_methods import load_user_obj @@ -14,8 +14,9 @@ from app.models.post_comment_models import Post_Comment_Base # ### BEGIN ### API Post Comment Methods ### create_post_comment_obj() ### +@logger_reset def create_post_comment_obj(post_comment_obj_new:Post_Comment_Base): - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if not post_comment_obj_new: @@ -37,6 +38,7 @@ def create_post_comment_obj(post_comment_obj_new:Post_Comment_Base): # ### BEGIN ### API Post Comment Methods ### load_post_comment_obj() ### +@logger_reset def load_post_comment_obj( post_comment_id: int|str, limit: int = 1000, @@ -47,13 +49,13 @@ def load_post_comment_obj( inc_person: bool = False, inc_user: bool = False, ) -> Post_Comment_Base|dict|bool: - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if post_comment_id := redis_lookup_id_random(record_id_random=post_comment_id, table_name='post_comment'): pass else: return False - if post_comment_rec := sql_select(table_name='v_post_comment_detail', record_id=post_comment_id): + if post_comment_rec := sql_select(table_name='v_post_comment', record_id=post_comment_id): #log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(post_comment_rec) else: @@ -105,12 +107,13 @@ def load_post_comment_obj( # ### BEGIN ### API Post Comment Methods ### update_post_comment_obj() ### +@logger_reset def update_post_comment_obj( post_comment_id: int|str, # Ideally the int ID should be passed. This allows for updating of the id_random value. post_comment_obj_up: Post_Comment_Base, create_sub_obj: bool = False, ) -> bool: - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if post_comment_id := redis_lookup_id_random(record_id_random=post_comment_id, table_name='post_comment'): pass @@ -168,13 +171,15 @@ def update_post_comment_obj( # ### BEGIN ### API Post Comment Methods ### get_post_comment_rec_list() ### +# Updated 2021-12-13 +@logger_reset def get_post_comment_rec_list( for_obj_type: str, for_obj_id: str, limit: int = 1000, enabled: str = 'enabled', # enabled, disabled, all ) -> list|bool: - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if for_obj_id := redis_lookup_id_random(record_id_random=for_obj_id, table_name=for_obj_type): pass @@ -182,15 +187,15 @@ def get_post_comment_rec_list( data = {} data[f'{for_obj_type}_id'] = for_obj_id # data['for_obj_type'] = for_obj_type - sql_obj_type_id = f'`tbl`.{for_obj_type}_id = :{for_obj_type}_id' + sql_obj_type_id = f'`post_comment`.{for_obj_type}_id = :{for_obj_type}_id' # if enabled in ['enabled', 'disabled', 'all']: # if enabled == 'enabled': # data['enable'] = True - # sql_enabled = f'AND `tbl`.enable = :enable' + # sql_enabled = f'AND `post_comment`.enable = :enable' # elif enabled == 'disabled': # data['enable'] = False - # sql_enabled = f'AND `tbl`.enable = :enable' + # sql_enabled = f'AND `post_comment`.enable = :enable' # elif enabled == 'all': # sql_enabled = '' sql_enabled = '' @@ -202,20 +207,23 @@ def get_post_comment_rec_list( sql_limit = '' sql = f""" - SELECT `tbl`.id AS 'post_comment_id', `tbl`.id_random AS 'post_comment_id_random' - FROM `post_comment` AS `tbl` + SELECT `post_comment`.id AS 'post_comment_id', `post_comment`.id_random AS 'post_comment_id_random' + FROM `post_comment` AS `post_comment` WHERE {sql_obj_type_id} {sql_enabled} - ORDER BY `tbl`.created_on DESC, `tbl`.updated_on DESC + ORDER BY `post_comment`.created_on DESC, `post_comment`.updated_on DESC {sql_limit}; """ + log.debug(sql) if post_comment_rec_li_result := sql_select(data=data, sql=sql, as_list=True): + log.info('Got a list result') post_comment_rec_li = post_comment_rec_li_result - else: - post_comment_rec_li = [] - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + else: # [] or False + log.info('No results or something went wrong') + post_comment_rec_li = post_comment_rec_li_result + log.debug(post_comment_rec_li_result) return post_comment_rec_li diff --git a/app/methods/post_methods.py b/app/methods/post_methods.py index d87451c..cff2d51 100644 --- a/app/methods/post_methods.py +++ b/app/methods/post_methods.py @@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union 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.lib_general import log, logging +from app.lib_general import log, logging, logger_reset from app.methods.person_methods import load_person_obj # from app.methods.post_comment_methods import create_post_comment_obj, update_post_comment_obj @@ -16,6 +16,7 @@ from app.models.post_models import Post_Base # ### BEGIN ### API Post Methods ### create_post_obj() ### +@logger_reset def create_post_obj(post_obj_new:Post_Base): log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) @@ -39,6 +40,7 @@ def create_post_obj(post_obj_new:Post_Base): # ### BEGIN ### API Post Methods ### load_post_obj() ### +@logger_reset def load_post_obj( post_id: int|str, limit: int = 1000, @@ -56,7 +58,7 @@ def load_post_obj( if post_id := redis_lookup_id_random(record_id_random=post_id, table_name='post'): pass else: return False - if post_rec := sql_select(table_name='v_post_detail', record_id=post_id): + if post_rec := sql_select(table_name='v_post', record_id=post_id): #log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(post_rec) else: return False @@ -132,6 +134,7 @@ def load_post_obj( # ### BEGIN ### API Post Methods ### update_post_obj() ### +@logger_reset def update_post_obj( post_id: int|str, # Ideally the int ID should be passed. This allows for updating of the id_random value. post_obj_up: Post_Base, @@ -195,6 +198,8 @@ def update_post_obj( # ### BEGIN ### API Post Methods ### get_post_rec_list() ### +# Updated 2021-12-13 +@logger_reset def get_post_rec_list( for_obj_type: str, for_obj_id: str, @@ -202,7 +207,7 @@ def get_post_rec_list( enabled: str = 'enabled', # enabled, disabled, all archive_on: datetime.datetime = None, ) -> list|bool: - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) if for_obj_id := redis_lookup_id_random(record_id_random=for_obj_id, table_name=for_obj_type): pass @@ -210,21 +215,21 @@ def get_post_rec_list( data = {} data[f'{for_obj_type}_id'] = for_obj_id # data['for_obj_type'] = for_obj_type - sql_obj_type_id = f'`tbl`.{for_obj_type}_id = :{for_obj_type}_id' + sql_obj_type_id = f'`post`.{for_obj_type}_id = :{for_obj_type}_id' if enabled in ['enabled', 'disabled', 'all']: if enabled == 'enabled': data['enable'] = True - sql_enabled = f'AND `tbl`.enable = :enable' + sql_enabled = f'AND `post`.enable = :enable' elif enabled == 'disabled': data['enable'] = False - sql_enabled = f'AND `tbl`.enable = :enable' + sql_enabled = f'AND `post`.enable = :enable' elif enabled == 'all': sql_enabled = '' if archive_on: data['archive_on'] = archive_on - sql_archive_on = 'AND tbl.archive_on >= :archive_on' + sql_archive_on = 'AND post.archive_on >= :archive_on' else: sql_archive_on = '' @@ -235,21 +240,24 @@ def get_post_rec_list( sql_limit = '' sql = f""" - SELECT `tbl`.id AS 'post_id', `tbl`.id_random AS 'post_id_random' - FROM `post` AS `tbl` + SELECT `post`.id AS 'post_id', `post`.id_random AS 'post_id_random' + FROM `post` AS `post` WHERE {sql_obj_type_id} {sql_enabled} {sql_archive_on} - ORDER BY `tbl`.created_on DESC, `tbl`.updated_on DESC + ORDER BY `post`.created_on DESC, `post`.updated_on DESC {sql_limit}; """ + log.debug(sql) if post_rec_li_result := sql_select(data=data, sql=sql, as_list=True): + log.info('Got a list result') post_rec_li = post_rec_li_result - else: - post_rec_li = [] - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + else: # [] or False + log.info('No results or something went wrong') + post_rec_li = post_rec_li_result + log.debug(post_rec_li_result) return post_rec_li diff --git a/app/methods/user_methods.py b/app/methods/user_methods.py index f1419d8..1329841 100644 --- a/app/methods/user_methods.py +++ b/app/methods/user_methods.py @@ -433,6 +433,7 @@ def load_user_obj( # ### BEGIN ### API User Methods ### get_user_rec_list() ### +# Updated 2021-12-13 def get_user_rec_list( account_id: int|str, hidden: str = 'not_hidden', # hidden, not_hidden, all @@ -480,10 +481,12 @@ def get_user_rec_list( """ log.debug(sql) - if user_rec_li_result := sql_select(data=data, sql=sql): + if user_rec_li_result := sql_select(data=data, sql=sql, as_list=True): + log.info('Got a list result') + user_rec_li = user_rec_li_result + else: # [] or False + log.info('No results or something went wrong') user_rec_li = user_rec_li_result - else: # None or False - user_rec_li = user_rec_li_result # [] log.debug(user_rec_li_result) diff --git a/app/routers/activity_log.py b/app/routers/activity_log.py index d96ef1f..dc2b207 100644 --- a/app/routers/activity_log.py +++ b/app/routers/activity_log.py @@ -154,9 +154,11 @@ async def get_account_obj_activity_log_list( else: activity_log_result_list.append(None) response_data = activity_log_result_list - elif isinstance(activity_log_rec_list_result, list): + elif isinstance(activity_log_rec_list_result, list) or activity_log_rec_list_result is None: # Empty list or None + log.info('No results') return mk_resp(data=False, status_code=404, response=response) # Not Found else: + log.warning('Likely bad request') return mk_resp(data=False, status_code=400, response=response) # Bad Request return mk_resp(data=response_data, response=response) diff --git a/app/routers/api_crud.py b/app/routers/api_crud.py index c65c74c..b57fa78 100644 --- a/app/routers/api_crud.py +++ b/app/routers/api_crud.py @@ -111,8 +111,8 @@ obj_type_li['order_line'] = {'table_name': 'v_order_line', 'base_name': Order_Li obj_type_li['organization'] = {'table_name': 'v_organization', 'base_name': Organization_Base} obj_type_li['page'] = {'table_name': 'page', 'base_name': Page_Base} obj_type_li['person'] = {'table_name': 'v_person', 'base_name': Person_Base} -obj_type_li['post'] = {'table_name': 'v_post_detail', 'base_name': Post_Base} # NOTE check view name: *_detail? -obj_type_li['post_comment'] = {'table_name': 'v_post_comment_detail', 'base_name': Post_Comment_Base} # NOTE check view name: *_detail? +obj_type_li['post'] = {'table_name': 'v_post', 'base_name': Post_Base} # NOTE check view name: *_detail? +obj_type_li['post_comment'] = {'table_name': 'v_post_comment', 'base_name': Post_Comment_Base} # NOTE check view name: *_detail? obj_type_li['product'] = {'table_name': 'v_product', 'base_name': Product_Base} obj_type_li['site'] = {'table_name': 'site', 'base_name': Site_Base} obj_type_li['site_domain'] = {'table_name': 'v_site_domain', 'base_name': Site_Domain_Base} # NOTE check view name: *_detail? diff --git a/app/routers/cont_edu_cert_person.py b/app/routers/cont_edu_cert_person.py index da66058..726bd26 100644 --- a/app/routers/cont_edu_cert_person.py +++ b/app/routers/cont_edu_cert_person.py @@ -399,7 +399,7 @@ async def get_person_obj_cont_edu_cert_person_list( else: cont_edu_cert_person_result_list.append(None) response_data = cont_edu_cert_person_result_list - elif cont_edu_cert_person_rec_list_result is None: + elif isinstance(cont_edu_cert_person_rec_list_result, list) or cont_edu_cert_person_rec_list_result is None: # Empty list or None log.info('No results') return mk_resp(data=None, status_code=404, response=response) # Not Found else: diff --git a/app/routers/event.py b/app/routers/event.py index b402a89..9c6a6bf 100644 --- a/app/routers/event.py +++ b/app/routers/event.py @@ -404,7 +404,7 @@ async def get_account_obj_event_list( else: event_result_list.append(None) response_data = event_result_list - elif event_rec_list_result is None: + elif isinstance(event_rec_list_result, list) or event_rec_list_result is None: # Empty list or None log.info('No results') return mk_resp(data=None, status_code=404, response=response) # Not Found else: @@ -412,6 +412,7 @@ async def get_account_obj_event_list( return mk_resp(data=False, status_code=400, response=response) # Bad Request log.debug(response_data) + return mk_resp(data=response_data, response=response) # ### END ### API Event ### get_account_obj_event_list() ### @@ -454,7 +455,7 @@ async def get_account_obj_event_meeting_list_flat( continue event_result_list.append(event_obj) response_data = event_result_list - elif event_meeting_rec_list_result is None: + elif isinstance(event_meeting_rec_list_result, list) or event_meeting_rec_list_result is None: # Empty list or None log.info('No results') return mk_resp(data=None, status_code=404, response=response) # Not Found else: @@ -462,6 +463,7 @@ async def get_account_obj_event_meeting_list_flat( return mk_resp(data=False, status_code=400, response=response) # Bad Request log.debug(response_data) + return mk_resp(data=response_data, response=response) # ### END ### API Event ### get_account_obj_event_list() ### @@ -532,6 +534,8 @@ async def get_person_event_obj_li( log.warning('Likely bad request') return mk_resp(data=False, status_code=400, response=response) # Bad Request + log.debug(response_data) + return mk_resp(data=response_data, response=response) # ### END ### API Event Methods ### get_person_event_obj_li() ### diff --git a/app/routers/event_location.py b/app/routers/event_location.py index 02e4856..d97f7b1 100644 --- a/app/routers/event_location.py +++ b/app/routers/event_location.py @@ -170,7 +170,7 @@ async def get_event_obj_event_location_list( else: event_location_result_list.append(None) response_data = event_location_result_list - elif event_location_rec_list_result is None: + elif isinstance(event_location_rec_list_result, list) or event_location_rec_list_result is None: # Empty list or None log.info('No results') return mk_resp(data=None, status_code=404, response=response) # Not Found else: diff --git a/app/routers/event_session.py b/app/routers/event_session.py index b1270ce..75696d9 100644 --- a/app/routers/event_session.py +++ b/app/routers/event_session.py @@ -603,7 +603,7 @@ async def get_event_event_session_obj_li( else: event_session_result_list.append(None) response_data = event_session_result_list - elif event_session_rec_list_result is None: + elif isinstance(event_session_rec_list_result, list) or event_session_rec_list_result is None: # Empty list or None log.info('No results') return mk_resp(data=False, status_code=404, response=response) # Not Found else: diff --git a/app/routers/lookup.py b/app/routers/lookup.py index c745906..963607f 100644 --- a/app/routers/lookup.py +++ b/app/routers/lookup.py @@ -18,24 +18,24 @@ from app.models.response_models import Resp_Body_Base, mk_resp router = APIRouter() +# ### BEGIN ### API Lookup ### get_lookup_li() ### @router.get('/{for_lookup_name}/list', response_model=Resp_Body_Base) async def get_lookup_li( for_lookup_name: Optional[str] = Query(None, min_length=2, max_length=50), - account_id: Optional[str] = Query(None, min_length=2, max_length=50), + account_id: Optional[str] = Query(None, min_length=11, max_length=50), for_type: Optional[str] = Query(None, min_length=2, max_length=50), inc_admin_options: bool = False, limit: int = 1000, enabled: str = 'enabled', # enabled, disabled, all response: Response = Response, ): - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) allowed_lookup_tables = ['country', 'country_subdivision', 'education_degree', 'education_level', 'event_session_type', 'file_purpose', 'membership_group_status', 'membership_person_status', 'membership_type_status', 'order_status', 'post_topic', 'product_type', 'time_zone', 'user_status'] if for_lookup_name in allowed_lookup_tables: pass - else: - return mk_resp(data=False, status_code=400, response=response) + else: return mk_resp(data=False, status_code=400, response=response) # Bad Request (not in allowed list) if for_lookup_name == 'post_topic': if lu_post_topic_rec_list_result := get_lu_post_topic_rec_list( @@ -46,48 +46,64 @@ async def get_lookup_li( enabled = enabled, ): response_data = lu_post_topic_rec_list_result + elif isinstance(lu_post_topic_rec_list_result, list) or lu_post_topic_rec_list_result is None: # Empty list or None + log.info('No results') + return mk_resp(data=None, status_code=404, response=response) # Not Found else: + log.warning('Likely bad request') return mk_resp(data=False, status_code=400, response=response) # Bad Request elif for_lookup_name == 'time_zone': table_name = f'v_lu_{for_lookup_name}' - lu_time_zone_result = sql_select(table_name=table_name) - - # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL - log.debug(lu_time_zone_result) - log.debug(type(lu_time_zone_result)) - # lu_time_zone_result = lu_time_zone_result[0:50] - # fake_li = [] - # import secrets - # for time_zone in lu_time_zone_result: - # fake = {} - # # fake['id'] = time_zone['id'] - # # fake['name'] = time_zone['name'] - # fake['xxx'] = secrets.token_urlsafe(8) - # fake['yyy'] = secrets.token_urlsafe(8) - # fake_li.append(fake) - # # time_zone['name'] = 'asdf' - response_data = lu_time_zone_result - # response_data = fake_li + if lu_time_zone_result := sql_select(table_name=table_name): + # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.debug(lu_time_zone_result) + log.debug(type(lu_time_zone_result)) + # lu_time_zone_result = lu_time_zone_result[0:50] + # fake_li = [] + # import secrets + # for time_zone in lu_time_zone_result: + # fake = {} + # # fake['id'] = time_zone['id'] + # # fake['name'] = time_zone['name'] + # fake['xxx'] = secrets.token_urlsafe(8) + # fake['yyy'] = secrets.token_urlsafe(8) + # fake_li.append(fake) + # # time_zone['name'] = 'asdf' + response_data = lu_time_zone_result + # response_data = fake_li + elif isinstance(lu_time_zone_result, list) or lu_time_zone_result is None: # Empty list or None + log.info('No results') + return mk_resp(data=None, status_code=404, response=response) # Not Found + else: + log.warning('Likely bad request') + return mk_resp(data=False, status_code=400, response=response) # Bad Request else: table_name = f'lu_{for_lookup_name}' - lu_list_result = sql_select(table_name=table_name) - response_data = lu_list_result + if lu_list_result := sql_select(table_name=table_name): + response_data = lu_list_result - # fake_li = [] - # import secrets - # for list_item in lu_list_result: - # fake = {} - # # fake['id'] = time_zone['id'] - # # fake['name'] = time_zone['name'] - # fake['xxx'] = secrets.token_urlsafe(8) - # fake['yyy'] = secrets.token_urlsafe(8) - # fake_li.append(fake) - # response_data = fake_li + # fake_li = [] + # import secrets + # for list_item in lu_list_result: + # fake = {} + # # fake['id'] = time_zone['id'] + # # fake['name'] = time_zone['name'] + # fake['xxx'] = secrets.token_urlsafe(8) + # fake['yyy'] = secrets.token_urlsafe(8) + # fake_li.append(fake) + # response_data = fake_li - # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL - log.debug(response_data) - response_data = response_data + # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.debug(response_data) + response_data = response_data + elif isinstance(lu_list_result, list) or lu_list_result is None: # Empty list or None + log.info('No results') + return mk_resp(data=None, status_code=404, response=response) # Not Found + else: + log.warning('Likely bad request') + return mk_resp(data=False, status_code=400, response=response) # Bad Request - # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(response_data) + return mk_resp(data=response_data) +# ### END ### API Lookup ### get_lookup_li() ### diff --git a/app/routers/order.py b/app/routers/order.py index 5757723..c3145a5 100644 --- a/app/routers/order.py +++ b/app/routers/order.py @@ -211,7 +211,7 @@ async def get_order_obj( # ### BEGIN ### API Order ### get_obj_id_order_list() ### -# Updated 2021-11-19 +# Updated 2021-12-13 @router.get('/{obj_type}/{obj_id}/order/list', response_model=Resp_Body_Base) async def get_obj_id_order_list( obj_type: str = Query(..., min_length=4, max_length=25), # Expects account or person @@ -266,7 +266,7 @@ async def get_obj_id_order_list( else: order_result_list.append(None) response_data = order_result_list - elif order_rec_list_result is None: + elif isinstance(order_rec_list_result, list) or order_rec_list_result is None: # Empty list or None log.info('No results') return mk_resp(data=None, status_code=404, response=response) # Not Found else: @@ -277,118 +277,118 @@ async def get_obj_id_order_list( # ### END ### API Order ### get_obj_id_order_list() ### -# ### BEGIN ### API Order ### get_account_obj_order_list() ### -# Updated 2021-11-19 -@router.get('/account/{account_id}/order/list', response_model=Resp_Body_Base) -async def get_account_id_order_list( - account_id: str = Query(..., min_length=11, max_length=22), - limit: int = 50, - enabled: str = 'enabled', - from_datetime: datetime.datetime = None, - to_datetime: datetime.datetime = None, - inc_order_cfg: bool = False, - inc_order_line_list: bool = False, - # inc_order_w_prod_type: str = 'all', # all, membership, fundraising, event, etc - status: str = 'closed', # open, locked, reopened?, closed (complete), canceled, other - x_account_id: str = Header(...), - by_alias: Optional[bool] = True, - exclude_unset: Optional[bool] = True, - response: Response = Response, - ): - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL - log.debug(locals()) +# # ### BEGIN ### API Order ### get_account_obj_order_list() ### +# # Updated 2021-11-19 +# @router.get('/account/{account_id}/order/list', response_model=Resp_Body_Base) +# async def get_account_id_order_list( +# account_id: str = Query(..., min_length=11, max_length=22), +# limit: int = 50, +# enabled: str = 'enabled', +# from_datetime: datetime.datetime = None, +# to_datetime: datetime.datetime = None, +# inc_order_cfg: bool = False, +# inc_order_line_list: bool = False, +# # inc_order_w_prod_type: str = 'all', # all, membership, fundraising, event, etc +# status: str = 'closed', # open, locked, reopened?, closed (complete), canceled, other +# x_account_id: str = Header(...), +# by_alias: Optional[bool] = True, +# exclude_unset: Optional[bool] = True, +# response: Response = Response, +# ): +# log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL +# log.debug(locals()) - if account_id := redis_lookup_id_random(record_id_random=account_id, table_name='account'): pass - else: return mk_resp(data=None, status_code=404, response=response) +# if account_id := redis_lookup_id_random(record_id_random=account_id, table_name='account'): pass +# else: return mk_resp(data=None, status_code=404, response=response) - # Updated 2021-06-28 - if order_rec_list_result := get_order_rec_list( - for_obj_type = 'account', - for_obj_id = account_id, - limit = limit, - enabled = enabled, - from_datetime = from_datetime, - to_datetime = to_datetime, - status = status, - ): - order_result_list = [] - for order_rec in order_rec_list_result: - if load_order_result := load_order_obj( - order_id = order_rec.get('order_id', None), - limit = limit, - enabled = enabled, - by_alias = by_alias, - exclude_unset = exclude_unset, - # model_as_dict = model_as_dict, - inc_order_cfg = inc_order_cfg, - inc_order_line_list = inc_order_line_list, - ): - order_result_list.append(load_order_result) - else: - order_result_list.append(None) - response_data = order_result_list - else: - return mk_resp(data=False, status_code=400, response=response) # Bad Request +# # Updated 2021-06-28 +# if order_rec_list_result := get_order_rec_list( +# for_obj_type = 'account', +# for_obj_id = account_id, +# limit = limit, +# enabled = enabled, +# from_datetime = from_datetime, +# to_datetime = to_datetime, +# status = status, +# ): +# order_result_list = [] +# for order_rec in order_rec_list_result: +# if load_order_result := load_order_obj( +# order_id = order_rec.get('order_id', None), +# limit = limit, +# enabled = enabled, +# by_alias = by_alias, +# exclude_unset = exclude_unset, +# # model_as_dict = model_as_dict, +# inc_order_cfg = inc_order_cfg, +# inc_order_line_list = inc_order_line_list, +# ): +# order_result_list.append(load_order_result) +# else: +# order_result_list.append(None) +# response_data = order_result_list +# else: +# return mk_resp(data=False, status_code=400, response=response) # Bad Request - return mk_resp(data=response_data) -# ### END ### API Order ### get_account_obj_order_list() ### +# return mk_resp(data=response_data) +# # ### END ### API Order ### get_account_obj_order_list() ### -# ### BEGIN ### API Order ### get_person_obj_order_list() ### -# Updated 2021-11-19 -@router.get('/person/{person_id}/order/list', response_model=Resp_Body_Base) -async def get_person_id_order_list( - person_id: str = Query(..., min_length=11, max_length=22), - limit: int = 50, - enabled: str = 'enabled', - from_datetime: datetime.datetime = None, - to_datetime: datetime.datetime = None, - inc_order_cfg: bool = False, - inc_order_line_list: bool = False, - # inc_order_w_prod_type: str = 'all', # all, membership, fundraising, event, etc - status: str = 'closed', # open, locked, reopened?, closed (complete), canceled, other - x_account_id: str = Header(...), - by_alias: Optional[bool] = True, - exclude_unset: Optional[bool] = True, - response: Response = Response, - ): - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL - log.debug(locals()) +# # ### BEGIN ### API Order ### get_person_obj_order_list() ### +# # Updated 2021-11-19 +# @router.get('/person/{person_id}/order/list', response_model=Resp_Body_Base) +# async def get_person_id_order_list( +# person_id: str = Query(..., min_length=11, max_length=22), +# limit: int = 50, +# enabled: str = 'enabled', +# from_datetime: datetime.datetime = None, +# to_datetime: datetime.datetime = None, +# inc_order_cfg: bool = False, +# inc_order_line_list: bool = False, +# # inc_order_w_prod_type: str = 'all', # all, membership, fundraising, event, etc +# status: str = 'closed', # open, locked, reopened?, closed (complete), canceled, other +# x_account_id: str = Header(...), +# by_alias: Optional[bool] = True, +# exclude_unset: Optional[bool] = True, +# response: Response = Response, +# ): +# log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL +# log.debug(locals()) - if person_id := redis_lookup_id_random(record_id_random=person_id, table_name='person'): pass - else: return mk_resp(data=None, status_code=404, response=response) +# if person_id := redis_lookup_id_random(record_id_random=person_id, table_name='person'): pass +# else: return mk_resp(data=None, status_code=404, response=response) - # Updated 2021-06-28 - if order_rec_list_result := get_order_rec_list( - for_obj_type = 'person', - for_obj_id = person_id, - limit = limit, - enabled = enabled, - from_datetime = from_datetime, - to_datetime = to_datetime, - status = status, - ): - order_result_list = [] - for order_rec in order_rec_list_result: - if load_order_result := load_order_obj( - order_id = order_rec.get('order_id', None), - limit = limit, - enabled = enabled, - by_alias = by_alias, - exclude_unset = exclude_unset, - # model_as_dict = model_as_dict, - inc_order_cfg = inc_order_cfg, - inc_order_line_list = inc_order_line_list, - ): - order_result_list.append(load_order_result) - else: - order_result_list.append(None) - response_data = order_result_list - else: - return mk_resp(data=False, status_code=400, response=response) # Bad Request +# # Updated 2021-06-28 +# if order_rec_list_result := get_order_rec_list( +# for_obj_type = 'person', +# for_obj_id = person_id, +# limit = limit, +# enabled = enabled, +# from_datetime = from_datetime, +# to_datetime = to_datetime, +# status = status, +# ): +# order_result_list = [] +# for order_rec in order_rec_list_result: +# if load_order_result := load_order_obj( +# order_id = order_rec.get('order_id', None), +# limit = limit, +# enabled = enabled, +# by_alias = by_alias, +# exclude_unset = exclude_unset, +# # model_as_dict = model_as_dict, +# inc_order_cfg = inc_order_cfg, +# inc_order_line_list = inc_order_line_list, +# ): +# order_result_list.append(load_order_result) +# else: +# order_result_list.append(None) +# response_data = order_result_list +# else: +# return mk_resp(data=False, status_code=400, response=response) # Bad Request - return mk_resp(data=response_data) -# ### END ### API Order ### get_person_obj_order_list() ### +# return mk_resp(data=response_data) +# # ### END ### API Order ### get_person_obj_order_list() ### # ### BEGIN ### API Order ### get_person_id_order_cart() ### diff --git a/app/routers/post.py b/app/routers/post.py index f3a4153..b0ace4d 100644 --- a/app/routers/post.py +++ b/app/routers/post.py @@ -95,7 +95,7 @@ async def get_post_obj_li( # ### BEGIN ### API Post ### get_account_obj_post_list() ### -# Working well as of 2021-06-28. Using as a template for other routes. +# Updated 2021-12-13 @router.get('/account/{account_id}/post/list', response_model=Resp_Body_Base) async def get_account_obj_post_list( account_id: str = Query(..., min_length=1, max_length=22), @@ -122,7 +122,7 @@ async def get_account_obj_post_list( response_data = None - # Updated 2021-06-28 + # Updated 2021-12-13 if post_rec_list_result := get_post_rec_list( for_obj_type = 'account', for_obj_id = account_id, @@ -133,14 +133,11 @@ async def get_account_obj_post_list( post_result_list = [] for post_rec in post_rec_list_result: if load_post_result := load_post_obj( - post_id = post_rec.get('post_id', None), + post_id = post_rec.get('post_id'), limit = limit, by_alias = by_alias, exclude_unset = exclude_unset, - # model_as_dict = model_as_dict, enabled = enabled, - # inc_address = inc_address, - # inc_contact = inc_contact, inc_person = inc_person, inc_post_comment_list = inc_post_comment_list, inc_user = inc_user, @@ -149,7 +146,11 @@ async def get_account_obj_post_list( else: post_result_list.append(None) response_data = post_result_list + elif isinstance(post_rec_list_result, list) or post_rec_list_result is None: # Empty list or None + log.info('No results') + return mk_resp(data=False, status_code=404, response=response) # Not Found else: + log.warning('Likely bad request') return mk_resp(data=False, status_code=400, response=response) # Bad Request return mk_resp(data=response_data) diff --git a/app/routers/user.py b/app/routers/user.py index eb45bff..f651947 100644 --- a/app/routers/user.py +++ b/app/routers/user.py @@ -520,7 +520,7 @@ async def get_account_user_obj_li( else: user_result_list.append(None) response_data = user_result_list - elif user_rec_list_result is None: + elif isinstance(user_rec_list_result, list) or user_rec_list_result is None: # Empty list or None log.info('No results') return mk_resp(data=False, status_code=404, response=response) # Not Found else: