project events updated

This commit is contained in:
berkay 2024-11-19 12:28:58 +03:00
parent 1e8f5023e8
commit dca3cf90ff
10 changed files with 214 additions and 45 deletions

View File

@ -124,14 +124,17 @@ from api_events.events.decision_book.decision_book_decision_book_items import (
DecisionBookDecisionBookItemsPatchEventMethod,
)
from api_events.events.decision_book.project_decision_book import (
ProjectDecisionBookCreateEvents,
ProjectDecisionBookUpdateEvents,
ProjectDecisionBookPatchEvents,
ProjectDecisionBookListEventMethod,
ProjectDecisionBookCreateEventMethod,
ProjectDecisionBookUpdateEventMethod,
ProjectDecisionBookApprovalEventMethod,
ProjectDecisionBookPatchEventMethod,
)
from api_events.events.decision_book.project_decision_book_person import (
ProjectDecisionBookPersonCreateEvents,
ProjectDecisionBookPersonUpdateEvents,
ProjectDecisionBookPersonPatchEvents,
ProjectDecisionBookPersonListEventMethod,
ProjectDecisionBookPersonCreateEventMethod,
ProjectDecisionBookPersonUpdateEventMethod,
ProjectDecisionBookPersonPatchEventMethod,
)
from api_events.events.events.events_bind_events import (
EventBindOccupantEventMethod,
@ -218,12 +221,15 @@ __all__ = [
"DecisionBookDecisionBookItemsCreateEventMethod",
"DecisionBookDecisionBookItemsUpdateEventMethod",
"DecisionBookDecisionBookItemsPatchEventMethod",
"ProjectDecisionBookCreateEvents",
"ProjectDecisionBookUpdateEvents",
"ProjectDecisionBookPatchEvents",
"ProjectDecisionBookPersonCreateEvents",
"ProjectDecisionBookPersonUpdateEvents",
"ProjectDecisionBookPersonPatchEvents",
"ProjectDecisionBookListEventMethod",
"ProjectDecisionBookCreateEventMethod",
"ProjectDecisionBookUpdateEventMethod",
"ProjectDecisionBookApprovalEventMethod",
"ProjectDecisionBookPatchEventMethod",
"ProjectDecisionBookPersonListEventMethod",
"ProjectDecisionBookPersonCreateEventMethod",
"ProjectDecisionBookPersonUpdateEventMethod",
"ProjectDecisionBookPersonPatchEventMethod",
"CompanyPatchEventMethod",
"CompanyCreateEventMethod",
"CompanyUpdateEventMethod",

View File

@ -64,7 +64,9 @@ class CompanyCreateEventMethods(MethodToEvent):
token_dict: EmployeeTokenObject,
):
created_company = Companies.create_action(data=data, token=token_dict)
created_company.related_company = token_dict.selected_company.company_uu_id
created_company.update(
related_company=token_dict.selected_company.company_uu_id
)
created_company.save()
return JSONResponse(
content={

View File

@ -26,7 +26,7 @@ from databases import (
from databases.sql_models.building.decision_book import BuildDecisionBookProjectItems, BuildDecisionBookItems
class ProjectDecisionBookPersonListEvents(MethodToEvent):
class ProjectDecisionBookListEventMethods(MethodToEvent):
event_type = "LIST"
@ -62,7 +62,7 @@ class ProjectDecisionBookPersonListEvents(MethodToEvent):
)
class ProjectDecisionBookCreateEvents(MethodToEvent):
class ProjectDecisionBookCreateEventMethods(MethodToEvent):
event_type = "CREATE"
@ -118,7 +118,7 @@ class ProjectDecisionBookCreateEvents(MethodToEvent):
)
class ProjectDecisionBookUpdateEvents(MethodToEvent):
class ProjectDecisionBookUpdateEventMethods(MethodToEvent):
event_type = "UPDATE"
@ -194,7 +194,7 @@ class ProjectDecisionBookUpdateEvents(MethodToEvent):
)
class ProjectDecisionBookApprovalEvents(MethodToEvent):
class ProjectDecisionBookApprovalEventMethods(MethodToEvent):
event_type = "UPDATE"
@ -310,7 +310,7 @@ class ProjectDecisionBookApprovalEvents(MethodToEvent):
)
class ProjectDecisionBookPatchEvents(MethodToEvent):
class ProjectDecisionBookPatchEventMethods(MethodToEvent):
event_type = "PATCH"
@ -325,3 +325,31 @@ class ProjectDecisionBookPatchEvents(MethodToEvent):
token_dict: Union[EmployeeTokenObject, OccupantTokenObject],
):
return
ProjectDecisionBookListEventMethod = (
ProjectDecisionBookListEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/person/list")
)
)
ProjectDecisionBookCreateEventMethod = (
ProjectDecisionBookCreateEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/create")
)
)
ProjectDecisionBookUpdateEventMethod = (
ProjectDecisionBookUpdateEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/update")
)
)
ProjectDecisionBookApprovalEventMethod = (
ProjectDecisionBookApprovalEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/approval")
)
)
ProjectDecisionBookPatchEventMethod = (
ProjectDecisionBookPatchEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/patch")
)
)

