General clean up of everything.

This commit is contained in:
Scott Idem
2021-05-28 03:23:52 -04:00
parent 09c7b48223
commit 2167c7e897
31 changed files with 129 additions and 111 deletions

View File

@@ -4,8 +4,8 @@ import datetime
from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from ..lib_general import *
from ..db_sql import redis_lookup_id_random, sql_select
from ..lib_general import log, logging
from ..models.membership_models import Membership_Cfg_Base

View File

@@ -4,8 +4,8 @@ import datetime
from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from ..lib_general import *
from ..db_sql import redis_lookup_id_random, sql_insert, sql_select
from ..lib_general import log, logging
from ..models.address_models import Address_Base

View File

@@ -4,8 +4,8 @@ import datetime
from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from ..lib_general import *
from ..db_sql import redis_lookup_id_random, sql_insert, sql_select, sql_update
from ..lib_general import log, logging
from ..methods.address_methods import create_address_obj
@@ -67,10 +67,12 @@ def load_contact_obj(contact_id:int|str, inc_address:bool=False) -> Contact_Base
log.debug(contact_rec)
if inc_address:
if address_rec := sql_select(table_name='v_address', field_name='address_id', field_value=contact_rec.get('address_id', None)):
contact_rec['address'] = address_rec
#log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(address_rec)
address_id = contact_rec.get('address_id', None)
if address_obj_result := load_address_obj(address_id=address_id):
address_obj = address_obj_result
contact_rec['address'] = address_obj
log.debug(contact_rec)
#else: contact_rec['address'] = None
else:
return False

View File

@@ -4,8 +4,8 @@ import datetime
from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from ..lib_general import *
from ..db_sql import redis_lookup_id_random, sql_insert, sql_select, sql_update
from ..lib_general import log, logging
from ..methods.person_methods import load_person_obj
from ..methods.user_methods import load_user_obj

View File

@@ -4,15 +4,18 @@ import datetime
from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from ..lib_general import *
from ..db_sql import redis_lookup_id_random, sql_insert, sql_select
from ..lib_general import log, logging
from ..methods.address_methods import load_address_obj
from ..methods.contact_methods import create_contact_obj, load_contact_obj
from ..models.organization_models import Organization_Base
# ### BEGIN ### API Organization Methods ### load_organization_obj() ###
def load_organization_obj(organization_id:int|str) -> Organization_Base|bool:
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
def load_organization_obj(organization_id:int|str, inc_contact:bool=False, inc_address:bool=False) -> Organization_Base|bool:
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
if organization_id := redis_lookup_id_random(record_id_random=organization_id, table_name='organization'): pass
@@ -21,6 +24,22 @@ def load_organization_obj(organization_id:int|str) -> Organization_Base|bool:
if organization_rec := sql_select(table_name='v_organization', record_id=organization_id):
#log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(organization_rec)
if inc_contact:
contact_id = organization_rec.get('contact_id', None)
if contact_obj_result := load_contact_obj(contact_id=contact_id):
contact_obj = contact_obj_result
organization_rec['contact'] = contact_obj
log.debug(organization_rec)
#else: organization_rec['contact'] = None
if inc_address:
address_id = contact_obj.address_id
if address_obj_result := load_address_obj(address_id=address_id):
address_obj = address_obj_result
organization_rec['contact'].address = address_obj
log.debug(organization_rec)
#else: organization_rec['contact'].address = None
else:
return False

View File

@@ -4,8 +4,8 @@ import datetime
from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from ..lib_general import *
from ..db_sql import redis_lookup_id_random, sql_insert, sql_select, sql_update
from ..lib_general import log, logging
from ..methods.address_methods import load_address_obj
from ..methods.contact_methods import create_contact_obj, load_contact_obj

View File

@@ -4,8 +4,8 @@ import datetime
from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, PrivateAttr, ValidationError, validator
from ..lib_general import *
from ..db_sql import redis_lookup_id_random, sql_insert, sql_select, sql_update
from ..lib_general import log, logging
from ..methods.contact_methods import load_contact_obj
from ..methods.organization_methods import load_organization_obj

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
#from .account_models import Account_Base

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
#from .account_models import Account_Base

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
#from .event_presentation_models import Event_Presentation_Base

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
from .event_models import Event_Base

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
from .address_models import Address_Base

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
#from .account_models import Account_Base

View File

@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
# from .account_models import Account_Base

View File

