alchemy flush and save functions updated
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
from service_app_test.api_configs import BothAPIS
|
||||
|
||||
|
||||
def migrate_build(requester: BothAPIS):
|
||||
return
|
||||
|
||||
def migrate_build_area(requester: BothAPIS):
|
||||
return
|
||||
|
||||
def migrate_build_part(requester: BothAPIS):
|
||||
return
|
||||
|
||||
def migrate_build_iban(requester: BothAPIS):
|
||||
return
|
||||
|
||||
def migrate_build_living_space(requester: BothAPIS):
|
||||
return
|
||||
@@ -0,0 +1,31 @@
|
||||
from service_app_test.api_configs import BothAPIS
|
||||
from service_app_test.bases import FilterObject
|
||||
|
||||
|
||||
def migrate_company(requester: BothAPIS):
|
||||
filter_object = FilterObject(
|
||||
page=1,
|
||||
size=100,
|
||||
order_field="id",
|
||||
order_type="asc",
|
||||
)
|
||||
response = requester.wag_api.post(
|
||||
endpoint="/company/list",
|
||||
data=filter_object.dump(),
|
||||
)
|
||||
response_json = response.json()
|
||||
print('response_json', response_json)
|
||||
response_datas = response_json['data']
|
||||
for response_data in response_datas:
|
||||
print('response_data', response_data)
|
||||
response_data['active'] = True
|
||||
response_data['deleted'] = False
|
||||
response_data['is_confirmed'] = True
|
||||
response_data['expiry_starts'] = None
|
||||
response_data['expiry_ends'] = None
|
||||
response = requester.local_api.post(
|
||||
endpoint="/company/create",
|
||||
data=response_data,
|
||||
)
|
||||
print('response', response.text)
|
||||
return
|
||||
@@ -0,0 +1,6 @@
|
||||
from service_app_test.api_configs import BothAPIS
|
||||
|
||||
|
||||
def migrate_people(requester: BothAPIS):
|
||||
# Migrate old data
|
||||
pass
|
||||
@@ -0,0 +1,39 @@
|
||||
from time import perf_counter
|
||||
from json import loads
|
||||
|
||||
system_default = dict(
|
||||
is_confirmed=True,
|
||||
active=True,
|
||||
deleted=False,
|
||||
is_notification_send=True,
|
||||
created_by="System",
|
||||
confirmed_by="System",
|
||||
)
|
||||
|
||||
|
||||
def read_json_file(json_directory, json_file):
|
||||
with open(f"{json_directory}/{json_file}.json", "r", encoding='utf-8') as json_file:
|
||||
return loads(json_file.read())
|
||||
|
||||
|
||||
def bulk_insert_alchemy_postgresql(active_session, table, data_list, on_conflict_constraints = None):
|
||||
from sqlalchemy.dialects.postgresql import insert
|
||||
|
||||
st = perf_counter()
|
||||
if on_conflict_constraints:
|
||||
session_execute = active_session.execute(
|
||||
insert(table)
|
||||
.values(data_list)
|
||||
.on_conflict_do_nothing(
|
||||
index_elements=on_conflict_constraints or [],
|
||||
)
|
||||
)
|
||||
else:
|
||||
session_execute = active_session.execute(
|
||||
insert(table)
|
||||
.values(data_list)
|
||||
)
|
||||
count_row = session_execute.rowcount
|
||||
print(f'Table : {table.__name__} count_row : {count_row} : time took : {round(perf_counter() - st, 2)} seconds')
|
||||
active_session.commit()
|
||||
active_session.flush()
|
||||
52
service_app_test/test_application/migrate_old_data/runner.py
Normal file
52
service_app_test/test_application/migrate_old_data/runner.py
Normal file
@@ -0,0 +1,52 @@
|
||||
from service_app_test.bases import RequestToApi
|
||||
from service_app_test.api_configs import WagAPI, LocalAPI, BothAPIS
|
||||
|
||||
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_area,
|
||||
migrate_build_part,
|
||||
migrate_build_iban,
|
||||
migrate_build_living_space,
|
||||
)
|
||||
from service_app_test.test_application.migrate_old_data.company import migrate_company
|
||||
|
||||
|
||||
login_data = {
|
||||
"domain": "evyos.com.tr",
|
||||
"access_key": "karatay.berkay.sup@evyos.com.tr",
|
||||
"password": "string",
|
||||
"remember_me": False,
|
||||
"password_token": "z5nPguDu6PrY_94KlTGxGBCMcK6rZcDl5AGqO5aHWY7TcQF8LJGYikMQs9labvqdz5yM7vE_f8Zq_vqp00o3EnWwWCWhel-EsMcAujBKNRjV3jC_4xk0_1r_unIYogWAjz_spZipX6pncsch2ngvv0dpx4lHSiZ5QrDTA1RefQ",
|
||||
}
|
||||
login_data_wag = {
|
||||
"domain": "evyos.com.tr",
|
||||
"access_key": "karatay.berkay.sup@evyos.com.tr",
|
||||
"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)
|
||||
local_api.selected_object = local_api.login_via_email_and_password(
|
||||
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_build(requester=both_apis)
|
||||
migrate_build_area(requester=both_apis)
|
||||
migrate_build_part(requester=both_apis)
|
||||
migrate_build_iban(requester=both_apis)
|
||||
migrate_build_living_space(requester=both_apis)
|
||||
Reference in New Issue
Block a user