View File

@ -16,7 +16,7 @@ from api_objects.auth.token_objects import EmployeeTokenObject, OccupantTokenObj
from api_validations.core_response import AlchemyJsonResponse
class ProjectDecisionBookPersonListEvents(MethodToEvent):
class ProjectDecisionBookPersonListEventMethods(MethodToEvent):
event_type = "LIST"
@ -52,7 +52,7 @@ class ProjectDecisionBookPersonListEvents(MethodToEvent):
)
class ProjectDecisionBookPersonCreateEvents(MethodToEvent):
class ProjectDecisionBookPersonCreateEventMethods(MethodToEvent):
event_type = "CREATE"
@ -85,7 +85,7 @@ class ProjectDecisionBookPersonCreateEvents(MethodToEvent):
)
class ProjectDecisionBookPersonUpdateEvents(MethodToEvent):
class ProjectDecisionBookPersonUpdateEventMethods(MethodToEvent):
event_type = "UPDATE"
@ -119,7 +119,7 @@ class ProjectDecisionBookPersonUpdateEvents(MethodToEvent):
)
class ProjectDecisionBookPersonPatchEvents(MethodToEvent):
class ProjectDecisionBookPersonPatchEventMethods(MethodToEvent):
event_type = "PATCH"
@ -151,3 +151,24 @@ class ProjectDecisionBookPersonPatchEvents(MethodToEvent):
result=decision_book_project_person,
)
ProjectDecisionBookPersonListEventMethod = (
ProjectDecisionBookPersonListEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/people/list")
)
)
ProjectDecisionBookPersonCreateEventMethod = (
ProjectDecisionBookPersonCreateEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/people/create")
)
)
ProjectDecisionBookPersonUpdateEventMethod = (
ProjectDecisionBookPersonUpdateEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/people/update")
)
)
ProjectDecisionBookPersonPatchEventMethod = (
ProjectDecisionBookPersonPatchEventMethods(
action=ActionsSchema(endpoint="/build/decision_book/project/people/patch")
)
)

View File

@ -86,9 +86,6 @@ class SuperUserEventBlock(AddEventFunctionality):
{"function_code": "36961d8a-cefa-46cc-9f7c-9d841d6351b6"},
{"function_code": "46d90119-3b23-4784-8053-fe11da4a3584"},
{"function_code": "c786e15c-c03e-4e8f-936c-7e5e5ec9bbcc"},
{"function_code": "f6900cb5-ac5b-478e-8e7c-fa87e65cd2e5"},
{"function_code": "76f11a08-5f4a-4e1f-961f-aaef21699acd"},
{"function_code": "41ea7f29-006a-4310-b5c4-b2a0e1a504bd"},
{"function_code": "5344d03c-fc47-43ec-8c44-6c2acd7e5d9f"},
{"function_code": "31f4f32f-0cd4-4995-8a6a-f9f56335848a"},
{"function_code": "7192c2aa-5352-4e36-98b3-dafb7d036a3d"},

View File

