diff --git a/app/main.py b/app/main.py index f307543..7143b6d 100644 --- a/app/main.py +++ b/app/main.py @@ -16,7 +16,7 @@ import logging import app.log # Import the routers here first: -from app.routers import ae_obj, aether_cfg, api_crud, api_crud_v2, api_crud_v3, api, importing, sql, account, activity_log, address, archive, archive_content, contact, data_store, event, event_abstract, event_badge, event_badge_importing, event_badge_template, event_device, event_exhibit, event_exhibit_tracking, event_file, event_importing, event_location, event_person, event_person_detail, event_person_tracking, event_presentation, event_presenter, event_registration, event_session, flask_cfg, fundraising, grant, hosted_file, log_client_viewing, lookup, membership_cfg, membership_group, membership_person_group, membership_person, membership_person_profile, membership_type, membership_person_type, order, order_v3, order_line, order_cart, organization, page, person, person_user, post, post_comment, product, qr, site, site_domain, user, util_email, websockets_redis, e_confex, e_cvent, c_idaa, e_impexium, e_stripe +from app.routers import ae_obj, aether_cfg, api_crud, api_crud_v2, api_crud_v3, api, importing, sql, account, activity_log, address, archive, archive_content, contact, data_store, event, event_abstract, event_badge, event_badge_importing, event_badge_template, event_device, event_exhibit, event_exhibit_tracking, event_file, event_importing, event_location, event_person, event_person_detail, event_person_tracking, event_presentation, event_presenter, event_registration, event_session, flask_cfg, fundraising, grant, hosted_file, log_client_viewing, lookup, membership_cfg, membership_group, membership_person_group, membership_person, membership_person_profile, membership_type, membership_person_type, order, order_v3, order_line, order_cart, organization, page, person, person_user, post, post_comment, product, qr, site, site_domain, user, util_email, websockets_redis, e_confex, e_cvent, e_impexium, e_stripe # from app.routers import agent_bridge # cont_edu_cert, cont_edu_cert_person, @@ -164,31 +164,31 @@ app.include_router( # prefix='/account', tags=['Account'], ) -app.include_router( - activity_log.router, - prefix='/activity_log', - tags=['Activity Log'], -) -app.include_router( - address.router, - prefix='/address', - tags=['Address'], -) -app.include_router( - archive.router, - # prefix='/archive', - tags=['Archive'], -) -app.include_router( - archive_content.router, - prefix='/archive/content', - tags=['Archive Content'], -) -app.include_router( - contact.router, - prefix='/contact', - tags=['Contact'], -) +# app.include_router( +# activity_log.router, +# prefix='/activity_log', +# tags=['Activity Log'], +# ) +# app.include_router( +# address.router, +# prefix='/address', +# tags=['Address'], +# ) +# app.include_router( +# archive.router, +# # prefix='/archive', +# tags=['Archive'], +# ) +# app.include_router( +# archive_content.router, +# prefix='/archive/content', +# tags=['Archive Content'], +# ) +# app.include_router( +# contact.router, +# prefix='/contact', +# tags=['Contact'], +# ) # app.include_router( # cont_edu_cert.router, # tags=['Cont Edu Cert'], @@ -388,16 +388,16 @@ app.include_router( prefix='/person_user', tags=['Person User'], ) -app.include_router( - post.router, - # prefix='/post', - tags=['Post'], -) -app.include_router( - post_comment.router, - prefix='/post/comment', - tags=['Post Comment'], -) +# app.include_router( +# post.router, +# # prefix='/post', +# tags=['Post'], +# ) +# app.include_router( +# post_comment.router, +# prefix='/post/comment', +# tags=['Post Comment'], +# ) # app.include_router( # product.router, # # prefix='/product', @@ -457,11 +457,11 @@ app.include_router( tags=['External Service: Stripe'], ) -app.include_router( - c_idaa.router, - prefix='/c/idaa', - tags=['Client: IDAA'], -) +# app.include_router( +# c_idaa.router, +# prefix='/c/idaa', +# tags=['Client: IDAA'], +# ) # BEGIN: CORS diff --git a/app/routers/c_idaa.py b/app/routers/c_idaa.py deleted file mode 100644 index 3040a42..0000000 --- a/app/routers/c_idaa.py +++ /dev/null @@ -1,188 +0,0 @@ -import datetime, json, pytz, random, secrets, string, time -from fastapi import APIRouter, Body, Depends, Header, HTTPException, Path, Query, Response, status -from pydantic import BaseModel, EmailStr, Field -from typing import Dict, List, Optional, Set, Union - -from app.lib_general import log, logging, secure_hash_string, verify_secure_hash_string, 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 - -from app.routers.api_crud import delete_obj_template, get_obj_template, get_obj_li_template, patch_obj_template, post_obj_template - -from app.methods.c_idaa_methods import refresh_person_group - -from app.models.response_models import Resp_Body_Base, mk_resp - - -router = APIRouter() - - -# ### BEGIN ### API Client: IDAA ### r_refresh_membership_status() ### -# Updated 2022-03-16 -@router.get('/refresh_membership_status', response_model=Resp_Body_Base) -async def r_refresh_membership_status( - person_id: str = Query(None, min_length=11, max_length=22), - - commons: Common_Route_Params = Depends(common_route_params), - ): - log.setLevel(logging.INFO) # 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 - elif person_id is None: pass - else: return mk_resp(data=None, status_code=404, response=commons.response) # Not Found - - if refresh_person_group_result := refresh_person_group(person_id=person_id): - return mk_resp(data=True, status_message='Updated person records with current membership status group.', response=commons.response) - else: - return mk_resp(data=True, status_code=400, status_message='Person records were not updated with the current membership status group.', response=commons.response) # Bad Request - - # NOTE: Everything below is old - - # sql = f""" - # UPDATE user - # INNER JOIN person ON user.id = person.user_id - # INNER JOIN membership_person ON person.id = membership_person.person_id - # SET user.email_verified = 1, user.enable = 1, user.enable_from = membership_person.start_on, user.enable_to = membership_person.end_on, user.verified = 1, user.group = 'pending_member' - # WHERE user.account_id = 13 AND membership_person.end_on >= NOW() - # AND (person.external_sys_id IS NULL OR person.external_sys_id = ''); - # """ - sql = f""" - UPDATE user - INNER JOIN person ON user.id = person.user_id - INNER JOIN membership_person ON person.id = membership_person.person_id - SET user.email_verified = 1, user.enable = 1, user.enable_from = membership_person.start_on, user.enable_to = membership_person.end_on, user.verified = 1, user.group = 'pending_member' - WHERE user.account_id = 13 AND membership_person.end_on >= NOW() - AND person.status = 'pending'; - """ - if user_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(user_update_result) - else: - log.warning(f'The SQL UPDATE of user table records failed for pending members') - - sql = f""" - UPDATE user - INNER JOIN person ON user.id = person.user_id - INNER JOIN membership_person ON person.id = membership_person.person_id - SET user.email_verified = 1, user.enable = 1, user.enable_from = membership_person.start_on, user.enable_to = membership_person.end_on, user.verified = 1, user.group = 'current_member' - WHERE user.account_id = 13 AND membership_person.end_on >= NOW() - AND (person.status IS NULL OR person.status = '' OR person.status = 'approved' OR person.status = 'unknown'); - """ - if user_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(user_update_result) - else: - log.warning(f'The SQL UPDATE of user table records failed for current members') - - sql = f""" - UPDATE user - INNER JOIN person ON user.id = person.user_id - INNER JOIN membership_person ON person.id = membership_person.person_id - SET user.group = 'inactive_member' - WHERE user.account_id = 13 AND membership_person.end_on < NOW() AND membership_person.end_on >= DATE(NOW() - INTERVAL 4 WEEK); - """ - if user_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(user_update_result) - else: - log.warning(f'The SQL UPDATE of user table records failed for inactive members') - - sql = f""" - UPDATE user - INNER JOIN person ON user.id = person.user_id - INNER JOIN membership_person ON person.id = membership_person.person_id - SET user.group = 'suspended_member' - WHERE user.account_id = 13 AND membership_person.end_on < DATE(NOW() - INTERVAL 4 WEEK); - """ - if user_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(user_update_result) - else: - log.warning(f'The SQL UPDATE of user table records failed for suspended members') - - sql = f""" - UPDATE user - INNER JOIN person ON user.id = person.user_id - LEFT JOIN membership_person ON person.id = membership_person.person_id - SET user.group = 'not_member' - WHERE user.account_id = 13 AND membership_person.id IS NULL; - """ - if user_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(user_update_result) - else: - log.warning(f'The SQL UPDATE of user table records failed for not members') - - - # sql = f""" - # UPDATE person - # INNER JOIN membership_person ON person.id = membership_person.person_id - # SET person.enable = 1, person.group = 'pending_member' - # WHERE person.account_id = 13 AND membership_person.end_on >= NOW() - # AND (person.external_sys_id IS NULL OR person.external_sys_id = ''); - # """ - sql = f""" - UPDATE person - INNER JOIN membership_person ON person.id = membership_person.person_id - SET person.enable = 1, person.group = 'pending_member' - WHERE person.account_id = 13 AND membership_person.end_on >= NOW() - AND person.status = 'pending'; - """ - if person_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(person_update_result) - else: - log.warning(f'The SQL UPDATE of person table records failed for current members') - - sql = f""" - UPDATE person - INNER JOIN membership_person ON person.id = membership_person.person_id - SET person.enable = 1, person.group = 'current_member' - WHERE person.account_id = 13 AND membership_person.end_on >= NOW() - AND (person.status IS NULL OR person.status = '' OR person.status = 'approved' OR person.status = 'unknown'); - """ - if person_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(person_update_result) - else: - log.warning(f'The SQL UPDATE of person table records failed for current members') - - sql = f""" - UPDATE person - INNER JOIN membership_person ON person.id = membership_person.person_id - SET person.group = 'inactive_member' - WHERE person.account_id = 13 AND membership_person.end_on < NOW() AND membership_person.end_on >= DATE(NOW() - INTERVAL 4 WEEK); - """ - if person_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(person_update_result) - else: - log.warning(f'The SQL UPDATE of person table records failed for inactive members') - - sql = f""" - UPDATE person - INNER JOIN membership_person ON person.id = membership_person.person_id - SET person.group = 'suspended_member' - WHERE person.account_id = 13 AND membership_person.end_on < DATE(NOW() - INTERVAL 4 WEEK); - """ - if person_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(person_update_result) - else: - log.warning(f'The SQL UPDATE of person table records failed for suspended members') - - sql = f""" - UPDATE person - LEFT JOIN membership_person ON person.id = membership_person.person_id - SET person.group = 'not_member' - WHERE person.account_id = 13 AND membership_person.id IS NULL; - """ - if person_update_result := sql_update(sql=sql): - # Pull out IDs of existing person record - log.debug(person_update_result) - else: - log.warning(f'The SQL UPDATE of person table records failed for not members') - - return mk_resp(data=True, status_message='Updated person and user records with current membership status', response=commons.response) -# ### END ### API Client: IDAA ### r_refresh_membership_status() ###