@@ -5,13 +5,13 @@ from typing import Dict, List, Optional, Set, Union
from pydantic import BaseModel, EmailStr, Field, Json, PrivateAttr, ValidationError, validator
from ..db_sql import redis_lookup_id_random
from ..lib_general import *
from ..lib_general import log, logging
from .common_field_schema import base_fields, default_num_bytes
#from .account_models import Account_Base
from .contact_models import Contact_Base
#from .organization_models import Organization_Base
#from .person_models import Person_Base
from .organization_models import Organization_Base
#from .person_models import Person_Base # Causes circular import
from .user_role_models import User_Role_Base
@@ -176,11 +176,11 @@ class User_Out_Base(BaseModel):
logged_in_on: Optional[datetime.datetime]
last_activity_on: Optional[datetime.datetime]
#account: Optional[Account_Base]# = Account_Base()
#contact: Optional[Contact_Base]# = Contact_Base()
#organization: Optional[Organization_Base]# = Organization_Base()
#person: Optional[Person_Base]# = Person_Base()
role_list: Optional[list] = []# = User_Role_Base()
#account: Optional[Account_Base]
contact: Optional[Contact_Base]
organization: Optional[Organization_Base]
#person: Optional[Person_Base]# Causes circular import
role_list: Optional[list] = []
notes: Optional[str]
created_on: Optional[datetime.datetime]

View File