@ -57,6 +57,12 @@ class InsertDecisionBookPerson(BaseModelRegular):
dues_percent_discount: Optional[int] = None
class UpdateDecisionBookPerson(PydanticBaseModel):
dues_fix_discount: Optional[float] = None
dues_percent_discount: Optional[int] = None
class RemoveDecisionBookPerson(PydanticBaseModel):
person_uu_id: str
build_decision_book_person_uu_id: str

View File

@ -267,7 +267,8 @@ class Companies(CrudCollection, SelectAction):
token.selected_company.company_uu_id
)
company_created = cls.find_or_create(**data_dict)
RelationshipDutyCompany.find_or_create(
company_created.save_and_confirm()
company_relationship_created = RelationshipDutyCompany.find_or_create(
owner_id=token.selected_company.company_id,
duties_id=bulk_duties.id,
member_id=company_created.id,
@ -276,6 +277,7 @@ class Companies(CrudCollection, SelectAction):
relationship_type="Bulk",
show_only=False,
)
company_relationship_created.save_and_confirm()
return company_created
@classmethod

View File

@ -0,0 +1,55 @@
from fastapi.routing import APIRouter
from fastapi.requests import Request
from api_validations.validations_request import (
InsertBuildDecisionBookProjects,
UpdateBuildDecisionBookProjects,
ApprovalsBuildDecisionBookProjects,
ListOptions,
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
build_decision_book_project_route = APIRouter(
prefix="/build/decision_book/project", tags=["Decision Book Project"]
)
build_decision_book_project_route.include_router(
build_decision_book_project_route, include_in_schema=True
)
@build_decision_book_project_route.post(
path="/list", summary="List Active/Delete/Confirm Build Decision Book People"
)
def build_decision_book_project_people_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_decision_book_project_route.post(
path="/create",
summary="Create Build Decision Book Project People with given auth levels",
)
def build_decision_book_project_people_create(request: Request, data: InsertBuildDecisionBookProjects):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_decision_book_project_route.post(
path="/update/{build_decision_book_project_id}",
summary="Add people to Build Decision People Book with given auth levels",
)
def build_decision_book_project_people_update(request: Request, data: UpdateBuildDecisionBookProjects):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_decision_book_project_route.post(
path="/approval/{build_decision_book_project_id}",
summary="Approval people from Build Decision Book Project People with given auth levels",
)
def build_decision_book_project_invite_approval(
request: Request, data: ApprovalsBuildDecisionBookProjects
):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, token_dict=token_dict)

View File

@ -0,0 +1,64 @@
from fastapi.routing import APIRouter
from fastapi.requests import Request
from api_validations.validations_request import (
InsertBuildDecisionBookProjectPerson,
UpdateBuildDecisionBookProjectPerson,
ListOptions,
)
from api_services.redis.auth_actions.token import parse_token_object_to_dict
build_decision_book_project_people_route = APIRouter(
prefix="/build/decision_book/project/people", tags=["Decision Book Project People"]
)
build_decision_book_project_people_route.include_router(
build_decision_book_project_people_route, include_in_schema=True
)
@build_decision_book_project_people_route.post(
path="/list", summary="List Active/Delete/Confirm Build Decision Book People"
)
def build_decision_book_project_people_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_decision_book_project_people_route.post(
path="/create",
summary="Create Build Decision Book Project People with given auth levels",
)
def build_decision_book_project_people_create(request: Request, data: InsertBuildDecisionBookProjectPerson):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(data=data, token_dict=token_dict)
@build_decision_book_project_people_route.post(
path="/update/{build_decision_book_project_person_uu_id}",
summary="Add people to Build Decision People Book with given auth levels",
)
def build_decision_book_project_people_update(
request: Request, build_decision_book_project_person_uu_id:str, data: UpdateBuildDecisionBookProjectPerson
):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data,
build_decision_book_project_person_uu_id=build_decision_book_project_person_uu_id,
token_dict=token_dict
)
@build_decision_book_project_people_route.post(
path="/patch/{build_decision_book_project_person_uu_id}",
summary="Patch people from Build Decision Book Project People with given auth levels",
)
def build_decision_book_project_people_patch(
request: Request, build_decision_book_project_person_uu_id:str, data: UpdateBuildDecisionBookProjectPerson
):
token_dict = parse_token_object_to_dict(request=request)
return token_dict.available_event(
data=data,
build_decision_book_project_person_uu_id=build_decision_book_project_person_uu_id,
token_dict=token_dict
)

