project budget updated

This commit is contained in:
2024-11-20 12:04:02 +03:00
parent 48682b1914
commit 0b3e0c299c
26 changed files with 742 additions and 310 deletions

View File

@@ -1,4 +1,3 @@
from api_validations.validations_request import (
InsertBuildDecisionBookProjectItems,
UpdateBuildDecisionBookProjects,
@@ -8,7 +7,9 @@ from api_validations.validations_request import (
def generate_update_project_item(**kwargs):
return {
"build_decision_book_project_uu_id": kwargs.get("build_decision_book_project_uu_id", None),
"build_decision_book_project_uu_id": kwargs.get(
"build_decision_book_project_uu_id", None
),
"is_out_sourced": kwargs.get("is_out_sourced", False),
"project_note": kwargs.get("project_note", None),
# "decision_book_pdf_path": str(kwargs.get("decision_book_pdf_path", None)),
@@ -24,7 +25,9 @@ def generate_update_project_item(**kwargs):
def generate_approval_project_item(**kwargs):
return {
"build_decision_book_project_uu_id": kwargs.get("build_decision_book_project_uu_id", None),
"build_decision_book_project_uu_id": kwargs.get(
"build_decision_book_project_uu_id", None
),
"final_price_list": kwargs.get("final_price_list", []),
"project_stop_date": kwargs.get("project_stop_date", None),
}
@@ -32,7 +35,9 @@ def generate_approval_project_item(**kwargs):
def generate_insert_project_item(**kwargs):
return {
"build_decision_book_project_uu_id": kwargs.get("build_decision_book_project_uu_id", None),
"build_decision_book_project_uu_id": kwargs.get(
"build_decision_book_project_uu_id", None
),
"item_header": kwargs.get("item_header", ""),
"item_comment": kwargs.get("item_comment", ""),
}
@@ -40,8 +45,7 @@ def generate_insert_project_item(**kwargs):
def create_decision_book_items(requester, insert_project_item):
response = requester.post(
endpoint="/build/decision_book/project/items/create",
data=insert_project_item
endpoint="/build/decision_book/project/items/create", data=insert_project_item
)
print("text", response.text)
print("json", response.json())
@@ -50,8 +54,7 @@ def create_decision_book_items(requester, insert_project_item):
def update_decision_book_project(requester, update_project_item):
response = requester.post(
endpoint="/build/decision_book/project/update",
data=update_project_item
endpoint="/build/decision_book/project/update", data=update_project_item
)
print("text", response.text)
print("json", response.json())
@@ -59,8 +62,7 @@ def update_decision_book_project(requester, update_project_item):
def approve_build_decision_book_project_approval(requester, approval_project_item):
response = requester.post(
endpoint="/build/decision_book/project/approval",
data=approval_project_item
endpoint="/build/decision_book/project/approval", data=approval_project_item
)
print("text", response.text)
print("json", response.json())

View File

@@ -3,14 +3,21 @@ import arrow
from service_app_test.bases import RequestToApi
from service_app_test.api_configs import LocalAPI, BothAPIS
from service_app_test.test_application.evyos.decision_book import (
run_decision_book_depends, list_decision_books,
run_decision_book_depends,
list_decision_books,
)
from service_app_test.test_application.evyos.decision_book_items import (
send_invitation_to_building_residents,
collect_invitation_to_building_residents,
assign_people_to_pre_or_wrt, run_decision_book_items,
assign_people_to_pre_or_wrt,
run_decision_book_items,
)
from service_app_test.test_application.migrate_old_data.get_occupants_codes import (
get_occupants_types,
)
from service_app_test.test_application.migrate_old_data.get_type_codes import (
get_type_codes_key_and_class,
)
from service_app_test.test_application.migrate_old_data.get_type_codes import get_type_codes_key_and_class
from service_app_test.test_application.migrate_old_data.people import migrate_people
from service_app_test.test_application.migrate_old_data.building import (
migrate_build,
@@ -20,9 +27,23 @@ from service_app_test.test_application.migrate_old_data.company import migrate_c
from service_app_test.test_application.migrate_old_data.accounts import (
migrate_account_records,
)
from service_app_test.test_application.migrate_old_data.decision_book_project import (
approve_build_decision_book_project_approval,
update_decision_book_project,
create_decision_book_items,
generate_insert_project_item,
generate_update_project_item,
generate_approval_project_item,
)
local_api = RequestToApi()
local_api.overwrite_base_url(base_url=LocalAPI.base_url)
password_token = "g17Anw5yBvrASMXtES8olfE8vN32R-U7wO_g8kbhjK8C67ww7fv39Mp3ygjouDw8UrwFJhemqFwbEIi2XzIN1u_rq4nmUSROZAnL3NyhczfizMZml0Rd84HWFA80Z1WpIsOadRlGVN77rr3OrrfYXfp1Fa6f_LsiTj0m3N-ie6Mr-4NIQ-3g25Z4oCD4Up6o"
both_apis = BothAPIS()
both_apis.local_api = local_api
password_token = ""
password_token_occ = ""
login_data = {
"domain": "evyos.com.tr",
"access_key": "karatay.berkay.sup@evyos.com.tr",
@@ -30,80 +51,23 @@ login_data = {
"remember_me": False,
"password_token": password_token,
}
login_creds_employee = {
"domain": "evyos.com.tr",
"access_key": "karatay.berkay.sup@evyos.com.tr",
"password": "string",
"remember_me": False,
"password_token": password_token,
}
access_key_president = "mehmet.karatay@hotmail.com"
login_creds_occupant = {
"domain": "evyos.com.tr",
"access_key": access_key_president,
"access_key": "mehmet.karatay@hotmail.com",
"password": "string",
"remember_me": False,
"password_token": "88ENxfw1a0tQRHTQ1RWPsv1iWEe2jzwPqra1tH5PuGmr69fneVDdCpQhgj5LnY0L9IA2Zq8eUX7LRpwKaez0rbYQZRdrKNCfx98M4erSNSRCFPI35tBvGdRuTEISIGoUXPI1xEcfQvGT-AOILc-yPOlyfYLyB7Chej1bjuGxe04hdtqQon2rYLmI8KMCv2XK"
"password_token": password_token_occ,
}
wrt_creds_occupant = {
"domain": "evyos.com.tr",
"access_key": access_key_president,
"password": "string",
"remember_me": False,
"password_token": "",
}
# wag_api = RequestToApi()
# wag_api.overwrite_base_url(base_url=WagAPI.base_url)
# wag_api.selected_object = wag_api.login_via_email_and_password(
# login_data=login_data_wag, is_password_valid=True
# )
local_api = RequestToApi()
local_api.overwrite_base_url(base_url=LocalAPI.base_url)
both_apis = BothAPIS()
# both_apis.wag_api = wag_api
both_apis.local_api = local_api
assign_people_to_create_item = 3
# selection_list = None
selection_list = [
"68b5e3d9-c546-4ebd-98f5-df468f20cc54",
"da2a282c-7053-4cdf-bca5-c41f548883cc",
]
# selection_list = None
manager_token = "jk-8A2kXjk86QGP2WHMrOF7E9UTfzOe0Wcq0HDZFDh78V5YbuNVxmw"
writers_token = manager_token
people_uu_id_list = [
"561a9cbc-587a-4582-8eff-f005f5b1e847",
"561a9cbc-587a-4582-8eff-f005f5b1e847",
"561a9cbc-587a-4582-8eff-f005f5b1e847",
# "523dbcd3-fe87-4208-86c2-da45204dfafc",
# "24aed2e5-bca0-4657-a056-badf9b3aa81c",
]
list_of_attendees = [
"zFhY5z05ixUxvryeGYPdchUDYhIoatghz06bb74FwJuMyrH1w4JVQw",
"wlm0VNMnUDj91B8HLWQE9vKZsOIPcYQlHZqmgV_U_ywIOXFxR7RDxw",
"2ckn8Jp7r0xgHqdExk82SQVUhekwSMNI6Yvd1ESV6LD4769kyeso2g",
"6iY_p1JkptCj1JeptEUokw5BzxtcgQ3tHYkF2Vud9Cl1uzO3TJZmnQ",
"jaOQodhZaDcEJ8_1Y2hjOlKk3f5SiaYfYU-xqDlervLdeYgHumkniw",
"2iPk5lcTYdl_-S7odsLbN8Kij20pVNHmGSDC6gIJHIIRQ74JitP_LA",
"cl82VDi7xQNO77v3CC7X8wcQ4i_C-K9uuKZyqnvh4KHi0ciwqXyOKA",
"UTHZNg9gx0lZ4laDUz7S5xQ5e83vxrufqp7PbPCJx29AxhzX9DL62A",
"rwlasXNiQXXxfRBXv78DkQeSS1S3ubV0ulrXK8cZgmCDkHAIoWvU0w",
"JgAVc5U5lsfrbSx1gx0_SYQcO0q_K2HX8Vir5SIdiM-Z-PuHAG5cRg",
"V_rSldMaE9P_-uEfSsyh1ojEYep4Xma3NY7BIKzuicj_wEkCqFramw",
]
living_space_data = dict(
build_parts_uu_id="68b5e3d9-c546-4ebd-98f5-df468f20cc54",
person_uu_id="dc135536-086f-4e11-af3a-02c7cf65f265",
occupant_type_uu_id="a47372a9-67da-4dfb-82a9-51f9ca15ef63",
expiry_starts=arrow.now().date().__str__(),
)
manager_token = ""
people_uu_id = ""
list_of_attendees = []
assign_people_to_create_item = -1
if assign_people_to_create_item == -1:
local_api.selected_object = local_api.login_via_email_and_password(
login_data=login_data, is_password_valid=False
@@ -113,15 +77,44 @@ if assign_people_to_create_item == -1:
migrate_build(requester=both_apis)
migrate_build_living_space(requester=both_apis)
# migrate_account_records(requester=both_apis)
if assign_people_to_create_item == 0:
if not bool(selection_list):
local_api.selected_object = local_api.login_via_email_and_password(
login_data=login_data, is_password_valid=True
)
response = local_api.post(endpoint="/building/living_space/create", data=living_space_data)
print('response', response.text)
occupant_manager = get_occupants_types(
occupant_code="BU-MNG", requester=both_apis.local_api
)["data"]["uu_id"]
response = both_apis.local_api.post(
endpoint="/building/parts/list",
data={"query": {"part_code": "MAN-ROOM"}},
)
print("text", response.text)
print("json", response.json())
response_json = response.json()
build_parts_uu_id = response_json["data"][0]["uu_id"]
response = both_apis.local_api.post(
endpoint="/user/list",
data={"query": {"email": "mehmet.karatay@hotmail.com"}},
)
print("text", response.text)
print("json", response.json())
response_json = response.json()
person_uu_id = response_json["data"][0]["person_uu_id"]
response = local_api.post(
endpoint="/building/living_space/create",
data=dict(
build_parts_uu_id=build_parts_uu_id,
person_uu_id=person_uu_id,
occupant_type_uu_id=occupant_manager,
expiry_starts=arrow.now().date().__str__(),
),
)
print("response", response.text)
local_api.selected_object = local_api.login_via_email_and_password(
login_data=login_creds_occupant,
@@ -159,31 +152,33 @@ elif assign_people_to_create_item == 2:
selection_list=selection_list,
)
assign_people_to_pre_or_wrt(
person_uu_id=people_uu_id_list[0],
person_uu_id=people_uu_id,
manager_token=manager_token,
occupant_code="MT-VPR",
requester=both_apis.local_api,
)
assign_people_to_pre_or_wrt(
person_uu_id=people_uu_id_list[1],
person_uu_id=people_uu_id,
manager_token=manager_token,
occupant_code="MT-WRT",
requester=both_apis.local_api,
)
assign_people_to_pre_or_wrt(
person_uu_id=people_uu_id_list[2],
person_uu_id=people_uu_id,
manager_token=manager_token,
occupant_code="MT-PRS",
requester=both_apis.local_api,
)
elif assign_people_to_create_item == 3:
local_api.selected_object = local_api.login_via_email_and_password(
login_data=wrt_creds_occupant,
login_data=login_creds_occupant,
is_password_valid=True,
selection_list=selection_list,
)
selected_decision_book_uu_id = list_decision_books(requester=both_apis.local_api)["data"][0]["uu_id"]
selected_decision_book_uu_id = list_decision_books(requester=both_apis.local_api)[
"data"
][0]["uu_id"]
print("select_company_uu_id", local_api.selected_object)
is_fixed_price = False
@@ -200,100 +195,126 @@ elif assign_people_to_create_item == 3:
)["data"]["uu_id"]
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="En son toplantıda bahsedilen 2 nolu daireyi etkiliyen çözüm için kanalizasyon ve "
"tamirleri için fiyat alınarak arka alan yağmur suyu direnajının yaplımasının projelendirilmesi.",
"tamirleri için fiyat alınarak arka alan yağmur suyu direnajının yaplımasının projelendirilmesi.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
unit_price = 17.04
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_deb_uu_id,
item_comment="Aidat gündemi için 1,2,3 nolu daireler için 1400 TL, diğer daireler için 1500 TL "
"olmasına karar verildi.",
"olmasına karar verildi.",
unit_price=unit_price,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="Hali hazırda yöneticilik görevini ifa eden 4 nolu daire sahibi Mehmet Karatayın bu "
"görevinin devam etmesine ve apartmanın bank hesaplarının kullanımı ile ilgili yetkisinin devam etmesine.",
"görevinin devam etmesine ve apartmanın bank hesaplarının kullanımı ile ilgili yetkisinin devam etmesine.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="Kiriş içinden geçen borunun çıkarılmadan kesilmesine, gerekli tadilatın yapılıp problemin "
"çözülmesine ayrıca bu aşamada yaplımasına onay verilirse her daire kendi radyatölerinin temizliği ve tadilatın yapılmasına.",
"çözülmesine ayrıca bu aşamada yaplımasına onay verilirse her daire kendi radyatölerinin temizliği ve tadilatın yapılmasına.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="Dogalgazdan tadilatında çıkan eski boruların satışının yapılmasına.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="Apartman içinin tadilat yapılması, ışık ve elektrik sisteminin elden geçirilmesine ve elektrik "
"sayaç il panoların kutuya konulmasına, doğalgaz borularının astar boya ile "
"boyanmasına teklif alınarak projec açılması.",
"sayaç il panoların kutuya konulmasına, doğalgaz borularının astar boya ile "
"boyanmasına teklif alınarak projec açılması.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="İç kapı teklif alınarak gerektiğinde tadilatın geliştirilmesi, tek kapı yapılması "
"yada iki kapının alternatifi ile değerlendirilerek fiyat alınması.",
"yada iki kapının alternatifi ile değerlendirilerek fiyat alınması.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="Bina su deposunun temizletilmesi.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_reno_uu_id,
item_comment="Çatının havalandırma camlarının değiştirilmesi ve onarılması.",
start_date=start_date,
end_date=end_date,
requester=both_apis.local_api
requester=both_apis.local_api,
)
run_decision_book_items(
writers_token=writers_token,
writers_token=manager_token,
info_type_uu_id=info_type_inf_uu_id,
item_comment="Arka zemin daire sahibinin yoğun yağmurlarda evin su basmaması için "
"arka bölüme saçak yapabilmesine onay verildi.",
requester=both_apis.local_api
"arka bölüme saçak yapabilmesine onay verildi.",
requester=both_apis.local_api,
)
elif assign_people_to_create_item == 4:
pass
# project_lead_creds_occupant = {
# "domain": "evyos.com.tr",
# "access_key": "",
# "password": "string",
# "remember_me": False,
# "password_token": "",
# }
local_api.selected_object = local_api.login_via_email_and_password(
login_data=login_creds_occupant,
is_password_valid=True,
selection_list=selection_list,
)
response = both_apis.local_api.post(
endpoint="/build/decision_book/project/list",
data={"query": {"project_no": "BDT-R_2024_1"}},
)
print("text", response.text)
print("json", response.json())
response_json = response.json()
project_uu_id = response_json["data"][0]["uu_id"]
print("project_uu_id", project_uu_id)
exit()
selected_decision_book_uu_id = list_decision_books(requester=both_apis.local_api)[
"data"
][0]["uu_id"]
print("select_company_uu_id", local_api.selected_object)