197 lines
7.8 KiB
Python
197 lines
7.8 KiB
Python
from Schemas import (
|
|
Applications,
|
|
Application2Employee,
|
|
Application2Occupant,
|
|
Employees,
|
|
BuildLivingSpace,
|
|
Services,
|
|
Service2Application,
|
|
)
|
|
|
|
|
|
def init_applications_for_super_user(service_match: Services, employee_match: Employees, db_session=None) -> None:
|
|
list_of_all_events = Applications.filter_all(db=db_session).data
|
|
Service2Application.filter_all(db=db_session).query.delete()
|
|
Service2Application.save(db=db_session)
|
|
|
|
for list_of_event_code in list_of_all_events:
|
|
service_to_event_found = Service2Application.filter_one_system(
|
|
Service2Application.application_id == list_of_event_code.id,
|
|
Service2Application.service_id == service_match.id,
|
|
db=db_session,
|
|
)
|
|
if service_to_event_found.data:
|
|
service_to_event_found.destroy(db=db_session)
|
|
print(
|
|
f"UUID: {service_to_event_found.uu_id} application is deleted from {service_match.service_description}"
|
|
)
|
|
|
|
employee_added_application = Service2Application.find_or_create(
|
|
service_id=service_match.id,
|
|
service_uu_id=str(service_match.uu_id),
|
|
application_id=list_of_event_code.id,
|
|
application_uu_id=str(list_of_event_code.uu_id),
|
|
application_code=list_of_event_code.application_code,
|
|
site_url=list_of_event_code.site_url,
|
|
is_confirmed=True,
|
|
active=True,
|
|
db=db_session,
|
|
)
|
|
if employee_added_application.meta_data.created:
|
|
employee_added_application.save(db=db_session)
|
|
print(
|
|
f"UUID: {employee_added_application.uu_id} application is saved to {service_match.service_description}"
|
|
)
|
|
|
|
employee_added_service = Application2Employee.find_or_create(
|
|
service_id=service_match.id,
|
|
service_uu_id=str(service_match.uu_id),
|
|
employee_id=employee_match.id,
|
|
employee_uu_id=str(employee_match.uu_id),
|
|
is_confirmed=True,
|
|
db=db_session,
|
|
)
|
|
if employee_added_service.meta_data.created:
|
|
employee_added_service.save(db=db_session)
|
|
print(
|
|
f"UUID: {employee_added_service.uu_id} service is saved to {employee_match.uu_id}"
|
|
)
|
|
|
|
|
|
# def init_applications_for_general_manager(
|
|
# super_user: Employees, db_session=None
|
|
# ) -> None:
|
|
# list_of_created_apps = Applications.filter_all_system(db=db_session).data
|
|
# if not list_of_created_apps:
|
|
# raise Exception("No applications found")
|
|
|
|
# for list_of_created_app in list_of_created_apps:
|
|
# application_employee_created = Application2Employee.find_or_create(
|
|
# employee_id=super_user.id,
|
|
# employee_uu_id=str(super_user.uu_id),
|
|
# site_url=list_of_created_app.site_url,
|
|
# application_code=list_of_created_app.application_code,
|
|
# application_id=list_of_created_app.id,
|
|
# application_uu_id=str(list_of_created_app.uu_id),
|
|
# is_confirmed=True,
|
|
# db=db_session,
|
|
# )
|
|
# if application_employee_created.meta_data.created:
|
|
# application_employee_created.save(db=db_session)
|
|
|
|
|
|
|
|
# def init_applications_for_build_manager(
|
|
# super_user: BuildLivingSpace, db_session=None
|
|
# ) -> None:
|
|
# list_of_created_apps = Applications.filter_all_system(db=db_session).data
|
|
# if not list_of_created_apps:
|
|
# raise Exception("No applications found")
|
|
|
|
# for list_of_created_app in list_of_created_apps:
|
|
# application_employee_created = Application2Employee.find_or_create(
|
|
# employee_id=super_user.id,
|
|
# employee_uu_id=str(super_user.uu_id),
|
|
# site_url=list_of_created_app.site_url,
|
|
# application_code=list_of_created_app.application_code,
|
|
# application_id=list_of_created_app.id,
|
|
# application_uu_id=str(list_of_created_app.uu_id),
|
|
# is_confirmed=True,
|
|
# db=db_session,
|
|
# )
|
|
# if application_employee_created.meta_data.created:
|
|
# application_employee_created.save(db=db_session)
|
|
|
|
|
|
# def init_applications_for_owner(super_user: BuildLivingSpace, db_session=None) -> None:
|
|
# list_of_created_apps = Applications.filter_all_system(db=db_session).data
|
|
# if not list_of_created_apps:
|
|
# raise Exception("No applications found")
|
|
|
|
# for list_of_created_app in list_of_created_apps:
|
|
# application_employee_created = Application2Employee.find_or_create(
|
|
# employee_id=super_user.id,
|
|
# employee_uu_id=str(super_user.uu_id),
|
|
# site_url=list_of_created_app.site_url,
|
|
# application_code=list_of_created_app.application_code,
|
|
# application_id=list_of_created_app.id,
|
|
# application_uu_id=str(list_of_created_app.uu_id),
|
|
# is_confirmed=True,
|
|
# db=db_session,
|
|
# )
|
|
# if application_employee_created.meta_data.created:
|
|
# application_employee_created.save(db=db_session)
|
|
|
|
|
|
# def init_applications_for_tenant(super_user: BuildLivingSpace, db_session=None) -> None:
|
|
# list_of_created_apps = Applications.filter_all_system(db=db_session).data
|
|
# if not list_of_created_apps:
|
|
# raise Exception("No applications found")
|
|
|
|
# for list_of_created_app in list_of_created_apps:
|
|
# application_employee_created = Application2Employee.find_or_create(
|
|
# employee_id=super_user.id,
|
|
# employee_uu_id=str(super_user.uu_id),
|
|
# site_url=list_of_created_app.site_url,
|
|
# application_code=list_of_created_app.application_code,
|
|
# application_id=list_of_created_app.id,
|
|
# application_uu_id=str(list_of_created_app.uu_id),
|
|
# is_confirmed=True,
|
|
# db=db_session,
|
|
# )
|
|
# if application_employee_created.meta_data.created:
|
|
# application_employee_created.save(db=db_session)
|
|
|
|
# list_of_created_apps = [
|
|
# dict(
|
|
# name="Dashboard1",
|
|
# application_code="app000001",
|
|
# site_url="/dashboard",
|
|
# application_type="info",
|
|
# description="Dashboard Page",
|
|
# ),
|
|
# dict(
|
|
# name="TenantSendMessageToBuildManager",
|
|
# application_code="app000022",
|
|
# site_url="/tenant/messageToBM",
|
|
# application_type="Dash",
|
|
# description="Individual Page for tenant send message to build manager",
|
|
# ),
|
|
# dict(
|
|
# name="TenantSendMessageToOwner",
|
|
# application_code="app000018",
|
|
# site_url="/tenant/messageToOwner",
|
|
# application_type="Dash",
|
|
# description="Individual Page for tenant send message to owner",
|
|
# ),
|
|
# dict(
|
|
# name="TenantAccountView",
|
|
# application_code="app000019",
|
|
# site_url="/tenant/accounting",
|
|
# application_type="Dash",
|
|
# description="Individual Page for tenant account view",
|
|
# ),
|
|
# ]
|
|
|
|
# for list_of_created_app in list_of_created_apps:
|
|
# created_page = Applications.find_or_create(
|
|
# **list_of_created_app,
|
|
# db=db_session,
|
|
# is_confirmed=True,
|
|
# )
|
|
# if created_page.meta_data.created:
|
|
# created_page.save(db=db_session)
|
|
|
|
# application_occupant_created = Application2Occupant.find_or_create(
|
|
# build_living_space_id=super_user.id,
|
|
# build_living_space_uu_id=str(super_user.uu_id),
|
|
# site_url=created_page.site_url,
|
|
# application_code=created_page.application_code,
|
|
# application_id=created_page.id,
|
|
# application_uu_id=str(created_page.uu_id),
|
|
# is_confirmed=True,
|
|
# db=db_session,
|
|
# )
|
|
# if application_occupant_created.meta_data.created:
|
|
# application_occupant_created.save(db=db_session)
|