115 lines
3.4 KiB
Python
115 lines
3.4 KiB
Python
import arrow
|
|
|
|
from service_app_test.bases import active_and_confirmed
|
|
from service_app_test.test_application.evyos.datas.company_employee_data import (
|
|
list_options,
|
|
)
|
|
from service_app_test.test_application.evyos.datas.get_type_codes import (
|
|
get_type_codes_key_and_class,
|
|
)
|
|
from service_app_test.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, requester):
|
|
get_type_codes_response = get_type_codes_key_and_class(
|
|
class_name=enum_class, key_name=key, requester=requester
|
|
)
|
|
return get_type_codes_response["data"]["uu_id"]
|
|
|
|
|
|
def list_company(requester):
|
|
response = requester.post(
|
|
endpoint="/company/list",
|
|
data=list_options,
|
|
)
|
|
print("text", response.text)
|
|
print("json", response.json())
|
|
return response.json()
|
|
|
|
|
|
def list_decision_books(requester):
|
|
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(requester):
|
|
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, requester):
|
|
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, requester):
|
|
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, requester):
|
|
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(requester):
|
|
build_response = list_building(requester=requester)
|
|
selected_build_uu_id = build_response["data"][0]["uu_id"]
|
|
|
|
company_response = list_company(requester=requester)
|
|
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,
|
|
),
|
|
requester=requester,
|
|
)
|
|
decision_book = list_decision_books(requester=requester)["data"][0]["uu_id"]
|
|
return decision_book
|