diff --git a/app/models/membership_person_models.py b/app/models/membership_person_models.py index d735c19..18c50ce 100644 --- a/app/models/membership_person_models.py +++ b/app/models/membership_person_models.py @@ -123,7 +123,7 @@ class Membership_Person_Base(BaseModel): end_buffer_on: Optional[Union[datetime.datetime,None]] last_end_on: Optional[Union[datetime.datetime,None]] - flag: Optional[bool] + flag: Optional[Union[bool,None]] flag_message: Optional[str] notes: Optional[str] diff --git a/app/routers/membership_person.py b/app/routers/membership_person.py index 0e6d968..4d6ea98 100644 --- a/app/routers/membership_person.py +++ b/app/routers/membership_person.py @@ -25,7 +25,7 @@ router = APIRouter() @router.post('/membership/person', response_model=Resp_Body_Base) async def post_membership_person_obj( membership_person_obj: Membership_Person_Base, - person_id: str = Query(None, min_length=11, max_length=22), + person_id: str = Query(..., min_length=11, max_length=22), create_sub_obj: bool = False, fail_any: bool = True, # Fail if any thing goes wrong for sub objects @@ -41,13 +41,14 @@ async def post_membership_person_obj( log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.debug(locals()) - person_id = membership_person_obj.person_id - person_id_random = membership_person_obj.person_id_random - log.debug(f'Person ID: {person_id}, Person ID Random: {person_id_random}') + # if not person_id: + # person_id = membership_person_obj.person_id + # person_id_random = membership_person_obj.person_id_random + # log.debug(f'Person ID: {person_id}, Person ID Random: {person_id_random}') # ### SECTION ### Secondary data validation if person_id := redis_lookup_id_random(record_id_random=person_id, table_name='person'): pass - elif person_id is None: pass + # elif person_id is None: pass else: return mk_resp(data=None, status_code=404, response=commons.response, status_message='The person ID was invalid or not found.') # ### SECTION ### Process data diff --git a/app/routers/membership_type.py b/app/routers/membership_type.py index 0a6aacb..513021f 100644 --- a/app/routers/membership_type.py +++ b/app/routers/membership_type.py @@ -3,7 +3,7 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, Resp from pydantic import BaseModel, EmailStr, Field from typing import Dict, List, Optional, Set, Union -from app.lib_general import log, logging +from app.lib_general import log, logging, common_route_params, Common_Route_Params from app.config import settings from app.db_sql import sql_insert, sql_update, sql_insert_or_update, sql_select, sql_delete, redis_lookup_id_random @@ -94,67 +94,68 @@ async def get_membership_type_obj_li( # ### BEGIN ### API Membership Type Methods ### get_account_membership_type_obj_li() ### -# Updated 2021-07-01 +# Updated 2022-01-13 @router.get('/account/{account_id}/membership/type/list', response_model=Resp_Body_Base) async def get_account_membership_type_obj_li( - account_id: str = Query(..., min_length=1, max_length=22), + account_id: str = Query(..., min_length=11, max_length=22), # product_id: Optional[str] = Query(None, min_length=1, max_length=22), - type_level: Optional[int] = None, - enabled: str = 'enabled', - limit: int = 1000, - inc_address: bool = False, - inc_contact: bool = False, + # type_level: Optional[int] = None, + + # inc_address: bool = False, + # inc_contact: bool = False, inc_membership_cfg: bool = False, inc_membership_person_list: bool = False, - inc_organization: bool = False, - inc_person: bool = False, + # inc_organization: bool = False, + # inc_person: bool = False, inc_product_list: bool = False, - inc_user: bool = False, - x_account_id: str = Header(...), - by_alias: Optional[bool] = True, - exclude_unset: Optional[bool] = True, - response: Response = Response, + # inc_user: bool = False, + + commons: Common_Route_Params = Depends(common_route_params), ): - log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL + log.setLevel(logging.DEBUG) # 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) + else: return mk_resp(data=None, status_code=404, response=commons.response, status_message='The account ID was invalid or not found.') - # Updated 2021-07-01 + # Updated 2022-01-13 if membership_type_rec_list_result := get_membership_type_rec_list( account_id = account_id, # product_id = product_id, - type_level = type_level, - limit = limit, - enabled = enabled, + # type_level = type_level, + limit = commons.limit, + enabled = commons.enabled, ): membership_type_result_list = [] for membership_type_rec in membership_type_rec_list_result: if load_membership_type_result := load_membership_type_obj( membership_type_id = membership_type_rec.get('membership_type_id', None), - enabled = enabled, - limit = limit, - inc_address = inc_address, - inc_contact = inc_contact, + enabled = commons.enabled, + limit = commons.limit, + # inc_address = inc_address, + # inc_contact = inc_contact, inc_membership_cfg = inc_membership_cfg, inc_membership_person_list = inc_membership_person_list, - inc_organization = inc_organization, - inc_person = inc_person, + # inc_organization = inc_organization, + # inc_person = inc_person, inc_product_list = inc_product_list, - inc_user = inc_user, - by_alias = by_alias, - exclude_unset = exclude_unset, + # inc_user = inc_user, + # by_alias = by_alias, + # exclude_unset = exclude_unset, # model_as_dict = model_as_dict, ): membership_type_result_list.append(load_membership_type_result) else: membership_type_result_list.append(None) response_data = membership_type_result_list + elif isinstance(membership_person_rec_result, list) or membership_person_rec_result is None: # Empty list or None + log.info('No results') + return mk_resp(data=False, status_code=404, response=commons.response) # Not Found else: - return mk_resp(data=False, status_code=400, response=response) # Bad Request + log.warning('Likely bad request') + return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request - return mk_resp(data=response_data) + return mk_resp(data=response_data, response=commons.response) # ### BEGIN ### API Membership Type Methods ### get_account_membership_type_obj_li() ### diff --git a/app/routers/person.py b/app/routers/person.py index f2967a1..eb57691 100644 --- a/app/routers/person.py +++ b/app/routers/person.py @@ -308,9 +308,9 @@ async def patch_person_obj( # if return_obj: # person_obj = load_person_obj(person_id=person_obj_in_result) # person_dict = person_obj.dict(by_alias=commons.by_alias, exclude_unset=commons.exclude_unset) -# return mk_resp(data=person_dict) +# return mk_resp(data=person_dict, response=commons.response) # else: -# return mk_resp(data=person_obj_in_result) +# return mk_resp(data=person_obj_in_result, response=commons.response) # else: # return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request # # ### END ### API Person ### post_person_json() ### @@ -346,9 +346,9 @@ async def patch_person_obj( # if return_obj: # person_obj = load_person_obj(person_id=person_id) # person_dict = person_obj.dict(by_alias=commons.by_alias, exclude_unset=commons.exclude_unset) -# return mk_resp(data=person_dict) +# return mk_resp(data=person_dict, response=commons.response) # else: -# return mk_resp(data=person_obj_up_result) +# return mk_resp(data=person_obj_up_result, response=commons.response) # else: # return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request # # ### END ### API Person ### patch_person_json() ### @@ -414,7 +414,7 @@ async def person_obj_external_id( else: return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request - return mk_resp(data=response_data) + return mk_resp(data=response_data, response=commons.response) # ### END ### API Person ### person_obj_external_id() ### @@ -472,7 +472,7 @@ async def lookup_email( log.warning('Likely bad request') return mk_resp(data=False, status_code=400, response=commons.response) # Bad Request - return mk_resp(data=response_data) + return mk_resp(data=response_data, response=commons.response) # ### END ### API Person ### lookup_email() ###