build & events updated

This commit is contained in:
2024-11-13 22:31:42 +03:00
parent 83b3a5989e
commit ac037ae54a
9 changed files with 215 additions and 145 deletions

View File

@@ -1,4 +1,5 @@
from service_app_test.api_configs import BothAPIS
from service_app_test.test_application.evyos.address_building import post_code_dict
from service_app_test.test_application.migrate_old_data.reader_and_alchemy_bulk_actions import (
read_json_file,
)
@@ -73,6 +74,14 @@ def get_build_iban_from_json():
return with_pydantic
address_dict = lambda post_code_uu_id: {
"post_code_uu_id": post_code_uu_id,
"comment_address": "Reşat Nuri Cad No 11",
"letter_address": "Reşat Nuri Cad No 11 ÇANKAYA ANKARA TÜRKİYE",
"short_letter_address": "Reşat Nuri Cad No 11 ÇANKAYA ANKARA TÜRKİYE",
"build_number": "11",
}
def get_build_living_space_from_json():
read_files_json, with_pydantic = read_json_file(json_file="build_living_space"), []
read_files = read_files_json.get("build_living_space")
@@ -84,20 +93,75 @@ def get_build_living_space_from_json():
return with_pydantic
def create_address(requester: BothAPIS, post_code):
post_code_response = requester.local_api.post(
endpoint="/postcode/create",
data=post_code,
)
print("post_code_response", post_code_response.text)
response_post_code = post_code_response.json()
return response_post_code
def search_street(search_text, requester):
response = requester.local_api.post(
endpoint="/address/search",
data={
"search": search_text,
"list_options": {
"page": 1,
"size": 30,
},
},
)
response_object = response.json()
print("text", response.text)
print("response_object", response_object)
for street_data in response_object.get("data"):
condition_of_street = (
street_data["AddressCity.city_name"] == "ANKARA"
and street_data["AddressDistrict.district_name"] == "ÇANKAYA"
)
if condition_of_street:
print("street_uu_id", street_data["AddressStreet.uu_id"])
return street_data["AddressStreet.uu_id"]
def create_addresses(address, requester):
address_response = requester.local_api.post(
endpoint="/address/create",
data=address,
)
print("text", address_response.text)
print("json", address_response.json())
response_address = address_response.json()
return response_address
def migrate_build(requester: BothAPIS):
street_uu_id = search_street("Reşat Nuri", requester=requester)
response_post_code = create_address(requester=requester, post_code=post_code_dict(uu_id_street=street_uu_id))
print("response_post_code", response_post_code)
created_address = create_addresses(
address=address_dict(post_code_uu_id=response_post_code["data"]["uu_id"]),
requester=requester
)
print('created_address', created_address)
created_address_uu_id = created_address["data"]["uu_id"]
for response_data in get_build_from_json():
print("response_data", response_data)
response_data["address_uu_id"] = created_address_uu_id
exit()
response = requester.local_api.post(**requester_dict_build(data=response_data))
print("response", response.text)
if response.ok:
migrate_build_area(
requester=requester, build_uu_id=response_data["build_uu_id"]
)
migrate_build_part(
requester=requester, build_uu_id=response_data["build_uu_id"]
)
migrate_build_iban(
requester=requester, build_uu_id=response_data["build_uu_id"]
)
build_uu_id = response.json()["data"]["uu_id"]
print("response build_uu_id", build_uu_id)
exit()
migrate_build_area(requester=requester, build_uu_id=build_uu_id)
migrate_build_part(requester=requester, build_uu_id=build_uu_id)
migrate_build_iban(requester=requester, build_uu_id=build_uu_id)
return

View File

@@ -1,33 +1,30 @@
from service_app_test.api_configs import BothAPIS
from service_app_test.bases import FilterObject
import random
from service_app_test.api_configs import BothAPIS
from api_validations.validations_request import InsertPerson
from service_app_test.test_application.migrate_old_data.reader_and_alchemy_bulk_actions import (
read_json_file,
)
requester_dict_build = lambda data: {"endpoint": "/people/create", "data": data}
def get_people_from_json():
read_files_json, with_pydantic = read_json_file(json_file="people"), []
read_files = read_files_json.get("people")
for row in read_files:
pydantic_row = InsertPerson(**row)
with_pydantic.append(pydantic_row.model_dump())
if not with_pydantic:
raise Exception("No data found")
return with_pydantic
generate_random_national_identity_id = lambda n: str(random.randint(10 ** (n - 1), 10**n))
def migrate_people(requester: BothAPIS):
# Migrate old data
filter_object = FilterObject(
page=1,
size=100,
)
response = requester.wag_api.post(
endpoint="/people/list",
data=filter_object.dump(),
)
response_json = response.json()
response_datas = response_json["data"]
counter = 0
for response_data in response_datas:
new_response_data = dict()
for key, value in dict(response_data).items():
if value is not None and not str(value) == "None":
new_response_data[key] = response_data[key]
new_response_data.pop("uu_id", None)
print("new_response_data", new_response_data)
new_response_data["national_identity_id"] = f"000000000{str(counter).zfill(2)}"
response = requester.local_api.post(
endpoint="/people/create",
data=new_response_data,
)
for response_data in get_people_from_json():
response_data["national_identity_id"] = generate_random_national_identity_id(11)
response = requester.local_api.post(**requester_dict_build(data=response_data))
print("response", response.text)
if response.ok:
counter += 1
return

View File

@@ -13,7 +13,7 @@ login_data = {
"access_key": "karatay.berkay.sup@evyos.com.tr",
"password": "string",
"remember_me": False,
"password_token": "",
"password_token": "Jx4t2JM3Xc_yNGCBe-hk_4c299ov51_s20kQueVUjm-NJU0KGWENm3alGfyGO6-y79esC5WtuhXHAsw35XJYFn-UOdUAvuW6kbHk-F2MTNbavXMp2f_UdkPrav0PppZEQ2TRcIJQ6DzFWO0ONOxJMhcGTUbqxO4DfidKiq_VjYUqfwcl6ZxSsJolctLzyfwf",
}
login_data_wag = {
"domain": "evyos.com.tr",
@@ -32,13 +32,13 @@ wag_api.selected_object = wag_api.login_via_email_and_password(
local_api = RequestToApi()
local_api.overwrite_base_url(base_url=LocalAPI.base_url)
local_api.selected_object = local_api.login_via_email_and_password(
login_data=login_data, is_password_valid=True
login_data=login_data, is_password_valid=False
)
both_apis = BothAPIS()
both_apis.wag_api = wag_api
both_apis.local_api = local_api
migrate_company(requester=both_apis)
migrate_people(requester=both_apis)
# migrate_company(requester=both_apis)
# migrate_people(requester=both_apis)
migrate_build(requester=both_apis)