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, ) 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, ) 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.people import migrate_people from service_app_test.test_application.migrate_old_data.building import ( migrate_build, migrate_build_living_space, ) from service_app_test.test_application.migrate_old_data.company import migrate_company 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) 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", "password": "string", "remember_me": False, "password_token": password_token, } login_creds_occupant = { "domain": "evyos.com.tr", "access_key": "mehmet.karatay@hotmail.com", "password": "string", "remember_me": False, "password_token": password_token_occ, } selection_list = [ # "523dbcd3-fe87-4208-86c2-da45204dfafc", # "24aed2e5-bca0-4657-a056-badf9b3aa81c", ] 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 ) migrate_company(requester=both_apis) migrate_people(requester=both_apis) 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 ) 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, is_password_valid=bool(selection_list), selection_list=selection_list, ) selected_decision_book_uu_id = run_decision_book_depends( requester=both_apis.local_api ) send_invitation = { "build_decision_book_uu_id": selected_decision_book_uu_id, "message": "Request for a Regular Building Meeting", "planned_date": arrow.now().shift(days=2).date().__str__(), } send_invitation_to_building_residents( send_invitation_dict=send_invitation, requester=both_apis.local_api ) elif assign_people_to_create_item == 1: local_api.selected_object = local_api.login_via_email_and_password( login_data=login_creds_occupant, is_password_valid=True, selection_list=selection_list, ) count = 7 list_of_attendees.insert(0, manager_token) collect_invitation_to_building_residents( attended_dict_list=list_of_attendees, attend_count=count + 1, requester=both_apis.local_api, ) elif assign_people_to_create_item == 2: local_api.selected_object = local_api.login_via_email_and_password( login_data=login_creds_occupant, is_password_valid=True, selection_list=selection_list, ) assign_people_to_pre_or_wrt( 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, 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, 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=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"] print("select_company_uu_id", local_api.selected_object) is_fixed_price = False start_date, end_date = "2024-11-01", "2024-12-01" info_type_reno_uu_id = get_type_codes_key_and_class( class_name="BuildDuesTypes", key_name="BDT-R", requester=both_apis.local_api )["data"]["uu_id"] info_type_deb_uu_id = get_type_codes_key_and_class( class_name="BuildDuesTypes", key_name="BDT-D", requester=both_apis.local_api )["data"]["uu_id"] info_type_inf_uu_id = get_type_codes_key_and_class( class_name="BuildDuesTypes", key_name="BDT-I", requester=both_apis.local_api )["data"]["uu_id"] run_decision_book_items( 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.", start_date=start_date, end_date=end_date, requester=both_apis.local_api, ) unit_price = 17.04 run_decision_book_items( 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.", unit_price=unit_price, requester=both_apis.local_api, ) run_decision_book_items( 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.", start_date=start_date, end_date=end_date, requester=both_apis.local_api, ) run_decision_book_items( 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.", start_date=start_date, end_date=end_date, requester=both_apis.local_api, ) run_decision_book_items( 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, ) run_decision_book_items( 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ı.", start_date=start_date, end_date=end_date, requester=both_apis.local_api, ) run_decision_book_items( 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ı.", start_date=start_date, end_date=end_date, requester=both_apis.local_api, ) run_decision_book_items( 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, ) run_decision_book_items( 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, ) run_decision_book_items( 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, ) elif assign_people_to_create_item == 4: # 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)