wag-managment-api-service-v.../service_app_test/test_application/evyos/decision_book.py

110 lines
3.1 KiB
Python

import arrow
from test_application.evyos.bases import requester, active_and_confirmed
from test_application.evyos.datas.company_employee_data import list_options
from test_application.evyos.datas.get_type_codes import get_type_codes_key_and_class
from test_application.evyos.address_building import list_building
decision_book_dict = lambda build_uu_id, resp_company_uu_id: {
"build_uu_id": build_uu_id,
"decision_type": "RBM",
"meeting_date": str(arrow.now().date()),
"is_out_sourced": True,
"resp_company_uu_id": resp_company_uu_id,
**active_and_confirmed,
}
event_bind_to_occupant = lambda event_uu_id_list, build_living_space_uu_id: {
"event_uu_id_list": list(event_uu_id_list),
"build_living_space_uu_id": str(build_living_space_uu_id),
}
def get_uu_id_of_enum(enum_class: str, key: str):
get_type_codes_response = get_type_codes_key_and_class(
class_name=enum_class, key_name=key
)
return get_type_codes_response["data"]["uu_id"]
def list_company():
response = requester.post(
endpoint="/company/list",
data=list_options,
)
print("text", response.text)
print("json", response.json())
return response.json()
def list_decision_books():
response = requester.post(
endpoint="/build/decision_book/list",
data=list_options,
)
print("text", response.text)
print("json", response.json())
return response.json()
def list_decision_book_items():
response = requester.post(
endpoint="/build/decision_book/items/list",
data=list_options,
)
print("text", response.text)
print("json", response.json())
return response.json()
def create_decision_book(decision_book):
response = requester.post(
endpoint="/build/decision_book/create",
data=decision_book,
)
print("text", response.text)
print("json", response.json())
return response.json()
def give_service_access_to_occupant(occupant_dict):
response = requester.post(
endpoint="/bind/services/occupant",
data=occupant_dict,
)
print("text", response.text)
print("json", response.json())
return response.json()
def give_event_access_to_build_decision_book_items(occupant_dict):
response = requester.post(
endpoint="/bind/events/occupant",
data={
"occupant_uu_id": occupant_dict["occupant_uu_id"],
"build_part_uu_id": occupant_dict["build_part_uu_id"],
"event_uu_id_list": list(occupant_dict["event_uu_id_list"]),
"is_confirmed": True,
},
)
print("text", response.text)
print("json", response.json())
return response.json()
def run_decision_book_depends():
build_response = list_building()
selected_build_uu_id = build_response["data"][0]["uu_id"]
company_response = list_company()
selected_company_uu_id = company_response["data"][0]["uu_id"]
create_decision_book(
decision_book_dict(
build_uu_id=selected_build_uu_id,
resp_company_uu_id=selected_company_uu_id,
)
)
decision_book = list_decision_books()["data"][0]["uu_id"]
return decision_book