84 lines
2.7 KiB
Python
84 lines
2.7 KiB
Python
def create_modules_and_services_and_actions(db_session):
|
||
from Schemas import (
|
||
Duty,
|
||
OccupantTypes,
|
||
Modules,
|
||
Services,
|
||
)
|
||
|
||
erp_module = Modules.find_or_create(
|
||
**{
|
||
"module_name": "EVYOS ERP",
|
||
"module_description": "EVYOS Enterprise Resource Planning",
|
||
"module_code": "EVYOS-ERP",
|
||
"module_layer": 1,
|
||
"is_default_module": False,
|
||
"is_confirmed": True,
|
||
},
|
||
db=db_session,
|
||
)
|
||
erp_module.save(db=db_session)
|
||
|
||
build_module = Modules.find_or_create(
|
||
**{
|
||
"module_name": "Bina Yönetim Modülü",
|
||
"module_description": "Building Management Module",
|
||
"module_code": "BLD-MNG",
|
||
"module_layer": 1,
|
||
"is_default_module": False,
|
||
"is_confirmed": True,
|
||
},
|
||
db=db_session,
|
||
)
|
||
build_module.save(db=db_session)
|
||
|
||
user_module = Modules.find_or_create(
|
||
**{
|
||
"module_name": "Kullancı Modülü",
|
||
"module_description": "Kullanıcı Genel Modülü",
|
||
"module_code": "USR-PUB",
|
||
"module_layer": 1,
|
||
"is_default_module": True,
|
||
"is_confirmed": True,
|
||
},
|
||
db=db_session,
|
||
)
|
||
user_module.save(db=db_session)
|
||
|
||
erp_module_module_dict = dict(
|
||
module_id=erp_module.id,
|
||
module_uu_id=str(erp_module.uu_id),
|
||
)
|
||
build_module_module_dict = dict(
|
||
module_id=build_module.id,
|
||
module_uu_id=str(build_module.uu_id),
|
||
)
|
||
duty_objects = Duty.filter_all(
|
||
Duty.duty_code.notin_(["BULK", "OCCUPANT", "BM0001"]),
|
||
db=db_session,
|
||
).data
|
||
for duty_object in duty_objects:
|
||
created_service = Services.find_or_create(
|
||
**erp_module_module_dict,
|
||
service_name=duty_object.duty_name,
|
||
service_description=duty_object.duty_description,
|
||
service_code=f"SRE-{duty_object.duty_code}",
|
||
related_responsibility=duty_object.duty_code,
|
||
is_confirmed=True,
|
||
db=db_session,
|
||
)
|
||
created_service.save(db=db_session)
|
||
|
||
occupant_types = OccupantTypes.filter_all(db=db_session).data
|
||
for occupant_type in occupant_types:
|
||
created_service = Services.find_or_create(
|
||
**build_module_module_dict,
|
||
service_name=occupant_type.occupant_type,
|
||
service_description=occupant_type.occupant_description,
|
||
service_code=f"SRO-{occupant_type.occupant_code}",
|
||
related_responsibility=occupant_type.occupant_code,
|
||
is_confirmed=True,
|
||
db=db_session,
|
||
)
|
||
created_service.save(db=db_session)
|