events updated

This commit is contained in:
2024-11-13 10:38:00 +03:00
parent 952d742999
commit 077d264b28
48 changed files with 277300 additions and 913 deletions

View File

@@ -1,4 +1,5 @@
from .authentication.router import login_route
from .account.router import account_records_router
from .people.router import people_router
from .users.router import user_route
@@ -34,11 +35,11 @@ from .company.staff.router import staff_route
from .company.employee.router import employee_route
from .events.events.bind_events_router import bind_events_route
from .events.models.router import model_route
from .events.models.bind_events_router import bind_modules_route
from .events.modelentities.router import model_entities_route
from .events.modules.router import modules_route
from service_app.routers.events.modules.bind_events_router import bind_modules_route
from .events.services.bind_services_router import bind_services_route
from .events.services.router import services_route
@@ -53,6 +54,7 @@ from .decision_book.decision_book_invitations.router import (
__all__ = [
"account_records_router",
"enums_route",
"occupant_types_route",
"internal_route",
@@ -79,8 +81,6 @@ __all__ = [
"build_types_route",
"bind_events_route",
"event_route",
"model_route",
"model_entities_route",
"modules_route",
"bind_services_route",
"bind_modules_route",

View File

@@ -0,0 +1,54 @@
from fastapi.routing import APIRouter
from fastapi.requests import Request
from api_validations.validations_request import (
InsertAccountRecord,
UpdateAccountRecord,
SearchAddress,
ListOptions,
PatchRecord,
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
account_records_router = APIRouter(prefix="/account/records", tags=["Account Records"])
account_records_router.include_router(account_records_router, include_in_schema=True)
@account_records_router.post(path="/list", summary="List Active/Delete/Confirm Address")
def address_list(request: Request, list_options: ListOptions):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@account_records_router.post(path="/create", summary="Create Address with given auth levels")
def address_create(request: Request, data: InsertAccountRecord):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, token_dict=token_dict)
@account_records_router.post(path="/search", summary="Search Address with given auth levels")
def address_search(request: Request, data: SearchAddress):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, token_dict=token_dict)
@account_records_router.post(
path="/update/{address_uu_id}", summary="Update Address with given auth levels"
)
def address_update(request: Request, address_uu_id: str, data: UpdateAccountRecord):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data, address_uu_id=address_uu_id, token_dict=token_dict
)
@account_records_router.patch(
path="/patch/{address_uu_id}", summary="Update Address Active/Delete/Confirm"
)
def address_patch(request: Request, address_uu_id: str, data: PatchRecord):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data, address_uu_id=address_uu_id, token_dict=token_dict
)

View File

@@ -29,6 +29,7 @@ from api_events.events import (
AuthenticationDownloadAvatarEventMethod,
)
login_route = APIRouter(prefix="/authentication", tags=["Authentication"])
login_route.include_router(login_route, include_in_schema=True)

View File

