Work on event launcher and related
This commit is contained in:
@@ -18,7 +18,7 @@ from app.lib_general import log, logging
|
|||||||
from app.log import log
|
from app.log import log
|
||||||
|
|
||||||
# Import the routers here first:
|
# Import the routers here first:
|
||||||
from app.routers import api_crud, api, importing, account, address, archive, archive_content, contact, cont_edu_cert, cont_edu_cert_person, event, event_badge, event_badge_template, event_exhibit, event_file, event_person, event_person_detail, event_person_tracking, event_presentation, event_presenter, event_registration, event_session, flask_cfg, hosted_file, journal, journal_entry, log_client_viewing, lookup, membership_cfg, membership_group, membership_group_person, membership_person, membership_person_profile, membership_type, membership_type_person, order, order_cart, organization, page, person, post, post_comment, product, site, site_domain, user, user_person, websockets#, e_impexium
|
from app.routers import api_crud, api, importing, account, address, archive, archive_content, contact, cont_edu_cert, cont_edu_cert_person, event, event_badge, event_badge_template, event_exhibit, event_file, event_location, event_person, event_person_detail, event_person_tracking, event_presentation, event_presenter, event_registration, event_session, flask_cfg, hosted_file, journal, journal_entry, log_client_viewing, lookup, membership_cfg, membership_group, membership_group_person, membership_person, membership_person_profile, membership_type, membership_type_person, order, order_cart, organization, page, person, post, post_comment, product, site, site_domain, user, user_person, websockets#, e_impexium
|
||||||
|
|
||||||
from app.db_sql import db
|
from app.db_sql import db
|
||||||
|
|
||||||
@@ -132,6 +132,11 @@ app.include_router(
|
|||||||
prefix='/event/file',
|
prefix='/event/file',
|
||||||
tags=['Event File'],
|
tags=['Event File'],
|
||||||
)
|
)
|
||||||
|
app.include_router(
|
||||||
|
event_location.router,
|
||||||
|
# prefix='/event/location',
|
||||||
|
tags=['Event Location'],
|
||||||
|
)
|
||||||
app.include_router(
|
app.include_router(
|
||||||
event_person.router,
|
event_person.router,
|
||||||
# prefix='/event/person',
|
# prefix='/event/person',
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ from app.lib_general import log, logging
|
|||||||
# from app.methods.event_file_methods import load_event_file_obj
|
# from app.methods.event_file_methods import load_event_file_obj
|
||||||
# from app.methods.event_presentation_methods import load_event_presentation_obj
|
# from app.methods.event_presentation_methods import load_event_presentation_obj
|
||||||
# from app.methods.event_presenter_methods import load_event_presenter_obj
|
# from app.methods.event_presenter_methods import load_event_presenter_obj
|
||||||
# from app.methods.event_session_methods import load_event_session_obj
|
|
||||||
# from app.methods.event_track_methods import load_event_track_obj
|
# from app.methods.event_track_methods import load_event_track_obj
|
||||||
|
|
||||||
from app.models.event_location_models import Event_Location_Base
|
from app.models.event_location_models import Event_Location_Base
|
||||||
@@ -21,12 +20,13 @@ from app.models.event_location_models import Event_Location_Base
|
|||||||
# ### BEGIN ### API Event Location Methods ### load_event_location_obj() ###
|
# ### BEGIN ### API Event Location Methods ### load_event_location_obj() ###
|
||||||
def load_event_location_obj(
|
def load_event_location_obj(
|
||||||
event_location_id: int|str,
|
event_location_id: int|str,
|
||||||
enabled: str = 'enabled', # enabled, disabled, all
|
|
||||||
inc_event_device_list: bool = False,
|
inc_event_device_list: bool = False,
|
||||||
inc_event_file_list: bool = False,
|
inc_event_file_list: bool = False,
|
||||||
inc_event_presentation_list: bool = False,
|
inc_event_presentation_list: bool = False,
|
||||||
inc_event_presenter_list: bool = False,
|
inc_event_presenter_list: bool = False,
|
||||||
inc_event_session_list: bool = False,
|
inc_event_session_list: bool = False,
|
||||||
|
enabled: str = 'enabled', # enabled, disabled, all
|
||||||
|
hidden: str = 'hidden', # hidden, not_hidden, all
|
||||||
limit: int = 1000,
|
limit: int = 1000,
|
||||||
by_alias: bool = True,
|
by_alias: bool = True,
|
||||||
exclude_unset: bool = True,
|
exclude_unset: bool = True,
|
||||||
@@ -55,15 +55,6 @@ def load_event_location_obj(
|
|||||||
#account_id = event_location_rec.get('account_id', None)
|
#account_id = event_location_rec.get('account_id', None)
|
||||||
event_id = event_location_rec.get('event_id', None)
|
event_id = event_location_rec.get('event_id', None)
|
||||||
|
|
||||||
# if inc_event and event_id:
|
|
||||||
# if event_obj := load_event_obj(
|
|
||||||
# event_id=event_id,
|
|
||||||
# enabled=enabled,
|
|
||||||
# ):
|
|
||||||
# event_location_obj.event = event_obj.dict(by_alias=True, exclude_unset=True)
|
|
||||||
# else:
|
|
||||||
# event_location_obj.event = None
|
|
||||||
|
|
||||||
# if inc_event_device_list: pass
|
# if inc_event_device_list: pass
|
||||||
# if inc_event_file_list: pass
|
# if inc_event_file_list: pass
|
||||||
|
|
||||||
@@ -117,6 +108,47 @@ def load_event_location_obj(
|
|||||||
|
|
||||||
if inc_event_presenter_list: pass
|
if inc_event_presenter_list: pass
|
||||||
|
|
||||||
|
# Updated 2021-10-09
|
||||||
|
if inc_event_session_list:
|
||||||
|
log.info('Need to include event session list...')
|
||||||
|
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||||
|
|
||||||
|
from app.methods.event_session_methods import get_event_session_rec_list, load_event_session_obj
|
||||||
|
|
||||||
|
if event_session_rec_list_result := get_event_session_rec_list(
|
||||||
|
event_location_id = event_location_id,
|
||||||
|
enabled = enabled, # enabled, disabled, all
|
||||||
|
approved = 'all', # approve(d), not_approved, all
|
||||||
|
hidden = hidden, # hidden, not_hidden, all
|
||||||
|
review = 'all', # ready, not_ready, all
|
||||||
|
limit = limit,
|
||||||
|
):
|
||||||
|
event_session_result_list = []
|
||||||
|
for event_session_rec in event_session_rec_list_result:
|
||||||
|
if load_event_session_result := load_event_session_obj(
|
||||||
|
event_session_id = event_session_rec.get('event_session_id', None),
|
||||||
|
enabled = enabled,
|
||||||
|
limit = limit,
|
||||||
|
# inc_event_file_list = inc_event_file_list,
|
||||||
|
# inc_event_presentation_list = inc_event_presentation_list,
|
||||||
|
# inc_event_presenter_cat = inc_event_presenter_cat,
|
||||||
|
# inc_event_presenter_list = inc_event_presenter_list,
|
||||||
|
# inc_person = inc_person,
|
||||||
|
# inc_poc_event_person = inc_poc_event_person,
|
||||||
|
by_alias = by_alias,
|
||||||
|
exclude_unset = exclude_unset,
|
||||||
|
# model_as_dict = model_as_dict,
|
||||||
|
):
|
||||||
|
event_session_result_list.append(load_event_session_result)
|
||||||
|
else:
|
||||||
|
event_session_result_list.append(None)
|
||||||
|
log.debug(event_session_result_list)
|
||||||
|
event_location_obj.event_session_list = event_session_result_list
|
||||||
|
elif isinstance(event_session_rec_list_result, list):
|
||||||
|
event_location_obj.event_session_list = []
|
||||||
|
else:
|
||||||
|
event_location_obj.event_session_list = None
|
||||||
|
|
||||||
if model_as_dict:
|
if model_as_dict:
|
||||||
return event_location_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member
|
return event_location_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset) # pylint: disable=no-member
|
||||||
else:
|
else:
|
||||||
@@ -129,7 +161,7 @@ def load_event_location_obj(
|
|||||||
def get_event_location_rec_list(
|
def get_event_location_rec_list(
|
||||||
event_id: str,
|
event_id: str,
|
||||||
enabled: str = 'enabled', # enabled, disabled, all
|
enabled: str = 'enabled', # enabled, disabled, all
|
||||||
hidden: str = 'hidden', # hidden, not_hidden, all
|
hidden: str = 'not_hidden', # hidden, not_hidden, all
|
||||||
limit: int = 100,
|
limit: int = 100,
|
||||||
) -> list|bool:
|
) -> list|bool:
|
||||||
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||||
|
|||||||
@@ -270,7 +270,9 @@ def load_event_session_obj(
|
|||||||
|
|
||||||
# ### BEGIN ### API Event Session Methods ### get_event_session_rec_list() ###
|
# ### BEGIN ### API Event Session Methods ### get_event_session_rec_list() ###
|
||||||
def get_event_session_rec_list(
|
def get_event_session_rec_list(
|
||||||
event_id: str,
|
event_id: str = None,
|
||||||
|
event_location_id: str = None,
|
||||||
|
event_track_id: str = None,
|
||||||
enabled: str = 'enabled', # enabled, disabled, all
|
enabled: str = 'enabled', # enabled, disabled, all
|
||||||
approved: str = 'all', # approved, not_approved, all
|
approved: str = 'all', # approved, not_approved, all
|
||||||
hidden: str = 'not_hidden', # hidden, not_hidden, all
|
hidden: str = 'not_hidden', # hidden, not_hidden, all
|
||||||
@@ -281,12 +283,19 @@ def get_event_session_rec_list(
|
|||||||
log.debug(locals())
|
log.debug(locals())
|
||||||
|
|
||||||
if event_id := redis_lookup_id_random(record_id_random=event_id, table_name='event'): pass
|
if event_id := redis_lookup_id_random(record_id_random=event_id, table_name='event'): pass
|
||||||
else: return False
|
# else: return False
|
||||||
|
|
||||||
|
if event_location_id := redis_lookup_id_random(record_id_random=event_location_id, table_name='event_location'): pass
|
||||||
|
# else: return False
|
||||||
|
|
||||||
data = {}
|
data = {}
|
||||||
data[f'event_id'] = event_id
|
|
||||||
|
|
||||||
sql_where_event_id = f'`event_session`.event_id = :event_id'
|
if event_id:
|
||||||
|
data[f'event_id'] = event_id
|
||||||
|
sql_where_type_id = f'`event_session`.event_id = :event_id'
|
||||||
|
elif event_location_id:
|
||||||
|
data[f'event_location_id'] = event_location_id
|
||||||
|
sql_where_type_id = f'`event_session`.event_location_id = :event_location_id'
|
||||||
|
|
||||||
if review in ['ready', 'not_ready', 'all']:
|
if review in ['ready', 'not_ready', 'all']:
|
||||||
if review == 'ready':
|
if review == 'ready':
|
||||||
@@ -338,7 +347,7 @@ def get_event_session_rec_list(
|
|||||||
SELECT `event_session`.id AS 'event_session_id', `event_session`.id_random AS 'event_session_id_random'
|
SELECT `event_session`.id AS 'event_session_id', `event_session`.id_random AS 'event_session_id_random'
|
||||||
FROM `event_session` AS `event_session`
|
FROM `event_session` AS `event_session`
|
||||||
WHERE
|
WHERE
|
||||||
{sql_where_event_id}
|
{sql_where_type_id}
|
||||||
{sql_review}
|
{sql_review}
|
||||||
{sql_approved}
|
{sql_approved}
|
||||||
{sql_hidden}
|
{sql_hidden}
|
||||||
|
|||||||
114
app/routers/event_location.py
Normal file
114
app/routers/event_location.py
Normal file
@@ -0,0 +1,114 @@
|
|||||||
|
import datetime
|
||||||
|
from fastapi import APIRouter, Body, Depends, Header, HTTPException, Query, Response, status
|
||||||
|
from pydantic import BaseModel, EmailStr, Field
|
||||||
|
from typing import Dict, List, Optional, Set, Union
|
||||||
|
|
||||||
|
from app.lib_general import log, logging
|
||||||
|
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.event_location_methods import get_event_location_rec_list, load_event_location_obj
|
||||||
|
|
||||||
|
from app.models.event_location_models import Event_Location_Base
|
||||||
|
from app.models.response_models import Resp_Body_Base, mk_resp
|
||||||
|
|
||||||
|
|
||||||
|
router = APIRouter()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# ### BEGIN ### API Event Location ### get_event_location_obj() ###
|
||||||
|
# Updated 2021-10-09
|
||||||
|
@router.get('/event/location/{event_location_id}', response_model=Resp_Body_Base)
|
||||||
|
async def get_event_location_obj(
|
||||||
|
event_location_id: str = Query(..., min_length=11, max_length=22),
|
||||||
|
inc_event_file_list: bool = False,
|
||||||
|
inc_event_presentation_list: bool = False,
|
||||||
|
inc_event_presenter_list: bool = False,
|
||||||
|
inc_event_session_list: bool = False,
|
||||||
|
enabled: str = 'enabled', # enabled, disabled, all
|
||||||
|
hidden: str = 'not_hidden', # hidden, not_hidden, all
|
||||||
|
limit: int = 500,
|
||||||
|
x_account_id: str = Header(...),
|
||||||
|
by_alias: Optional[bool] = True,
|
||||||
|
exclude_unset: Optional[bool] = True,
|
||||||
|
response: Response = Response,
|
||||||
|
):
|
||||||
|
log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||||
|
log.debug(locals())
|
||||||
|
|
||||||
|
if event_location_id := redis_lookup_id_random(record_id_random=event_location_id, table_name='event_location'): pass
|
||||||
|
else: return mk_resp(data=None, status_code=404, response=response)
|
||||||
|
|
||||||
|
if event_location_obj := load_event_location_obj(
|
||||||
|
event_location_id = event_location_id,
|
||||||
|
inc_event_file_list = inc_event_file_list,
|
||||||
|
inc_event_presentation_list = inc_event_presentation_list,
|
||||||
|
inc_event_presenter_list = inc_event_presenter_list,
|
||||||
|
inc_event_session_list = inc_event_session_list,
|
||||||
|
enabled = enabled,
|
||||||
|
hidden = hidden,
|
||||||
|
limit = limit,
|
||||||
|
):
|
||||||
|
event_location_dict = event_location_obj.dict(by_alias=by_alias, exclude_unset=exclude_unset)
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return mk_resp(data=False, status_code=400, response=response) # Bad Request
|
||||||
|
|
||||||
|
return mk_resp(data=event_location_dict, response=response)
|
||||||
|
#return mk_resp(data=event_location_obj)
|
||||||
|
# ### END ### API Event Location ### get_event_location_obj() ###
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# ### BEGIN ### API Event Location ### get_event_obj_event_location_list() ###
|
||||||
|
# Updated 2021-10-09
|
||||||
|
@router.get('/event/{event_id}/event/location/list', response_model=Resp_Body_Base)
|
||||||
|
async def get_event_obj_event_location_list(
|
||||||
|
event_id: str = Query(..., min_length=11, max_length=22),
|
||||||
|
enabled: str = 'enabled',
|
||||||
|
hidden: str = 'not_hidden',
|
||||||
|
limit: int = 500,
|
||||||
|
x_account_id: str = Header(...),
|
||||||
|
by_alias: Optional[bool] = True,
|
||||||
|
exclude_unset: Optional[bool] = True,
|
||||||
|
response: Response = Response,
|
||||||
|
):
|
||||||
|
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
|
||||||
|
else: return mk_resp(data=None, status_code=404, response=response)
|
||||||
|
|
||||||
|
response_data = None
|
||||||
|
# log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||||
|
|
||||||
|
# Updated 2021-07-28
|
||||||
|
if event_location_rec_list_result := get_event_location_rec_list(
|
||||||
|
event_id = event_id,
|
||||||
|
enabled = enabled,
|
||||||
|
hidden = hidden,
|
||||||
|
limit = limit,
|
||||||
|
):
|
||||||
|
event_location_result_list = []
|
||||||
|
for event_location_rec in event_location_rec_list_result:
|
||||||
|
if load_event_location_result := load_event_location_obj(
|
||||||
|
event_location_id = event_location_rec.get('event_location_id', None),
|
||||||
|
limit = limit,
|
||||||
|
by_alias = by_alias,
|
||||||
|
exclude_unset = exclude_unset,
|
||||||
|
# model_as_dict = model_as_dict,
|
||||||
|
enabled = enabled,
|
||||||
|
):
|
||||||
|
event_location_result_list.append(load_event_location_result)
|
||||||
|
else:
|
||||||
|
event_location_result_list.append(None)
|
||||||
|
response_data = event_location_result_list
|
||||||
|
else:
|
||||||
|
return mk_resp(data=False, status_code=400, response=response) # Bad Request
|
||||||
|
|
||||||
|
return mk_resp(data=response_data, response=response)
|
||||||
|
# ### END ### API Event Location ### get_event_obj_event_location_list() ###
|
||||||
@@ -45,13 +45,13 @@ async def upload_files(
|
|||||||
account_id_random = account_id # This is for the account random str ID
|
account_id_random = account_id # This is for the account random str ID
|
||||||
if account_id := redis_lookup_id_random(record_id_random=account_id, table_name='account'): pass
|
if account_id := redis_lookup_id_random(record_id_random=account_id, table_name='account'): pass
|
||||||
else:
|
else:
|
||||||
return mk_resp(data=None, status_code=400)
|
return mk_resp(data=None, status_code=400, response=response)
|
||||||
|
|
||||||
link_to_type = link_to_type
|
link_to_type = link_to_type
|
||||||
link_to_id_random = link_to_id # This is for the object random str ID
|
link_to_id_random = link_to_id # This is for the object random str ID
|
||||||
if link_to_id := redis_lookup_id_random(record_id_random=link_to_id, table_name=link_to_type): pass
|
if link_to_id := redis_lookup_id_random(record_id_random=link_to_id, table_name=link_to_type): pass
|
||||||
else:
|
else:
|
||||||
return mk_resp(data=None, status_code=400)
|
return mk_resp(data=None, status_code=400, response=response)
|
||||||
|
|
||||||
hosted_file_list = []
|
hosted_file_list = []
|
||||||
for file_obj in file_list:
|
for file_obj in file_list:
|
||||||
@@ -145,7 +145,7 @@ async def upload_files(
|
|||||||
log.debug('The hosted_file_link was probably created fine though.')
|
log.debug('The hosted_file_link was probably created fine though.')
|
||||||
|
|
||||||
log.debug(hosted_file_list)
|
log.debug(hosted_file_list)
|
||||||
return mk_resp(data=hosted_file_list)
|
return mk_resp(data=hosted_file_list, response=response)
|
||||||
# ### END ### API Hosted File Route ### upload_files() ###
|
# ### END ### API Hosted File Route ### upload_files() ###
|
||||||
|
|
||||||
|
|
||||||
@@ -359,7 +359,7 @@ async def upload_files_fake(
|
|||||||
log.debug('The hosted_file_link was probably created fine though.')
|
log.debug('The hosted_file_link was probably created fine though.')
|
||||||
|
|
||||||
log.debug(hosted_file_list)
|
log.debug(hosted_file_list)
|
||||||
return mk_resp(data=hosted_file_list)
|
return mk_resp(data=hosted_file_list, response=response)
|
||||||
# ### END ### API Hosted File Route ### upload_files_fake() ###
|
# ### END ### API Hosted File Route ### upload_files_fake() ###
|
||||||
|
|
||||||
|
|
||||||
@@ -407,7 +407,7 @@ async def get_hosted_file_obj(
|
|||||||
|
|
||||||
if hosted_file_id := redis_lookup_id_random(record_id_random=hosted_file_id, table_name='hosted_file'): pass
|
if hosted_file_id := redis_lookup_id_random(record_id_random=hosted_file_id, table_name='hosted_file'): pass
|
||||||
else:
|
else:
|
||||||
return mk_resp(data=None, status_code=404)
|
return mk_resp(data=None, status_code=404, response=response)
|
||||||
|
|
||||||
if hosted_file_obj := load_hosted_file_obj(
|
if hosted_file_obj := load_hosted_file_obj(
|
||||||
hosted_file_id = hosted_file_id,
|
hosted_file_id = hosted_file_id,
|
||||||
@@ -418,6 +418,6 @@ async def get_hosted_file_obj(
|
|||||||
else:
|
else:
|
||||||
return mk_resp(data=False, status_code=400, response=response) # Bad Request
|
return mk_resp(data=False, status_code=400, response=response) # Bad Request
|
||||||
|
|
||||||
return mk_resp(data=hosted_file_dict)
|
return mk_resp(data=hosted_file_dict, response=response)
|
||||||
#return mk_resp(data=hosted_file_obj)
|
#return mk_resp(data=hosted_file_obj)
|
||||||
# ### END ### API Hosted File ### get_hosted_file_obj() ###
|
# ### END ### API Hosted File ### get_hosted_file_obj() ###
|
||||||
|
|||||||
Reference in New Issue
Block a user