@@ -4,8 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *
@@ -45,8 +45,8 @@ async def post_account_obj(
@router.patch('/{obj_id}', response_model=Resp_Body_Base)
async def patch_account_obj(
obj: Account_Base,
obj_id: str = Query(..., min_length=1, max_length=22),
obj: Account_Base = None,
x_account_id: Optional[str] = Header(..., ),
return_obj: Optional[bool] = True,
by_alias: Optional[bool] = True,
@@ -136,7 +136,7 @@ async def get_account_cfg_obj(
by_alias: Optional[bool] = True,
exclude_unset: Optional[bool] = True,
):
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
if sys_module:
@@ -152,6 +152,6 @@ async def get_account_cfg_obj(
by_alias=True,
exclude_unset=True,
)
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
#log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(result)
return result

View File

@@ -4,7 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *
@@ -45,8 +46,8 @@ async def post_address_obj(
@router.patch('/{obj_id}', response_model=Resp_Body_Base)
async def patch_address_obj(
obj: Address_Base,
obj_id: str = Query(..., min_length=1, max_length=22),
obj: Address_Base = None,
x_account_id: Optional[str] = Header(..., ),
return_obj: Optional[bool] = True,
by_alias: Optional[bool] = True,

View File

@@ -354,8 +354,8 @@ async def delete_obj(
def post_obj_template(
obj_type:str=None,
data:dict=None,
obj_type:str,
data:dict,
return_obj:bool=True,
by_alias:bool=True,
include: Optional[list] = [],
@@ -393,9 +393,9 @@ def post_obj_template(
def patch_obj_template(
obj_type:str=None,
data:dict=None,
obj_id:str=None,
obj_type:str,
data:dict,
obj_id:str,
return_obj:bool=True,
by_alias:bool=True,
include: Optional[list] = [],
@@ -478,8 +478,8 @@ def get_obj_li_template(
def get_obj_template(
obj_id: Union[int,str],
obj_type: str = Query(None, max_length=50),
obj_id: Optional[Union[int,str]] = None,
by_alias: Optional[bool] = True,
include: Optional[list] = [],
exclude: Optional[list] = [],

View File

@@ -4,7 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *
@@ -42,8 +43,8 @@ async def post_contact_obj(
@router.patch('/{obj_id}', response_model=Resp_Body_Base)
async def patch_contact_obj(
obj: Contact_Base,
obj_id: str = Query(..., min_length=1, max_length=22),
obj: Contact_Base = None,
x_account_id: Optional[str] = Header(..., ),
return_obj: Optional[bool] = True,
by_alias: Optional[bool] = True,
@@ -69,12 +70,12 @@ async def patch_contact_obj(
@router.get('/list', response_model=Resp_Body_Base)
async def get_contact_obj_li(
for_obj_type: Optional[str] = Query(None, min_length=2, max_length=50),
for_obj_id: Optional[str] = Query(None, min_length=1, max_length=22),
group: Optional[str] = Query(None, min_length=2, max_length=50),
for_obj_type: str = Query(None, min_length=2, max_length=50),
for_obj_id: str = Query(None, min_length=1, max_length=22),
group: str = Query(None, min_length=2, max_length=50),
x_account_id: str = Header(...),
by_alias: Optional[bool] = True,
exclude_unset: Optional[bool] = True,
by_alias: bool = True,
exclude_unset: bool = True,
):
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())

View File

@@ -4,8 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *

View File

@@ -4,8 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *

View File

@@ -4,8 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *

View File

@@ -4,13 +4,15 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *
from .api_crud import delete_obj_template, get_obj_template, get_obj_li_template, patch_obj_template, post_obj_template
from ..methods.organization_methods import load_organization_obj
from ..models.organization_models import Organization_Base
from ..models.response_models import *
@@ -43,8 +45,8 @@ async def post_organization_obj(
@router.patch('/{obj_id}', response_model=Resp_Body_Base)
async def patch_organization_obj(
obj: Organization_Base,
obj_id: str = Query(..., min_length=1, max_length=22),
obj: Organization_Base = None,
x_account_id: Optional[str] = Header(..., ),
return_obj: Optional[bool] = True,
by_alias: Optional[bool] = True,
@@ -90,24 +92,25 @@ async def get_organization_obj_li(
return result
@router.get('/{obj_id}', response_model=Resp_Body_Base)
@router.get('/{organization_id}', response_model=Resp_Body_Base)
async def get_organization_obj(
obj_id: str = Query(..., min_length=1, max_length=22),
organization_id: str = Query(..., min_length=1, max_length=22),
inc_address: bool = False,
inc_contact: bool = False,
x_account_id: str = Header(...),
by_alias: Optional[bool] = True,
exclude_unset: Optional[bool] = True,
by_alias: bool = True,
exclude_unset: bool = True,
):
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
obj_type = 'organization'
result = get_obj_template(
obj_type=obj_type,
obj_id=obj_id,
by_alias=True,
exclude_unset=True,
)
return result
organization_obj = load_organization_obj(
organization_id=organization_id,
inc_contact=inc_contact,
inc_address=inc_address,
).dict(by_alias=by_alias, exclude_unset=exclude_unset)
data = organization_obj
return mk_resp(data=organization_obj)
@router.delete('/{obj_id}', response_model=Resp_Body_Base)

View File

@@ -4,8 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *
@@ -45,8 +45,8 @@ async def post_person_obj(
@router.patch('/{obj_id}', response_model=Resp_Body_Base)
async def patch_person_obj(
obj: Person_Base,
obj_id: str = Query(..., min_length=1, max_length=22),
obj: Person_Base = None,
x_account_id: Optional[str] = Header(..., ),
return_obj: Optional[bool] = True,
by_alias: Optional[bool] = True,
@@ -92,12 +92,12 @@ async def get_person_obj_li(
return result
@router.get('/{obj_id}', response_model=Resp_Body_Base)
@router.get('/{person_id}', response_model=Resp_Body_Base)
async def get_person_obj(
obj_id: str = Query(..., min_length=1, max_length=22),
person_id: str = Query(..., min_length=1, max_length=22),
x_account_id: str = Header(...),
inc_contact: bool = False,
inc_address: bool = False,
inc_contact: bool = False,
inc_organization: bool = False,
by_alias: Optional[bool] = True,
exclude_unset: Optional[bool] = True,
@@ -105,23 +105,14 @@ async def get_person_obj(
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
user_obj = load_person_obj(
person_id=obj_id,
person_obj = load_person_obj(
person_id=person_id,
inc_contact=inc_contact,
inc_address=inc_address,
inc_organization=inc_organization,
).dict(by_alias=by_alias, exclude_unset=exclude_unset)
data = user_obj
return mk_resp(data=user_obj)
# obj_type = 'person'
# result = get_obj_template(
# obj_type=obj_type,
# obj_id=obj_id,
# by_alias=True,
# exclude_unset=True,
# )
# return result
data = person_obj
return mk_resp(data=person_obj)
@router.delete('/{obj_id}', response_model=Resp_Body_Base)

View File

@@ -4,7 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *
@@ -44,13 +45,13 @@ async def post_site_domain_obj(
@router.patch('/{obj_id}', response_model=Resp_Body_Base)
async def patch_site_domain_obj(
obj: Site_Domain_Base,
obj_id: str = Query(..., min_length=1, max_length=22),
obj: Site_Domain_Base = None,
x_account_id: Optional[str] = Header(..., ),
return_obj: Optional[bool] = True,
by_alias: Optional[bool] = True,
exclude_unset: Optional[bool] = True,
exclude_none: Optional[bool] = True,
x_account_id: str = Header(..., ),
return_obj: bool = True,
by_alias: bool = True,
exclude_unset: bool = True,
exclude_none: bool = True,
):
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
@@ -76,13 +77,13 @@ async def lookup_site_domain_obj(
access_key: Optional[str] = None,
referrer: Optional[str] = None,
x_account_id: str = Header(...),
by_alias: Optional[bool] = True,
include: Optional[list] = [],
exclude: Optional[list] = [],
exclude_unset: Optional[bool] = True,
exclude_none: Optional[bool] = True,
by_alias: bool = True,
#include: Optional[list] = [],
#exclude: Optional[list] = [],
exclude_unset: bool = True,
exclude_none: bool = True,
):
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals())
data = {}

View File

@@ -4,8 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging, secure_hash_string, verify_secure_hash_string
#from ..log import *
from app.config import settings
from app.db_sql import *
@@ -127,8 +127,8 @@ async def change_user_obj_password(
@router.patch('/{obj_id}', response_model=Resp_Body_Base)
async def patch_user_obj(
obj: User_Base,
obj_id: str = Query(..., min_length=1, max_length=22),
obj: User_Base = None,
x_account_id: Optional[str] = Header(..., ),
return_obj: Optional[bool] = True,
by_alias: Optional[bool] = True,

View File

@@ -4,8 +4,8 @@ from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, stat
from pydantic import BaseModel, EmailStr, Field
from typing import Dict, List, Optional, Set, Union
from ..lib_general import *
from ..log import *
from ..lib_general import log, logging
#from ..log import *
from app.config import settings
from app.db_sql import *