@@ -1,6 +1,4 @@
from fastapi import status
from fastapi.routing import APIRouter
from fastapi.responses import JSONResponse
from fastapi.requests import Request
from api_validations.validations_request import (
@@ -11,11 +9,6 @@ from api_validations.validations_request import (
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
from api_validations.core_response import AlchemyJsonResponse
from databases import (
BuildArea,
Build,
)
build_area_route = APIRouter(prefix="/building/area", tags=["Building Area"])
@@ -25,84 +18,22 @@ build_area_route.include_router(build_area_route, include_in_schema=True)
@build_area_route.post(path="/list", summary="List Active/Delete/Confirm Build Parts")
def build_area_list(request: Request, list_options: ListOptions):
token_dict = parse_token_object_to_dict(request=request)
Build.filter_attr = list_options
records = BuildArea.filter_active(
*BuildArea.get_smart_query(smart_query=list_options.query),
BuildArea.company_id == token_dict.selected_company.company_id,
)
return return_json_response_from_alchemy(response=records, pagination=list_options)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@build_area_route.post(
path="/create", summary="Create BuildParts with given auth levels"
)
@build_area_route.post(path="/create", summary="Create BuildParts with given auth levels")
def build_area_create(request: Request, data: InsertBuildArea):
token_dict = parse_token_object_to_dict(request=request)
created_build = BuildArea.create_action(data=data, token=token_dict)
return JSONResponse(
content={
"completed": True,
"message": "Create BuildParts record",
"data": created_build.get_dict(),
"build": created_build,
},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_area_route.post(
path="/update/{build_uu_id}", summary="Update BuildParts with given auth levels"
)
@build_area_route.post(path="/update/{build_uu_id}", summary="Update BuildParts with given auth levels")
def build_area_update(request: Request, build_uu_id: str, data: UpdateBuildArea):
token_dict = parse_token_object_to_dict(request=request)
if updated_build := BuildArea.update_action(
data=data, token=token_dict, build_uu_id=build_uu_id
):
return JSONResponse(
content={
"completed": True,
"message": "Update BuildParts record",
"data": updated_build,
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={"completed": True, "message": "Update BuildParts record", "data": {}},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)
@build_area_route.patch(
path="/patch/{build_uu_id}", summary="Update Active/Delete/Confirm"
)
@build_area_route.patch(path="/patch/{build_uu_id}", summary="Update Active/Delete/Confirm")
def build_area_patch(request: Request, build_uu_id: str, data: PatchRecord):
token_dict = parse_token_object_to_dict(request=request)
find_one_build = BuildArea.find_one_or_abort(uu_id=build_uu_id)
access_authorized_build = BuildArea.select_action(
duty_id=getattr(token_dict, "duty_id", 5),
filter_expr=[BuildArea.id == find_one_build.id],
)
if access_authorized_build.count:
action = data.excluded_dump()
find_one_build.active = bool(action.get("active", find_one_build.active))
find_one_build.is_confirmed = bool(
action.get("confirm", find_one_build.is_confirmed)
)
find_one_build.deleted = bool(action.get("delete", find_one_build.deleted))
find_one_build.save()
return JSONResponse(
content={
"completed": True,
"message": "Patch BuildParts record completed",
"data": find_one_build.get_dict(),
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={
"completed": False,
"message": "Patch BuildParts record failed",
"data": {},
},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)

View File

@@ -1,6 +1,4 @@
from fastapi import status
from fastapi.routing import APIRouter
from fastapi.responses import JSONResponse
from fastapi.requests import Request
from api_validations.validations_request import (
@@ -11,7 +9,6 @@ from api_validations.validations_request import (
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
from databases import BuildParts
build_parts_route = APIRouter(prefix="/building/parts", tags=["Building Parts"])
@@ -39,21 +36,7 @@ def building_build_part_update(
request: Request, build_uu_id: str, data: UpdateBuildParts
):
token_dict = parse_token_object_to_dict(request=request)
if updated_build := BuildParts.update_action(
data=data, token=token_dict, build_uu_id=build_uu_id
):
return JSONResponse(
content={
"completed": True,
"message": "Update Build Parts record",
"data": updated_build,
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={"completed": True, "message": "Update Build Parts record", "data": {}},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)
@build_parts_route.patch(
@@ -61,32 +44,4 @@ def building_build_part_update(
)
def building_build_part_patch(request: Request, build_uu_id: str, data: PatchRecord):
token_dict = parse_token_object_to_dict(request=request)
find_one_build = BuildParts.find_one_or_abort(uu_id=build_uu_id)
access_authorized_build = BuildParts.select_action(
duty_id=getattr(token_dict, "duty_id", 5),
filter_expr=[BuildParts.id == find_one_build.id],
)
if access_authorized_build.count:
action = data.excluded_dump()
find_one_build.active = bool(action.get("active", find_one_build.active))
find_one_build.is_confirmed = bool(
action.get("confirm", find_one_build.is_confirmed)
)
find_one_build.deleted = bool(action.get("delete", find_one_build.deleted))
find_one_build.save()
return JSONResponse(
content={
"completed": True,
"message": "Patch Build record completed",
"data": find_one_build.get_dict(),
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={
"completed": False,
"message": "Patch Build record failed",
"data": {},
},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)

View File

@@ -1,9 +1,6 @@
from fastapi import status
from fastapi.routing import APIRouter
from fastapi.responses import JSONResponse
from fastapi.requests import Request
from api_validations.validations_request import (
PatchRecord,
ListOptions,
@@ -11,9 +8,7 @@ from api_validations.validations_request import (
UpdateBuildSites,
)
from databases import BuildSites
from api_services.redis.auth_actions.token import parse_token_object_to_dict
from api_validations.core_response import AlchemyJsonResponse
build_sites_route = APIRouter(prefix="/building/sites", tags=["Building Sites"])
@@ -23,12 +18,7 @@ build_sites_route.include_router(build_sites_route, include_in_schema=True)
@build_sites_route.post(path="/list", summary="List Active/Delete/Confirm Build Parts")
def building_sites_list(request: Request, list_options: ListOptions):
token_dict = parse_token_object_to_dict(request=request)
BuildSites.filter_attr = list_options
records = BuildSites.filter_active(
*BuildSites.get_smart_query(smart_query=list_options.query),
BuildSites.company_id == token_dict.selected_company.company_id,
)
return return_json_response_from_alchemy(response=records, pagination=list_options)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@build_sites_route.post(
@@ -36,16 +26,7 @@ def building_sites_list(request: Request, list_options: ListOptions):
)
def building_sites_create(request: Request, data: InsertBuildSites):
token_dict = parse_token_object_to_dict(request=request)
created_build = BuildSites.create_action(data=data, token=token_dict)
return JSONResponse(
content={
"completed": True,
"message": "Create Build Sites record",
"data": created_build.get_dict(),
"build": created_build,
},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_sites_route.post(
@@ -53,21 +34,7 @@ def building_sites_create(request: Request, data: InsertBuildSites):
)
def building_sites_update(request: Request, build_uu_id: str, data: UpdateBuildSites):
token_dict = parse_token_object_to_dict(request=request)
if updated_build := BuildSites.update_action(
data=data, token=token_dict, build_uu_id=build_uu_id
):
return JSONResponse(
content={
"completed": True,
"message": "Update Build Sites record",
"data": updated_build,
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={"completed": True, "message": "Update Build Sites record", "data": {}},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)
@build_sites_route.patch(
@@ -75,32 +42,4 @@ def building_sites_update(request: Request, build_uu_id: str, data: UpdateBuildS
)
def building_sites_patch(request: Request, build_uu_id: str, data: PatchRecord):
token_dict = parse_token_object_to_dict(request=request)
find_one_build = BuildSites.find_one_or_abort(uu_id=build_uu_id)
access_authorized_build = BuildSites.select_action(
duty_id=getattr(token_dict, "duty_id", 5),
filter_expr=[BuildSites.id == find_one_build.id],
)
if access_authorized_build.count:
action = data.excluded_dump()
find_one_build.active = bool(action.get("active", find_one_build.active))
find_one_build.is_confirmed = bool(
action.get("confirm", find_one_build.is_confirmed)
)
find_one_build.deleted = bool(action.get("delete", find_one_build.deleted))
find_one_build.save()
return JSONResponse(
content={
"completed": True,
"message": "Patch Build Sites record completed",
"data": find_one_build.get_dict(),
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={
"completed": False,
"message": "Patch Build Sites record failed",
"data": {},
},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)

View File

@@ -1,6 +1,4 @@
from fastapi import status
from fastapi.routing import APIRouter
from fastapi.responses import JSONResponse
from fastapi.requests import Request
from api_validations.validations_request import (
@@ -11,8 +9,6 @@ from api_validations.validations_request import (
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
from api_validations.core_response import AlchemyJsonResponse
from databases import BuildTypes
build_types_route = APIRouter(prefix="/building/types", tags=["Types"])
@@ -20,12 +16,9 @@ build_types_route.include_router(build_types_route, include_in_schema=True)
@build_types_route.post(path="/list", summary="List Active/Delete/Confirm Build Parts")
def building_types_list(list_options: ListOptions):
BuildTypes.filter_attr = list_options
records = BuildTypes.filter_active(
*BuildTypes.get_smart_query(smart_query=list_options.query),
)
return return_json_response_from_alchemy(response=records, pagination=list_options)
def building_types_list(request: Request, list_options: ListOptions):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@build_types_route.post(
@@ -33,16 +26,7 @@ def building_types_list(list_options: ListOptions):
)
def building_types_create(request: Request, data: InsertBuildTypes):
token_dict = parse_token_object_to_dict(request=request)
created_build = BuildTypes.create_action(data=data, token=token_dict)
return JSONResponse(
content={
"completed": True,
"message": "Create BuildParts record",
"data": created_build.get_dict(),
"build": created_build,
},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_types_route.post(
@@ -50,21 +34,7 @@ def building_types_create(request: Request, data: InsertBuildTypes):
)
def building_types_update(request: Request, build_uu_id: str, data: UpdateBuildTypes):
token_dict = parse_token_object_to_dict(request=request)
if updated_build := BuildTypes.update_action(
data=data, token=token_dict, build_uu_id=build_uu_id
):
return JSONResponse(
content={
"completed": True,
"message": "Update BuildParts record",
"data": updated_build,
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={"completed": True, "message": "Update BuildParts record", "data": {}},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)
@build_types_route.patch(
@@ -72,32 +42,4 @@ def building_types_update(request: Request, build_uu_id: str, data: UpdateBuildT
)
def building_types_patch(request: Request, build_uu_id: str, data: PatchRecord):
token_dict = parse_token_object_to_dict(request=request)
find_one_build = BuildTypes.find_one_or_abort(uu_id=build_uu_id)
access_authorized_build = BuildTypes.select_action(
duty_id=getattr(token_dict, "duty_id", 5),
filter_expr=[BuildTypes.id == find_one_build.id],
)
if access_authorized_build.count:
action = data.excluded_dump()
find_one_build.active = bool(action.get("active", find_one_build.active))
find_one_build.is_confirmed = bool(
action.get("confirm", find_one_build.is_confirmed)
)
find_one_build.deleted = bool(action.get("delete", find_one_build.deleted))
find_one_build.save()
return JSONResponse(
content={
"completed": True,
"message": "Patch BuildParts record completed",
"data": find_one_build.get_dict(),
},
status_code=status.HTTP_200_OK,
)
return JSONResponse(
content={
"completed": False,
"message": "Patch BuildParts record failed",
"data": {},
},
status_code=status.HTTP_200_OK,
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)

View File

@@ -13,17 +13,13 @@ build_living_space = APIRouter(prefix="/building/living_space", tags=["Living Sp
build_living_space.include_router(build_living_space, include_in_schema=True)
@build_living_space.post(
path="/list", summary="List Active/Delete/Confirm Build Living Space"
)
@build_living_space.post(path="/list", summary="List Active/Delete/Confirm Build Living Space")
def building_living_space_list(request: Request, list_options: ListOptions):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@build_living_space.post(
path="/create", summary="Create Build Living Space with given auth levels"
)
@build_living_space.post(path="/create", summary="Create Build Living Space with given auth levels")
def building_living_space_create(request: Request, data: InsertBuildLivingSpace):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, token_dict=token_dict)
@@ -37,16 +33,12 @@ def building_living_space_update(
request: Request, build_uu_id: str, data: UpdateBuildLivingSpace
):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data, build_uu_id=build_uu_id, token_dict=token_dict
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)
@build_living_space.patch(
path="/patch/{build_uu_id}", summary="Update Active/Delete/Confirm"
path="/patch/{build_uu_id}", summary="Update Build Living Space with given auth levels"
)
def building_living_space_patch(request: Request, build_uu_id: str, data: PatchRecord):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data, build_uu_id=build_uu_id, token_dict=token_dict
)
return token_dict.available_event(data=data, build_uu_id=build_uu_id, token_dict=token_dict)

View File

@@ -1,62 +0,0 @@
from fastapi.routing import APIRouter
from fastapi.requests import Request
from api_validations.validations_request import (
DepartmentsPydantic,
PatchRecord,
ListOptions,
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
model_entities_route = APIRouter(prefix="/model/entities", tags=["Model Entities"])
model_entities_route.include_router(model_entities_route, include_in_schema=True)
@model_entities_route.post(path="/list", summary="List Active/Delete/Confirm Events")
def model_entities_list(request: Request, list_options: ListOptions):
from events.events_model_entities import ModelEntitiesEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEntitiesEvents, "model_entities_list")
return active_function(data=list_options, token_dict=token_dict)
@model_entities_route.post(
path="/create", summary="Create Events with given auth levels"
)
def model_entities_create(request: Request, data: DepartmentsPydantic):
from events.events_model_entities import ModelEntitiesEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEntitiesEvents, "model_entities_create")
return active_function(data=data, token_dict=token_dict)
@model_entities_route.post(
path="/update/{company_uu_id}", summary="Update Events with given auth levels"
)
def model_entities_update(
request: Request, company_uu_id: str, data: DepartmentsPydantic
):
from events.events_model_entities import ModelEntitiesEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEntitiesEvents, "model_entities_update")
return active_function(
data=data, company_uu_id=company_uu_id, token_dict=token_dict
)
@model_entities_route.patch(
path="/patch/{company_uu_id}", summary="Patch Events with given auth levels"
)
def model_entities_patch(request: Request, company_uu_id: str, data: PatchRecord):
from events.events_model_entities import ModelEntitiesEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEntitiesEvents, "model_entities_patch")
return active_function(
data=data, company_uu_id=company_uu_id, token_dict=token_dict
)

View File

@@ -1,58 +0,0 @@
from fastapi.routing import APIRouter
from fastapi.requests import Request
from api_validations.validations_request import (
DepartmentsPydantic,
PatchRecord,
ListOptions,
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
model_route = APIRouter(prefix="/model/entities", tags=["Model Entities"])
model_route.include_router(model_route, include_in_schema=True)
@model_route.post(path="/list", summary="List Active/Delete/Confirm Events")
def model_list(request: Request, list_options: ListOptions):
from events.events_models import ModelEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEvents, "model_list")
return active_function(data=list_options, token_dict=token_dict)
@model_route.post(path="/create", summary="Create Events with given auth levels")
def model_create(request: Request, data: DepartmentsPydantic):
from events.events_models import ModelEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEvents, "model_create")
return active_function(data=data, token_dict=token_dict)
@model_route.post(
path="/update/{company_uu_id}", summary="Update Events with given auth levels"
)
def model_update(request: Request, company_uu_id: str, data: DepartmentsPydantic):
from events.events_models import ModelEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEvents, "model_list")
return active_function(
data=data, company_uu_id=company_uu_id, token_dict=token_dict
)
@model_route.patch(
path="/patch/{company_uu_id}", summary="Patch Events with given auth levels"
)
def model_patch(request: Request, company_uu_id: str, data: PatchRecord):
from events.events_models import ModelEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ModelEvents, "model_list")
return active_function(
data=data, company_uu_id=company_uu_id, token_dict=token_dict
)

View File

@@ -2,7 +2,6 @@ from fastapi.routing import APIRouter
from fastapi.requests import Request
from api_validations.validations_request import (
DepartmentsPydantic,
PatchRecord,
ListOptions,
)
@@ -16,43 +15,30 @@ services_route.include_router(services_route, include_in_schema=True)
@services_route.post(path="/list", summary="List Active/Delete/Confirm Modules")
def services_list(request: Request, list_options: ListOptions):
from events.events_services import ServicesEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ServicesEvents, "services_list")
return active_function(list_options=list_options, token_dict=token_dict)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@services_route.post(path="/create", summary="Create Modules with given auth levels")
def services_create(request: Request, data: DepartmentsPydantic):
from events.events_services import ServicesEvents
def services_create(request: Request, data):
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ServicesEvents, "services_create")
return active_function(data=data, token_dict=token_dict)
return token_dict.available_event(data=data, token_dict=token_dict)
@services_route.post(
path="/update/{service_uu_id}", summary="Update Modules with given auth levels"
)
def services_update(request: Request, service_uu_id: str, data: DepartmentsPydantic):
from events.events_services import ServicesEvents
def services_update(request: Request, service_uu_id: str, data):
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ServicesEvents, "services_update")
return active_function(
return token_dict.available_event(
data=data, service_uu_id=service_uu_id, token_dict=token_dict
)
@services_route.patch(
path="/patch/{service_uu_id}", summary="Patch Modules with given auth levels"
)
def services_patch(request: Request, service_uu_id: str, data: PatchRecord):
from events.events_services import ServicesEvents
token_dict = parse_token_object_to_dict(request=request)
active_function = getattr(ServicesEvents, "services_patch")
return active_function(
return token_dict.available_event(
data=data, service_uu_id=service_uu_id, token_dict=token_dict
)

View File

@@ -1,6 +1,4 @@
from fastapi import status, HTTPException
from fastapi.routing import APIRouter
from fastapi.responses import JSONResponse
from fastapi.requests import Request
from api_validations.validations_request import (
@@ -9,10 +7,7 @@ from api_validations.validations_request import (
PatchRecord,
ListOptions,
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
from api_validations.core_response import AlchemyJsonResponse
from databases import BuildDecisionBookProjects
build_project_decision_book_route = APIRouter(
@@ -28,15 +23,7 @@ build_project_decision_book_route.include_router(
)
def project_decision_book_list(request: Request, list_options: ListOptions):
token_dict = parse_token_object_to_dict(request=request)
BuildDecisionBookProjects.pre_query = BuildDecisionBookProjects.select_action(
duty_id=token_dict.duty_list["duty_id"]
)
build_decision_book_records = BuildDecisionBookProjects.filter_active(
*BuildDecisionBookProjects.get_smart_query(list_options.query)
)
return return_json_response_from_alchemy(
response=build_decision_book_records, pagination=list_options
)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@build_project_decision_book_route.post(
@@ -46,21 +33,7 @@ def project_decision_book_create(
request: Request, data: InsertBuildDecisionBookProjects
):
token_dict = parse_token_object_to_dict(request=request)
if build_decision_book_records := BuildDecisionBookProjects.create_action(
data=data, token=token_dict
):
return JSONResponse(
content={
"completed": True,
"message": "Create Build record",
"data": build_decision_book_records.get_dict(),
},
status_code=status.HTTP_200_OK,
)
raise HTTPException(
status_code=401,
detail=f"This user can not access/modify {data.build_uu_id} - building",
)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_project_decision_book_route.post(
@@ -70,11 +43,17 @@ def project_decision_book_create(
def project_decision_book_update(
request: Request, book_uu_id: str, data: UpdateBuildDecisionBookProjects
):
return
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data, book_uu_id=book_uu_id, token_dict=token_dict
)
@build_project_decision_book_route.patch(
path="/patch/{book_uu_id}", summary="Update Active/Delete/Confirm"
)
def project_decision_book_patch(request: Request, book_uu_id: str, data: PatchRecord):
return
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data, book_uu_id=book_uu_id, token_dict=token_dict
)

View File

@@ -1,6 +1,4 @@
from fastapi import status, HTTPException
from fastapi.routing import APIRouter
from fastapi.responses import JSONResponse
from fastapi.requests import Request
from api_validations.validations_request import (
@@ -9,10 +7,7 @@ from api_validations.validations_request import (
PatchRecord,
ListOptions,
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
from api_validations.core_response import AlchemyJsonResponse
from databases import BuildDecisionBook, Build
build_project_decision_book_person_route = APIRouter(
@@ -28,15 +23,7 @@ build_project_decision_book_person_route.include_router(
)
def project_decision_book_person_list(request: Request, list_options: ListOptions):
token_dict = parse_token_object_to_dict(request=request)
BuildDecisionBook.pre_query = BuildDecisionBook.select_action(
duty_id=token_dict.duty_list["duty_id"]
)
build_decision_book_records = BuildDecisionBook.filter_active(
*BuildDecisionBook.get_smart_query(list_options.query)
)
return return_json_response_from_alchemy(
response=build_decision_book_records, pagination=list_options
)
return token_dict.available_event(list_options=list_options, token_dict=token_dict)
@build_project_decision_book_person_route.post(
@@ -44,21 +31,7 @@ def project_decision_book_person_list(request: Request, list_options: ListOption
)
def project_decision_book_person_create(request: Request, data: InsertDecisionBook):
token_dict = parse_token_object_to_dict(request=request)
Build.pre_query = Build.select_action(duty_id=token_dict.duty_list["duty_id"])
if Build.find_one(uu_id=data.build_uu_id):
build_decision_book_records = BuildDecisionBook.create_action(data=data)
return JSONResponse(
content={
"completed": True,
"message": "Create Build record",
"data": build_decision_book_records.get_dict(),
},
status_code=status.HTTP_200_OK,
)
raise HTTPException(
status_code=401,
detail=f"This user can not access/modify {data.build_uu_id} - building",
)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_project_decision_book_person_route.post(
@@ -68,8 +41,8 @@ def project_decision_book_person_create(request: Request, data: InsertDecisionBo
def project_decision_book_person_update(
request: Request, book_uu_id: str, data: UpdateDecisionBook
):
return
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, book_uu_id=book_uu_id, token_dict=token_dict)
@build_project_decision_book_person_route.patch(
@@ -78,4 +51,5 @@ def project_decision_book_person_update(
def project_decision_book_person_patch(
request: Request, book_uu_id: str, data: PatchRecord
):
return
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, book_uu_id=book_uu_id, token_dict=token_dict)