View File

@ -22,7 +22,7 @@ from service_app_test.test_application.migrate_old_data.accounts import (
)
password_token = "LmHm9SmX9GiHRkb6Z0GqI4cEzEnxmesMDSWPZEyNqF-9endOcN_qgLKa5kXP8P_oMloNy5EURn4Lq8dZljil2m0_OTAgZRjTqInYb84rsWqqRf8JMqaI7m6UKle_drToNZlnfjpOSgNbbisX3xQv7SvkWBGrWSm4QSI_poRZrgztV2wJZipge7atLopQOFW5"
password_token = "JFHnbuPmYDSK816Ce49UAbjLMuHn3a3X5eFm6TGXzXJd1RNIPJrKprmin1JTsZN1hu1vUoyQRYoIQ2bn-FQOBWn1DoN9LavmJZww2JS7UUXSyMvPZGIgM-vr9BoYh3OaGPqcZAAT8AG3j__80WHfYsPuk_flF4R4UUnKE-0GWQ-YBkVs9C9llhD4k6e_uIsr"
login_data = {
"domain": "evyos.com.tr",
"access_key": "karatay.berkay.sup@evyos.com.tr",
@ -67,34 +67,22 @@ both_apis = BothAPIS()
# both_apis.wag_api = wag_api
both_apis.local_api = local_api
assign_people_to_create_item = 3
assign_people_to_create_item = -1
# selection_list = None
selection_list = [
"a44fb2c0-42a4-4193-b964-73dcbf605110",
"463ae98b-07e7-4e76-8de1-d5984fed91fa",
# "a44fb2c0-42a4-4193-b964-73dcbf605110",
# "463ae98b-07e7-4e76-8de1-d5984fed91fa",
]
# selection_list = None
manager_token = "WmtHuV0DeWlYAs68PTiM5q100UTzGweh8B2rZAuwrwFqm1r4FhQqcg"
manager_token = ""
writers_token = manager_token
people_uu_id_list = [
"2f1d6e3e-aca2-4bfa-a3e7-ce32eb7e02b2",
"2f1d6e3e-aca2-4bfa-a3e7-ce32eb7e02b2",
"2f1d6e3e-aca2-4bfa-a3e7-ce32eb7e02b2",
# "2f1d6e3e-aca2-4bfa-a3e7-ce32eb7e02b2",
]
list_of_attendees = [
"mkQtBLD-zMP94KMz21VFXN2bORlWEqlqM7zQT8GGkvwS0uLGEk3y6Q",
"clp8xw-etegFaVsqVflsz6oIO-SchIvARZO2_t8qaSOOrIlA93Xmeg",
"-FsZrl9bhcKONRGFKJIX1wHPjYQU-GEwydiuXhtNLWB5WxPTusSNhQ",
"HhozHBzoilMYrNI6Li4tYz27LSz2PC2vPxrM0Y7FvbsTXMeDR9EX8Q",
"0s6lOAOQJqARSNx7uTlRjMoIqmC7pEcs6Zo-Q3XmGZPWnv_qLTVXbg",
"EulS8ex9ywa22jp55P6L-Bfnolvb8bIZTirlZn2cSk8_g3sPyYv8gg",
"v9zti5nMhronCi4e-Ud_9MKYwjwg36So6s3kM-v05WnFqeedhgpDbQ",
"uqNBMsqguoyrcEPAmYv5_FNDo_xKtprft4eBx350PKImm4Hq2UdeMw",
"WkREg0XBpW8f-XEKePoOmMiLKReyqo7_4RRUdne4O1nvqt5EtAOJXA",
"Z7zCBEdFTaX-jSo_e29KGXSGc1MKTaGL93KrqKJfV1fqhaepl6iv7g",
"okfCZ1JQuphfZ4GT47tGwmKXCidyxpf1f6wcjsLRVnS6-AU5_EbLJg",
]
living_space_data = dict(
build_parts_uu_id="a44fb2c0-42a4-4193-b964-73dcbf605110",