diff --git a/app/methods/order_methods.py b/app/methods/order_methods.py index 68096d6..03ffa76 100644 --- a/app/methods/order_methods.py +++ b/app/methods/order_methods.py @@ -296,7 +296,7 @@ def get_order_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'`order`.{for_obj_type}_id = :{for_obj_type}_id' # allowed_status_li = ['started', 'in progress', 'complete', 'all'] # OLD list # allowed_status_li = ['open', 'locked', 'reopened', 'closed', 'canceled', 'other'] # NEW list @@ -305,26 +305,39 @@ def get_order_rec_list( if status in allowed_status_li: if status == 'closed' or status == 'complete': data['status'] = ['closed', 'complete'] - sql_status = f'AND `tbl`.status IN :status' + sql_status = f'AND `order`.status IN :status' elif status == 'locked' or status == 'in progress': data['status'] = ['locked', 'in progress'] - sql_status = f'AND `tbl`.status IN :status' + sql_status = f'AND `order`.status IN :status' else: data['status'] = status - sql_status = f'AND `tbl`.status = :status' + sql_status = f'AND `order`.status = :status' elif status == 'all': sql_status = '' else: log.warning('The status value passed is not allowed. Returning None') return False + if from_datetime and to_datetime: + data['from_datetime'] = from_datetime + data['to_datetime'] = to_datetime + sql_from_to_datetime = f'AND `order`.created_on >= :from_datetime AND `order`.created_on <= :to_datetime' + elif from_datetime: + data['from_datetime'] = from_datetime + sql_from_to_datetime = f'AND `order`.created_on >= :from_datetime' + elif to_datetime: + data['to_datetime'] = to_datetime + sql_from_to_datetime = f'AND `order`.created_on <= :to_datetime' + else: + sql_from_to_datetime = '' + # if enabled in ['enabled', 'disabled', 'all']: # if enabled == 'enabled': # data['enable'] = True - # sql_enabled = f'AND `tbl`.enable = :enable' + # sql_enabled = f'AND `order`.enable = :enable' # elif enabled == 'disabled': # data['enable'] = False - # sql_enabled = f'AND `tbl`.enable = :enable' + # sql_enabled = f'AND `order`.enable = :enable' # elif enabled == 'all': # sql_enabled = '' sql_enabled = '' @@ -336,13 +349,14 @@ def get_order_rec_list( sql_limit = '' sql = f""" - SELECT `tbl`.id AS 'order_id', `tbl`.id_random AS 'order_id_random' - FROM `order` AS `tbl` + SELECT `order`.id AS 'order_id', `order`.id_random AS 'order_id_random' + FROM `order` AS `order` WHERE {sql_obj_type_id} {sql_status} + {sql_from_to_datetime} {sql_enabled} - ORDER BY `tbl`.created_on DESC, `tbl`.updated_on DESC + ORDER BY `order`.created_on DESC, `order`.updated_on DESC {sql_limit}; """ diff --git a/app/methods/person_methods.py b/app/methods/person_methods.py index 3ac2b86..630450f 100644 --- a/app/methods/person_methods.py +++ b/app/methods/person_methods.py @@ -66,12 +66,12 @@ def load_person_obj( if person_rec := sql_select(table_name='v_person', record_id=person_id): pass else: return False - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(person_rec) try: person_obj = Person_Base(**person_rec) - log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + # log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(person_obj) except ValidationError as e: log.error(e.json()) diff --git a/app/routers/order.py b/app/routers/order.py index 97cd716..5a2b982 100644 --- a/app/routers/order.py +++ b/app/routers/order.py @@ -221,6 +221,7 @@ async def get_obj_id_order_list( inc_order_cfg: bool = False, inc_order_line_list: bool = False, # inc_order_w_prod_type: str = 'all', # all, membership, fundraising, event, etc + inc_person: bool = False, status: str = 'closed', # open, locked, reopened?, closed (complete), canceled, other enabled: str = 'enabled', limit: int = 50, @@ -239,6 +240,10 @@ async def get_obj_id_order_list( log.warning('Likely bad request') return mk_resp(data=False, status_code=400, response=response) # Bad Request + + log.debug(from_datetime) + log.debug(to_datetime) + # Updated 2021-11-19 if order_rec_list_result := get_order_rec_list( for_obj_type = obj_type, @@ -255,6 +260,7 @@ async def get_obj_id_order_list( order_id = order_rec.get('order_id', None), inc_order_cfg = inc_order_cfg, inc_order_line_list = inc_order_line_list, + inc_person = inc_person, enabled = enabled, limit = limit, by_alias = by_alias,