diff --git a/src/aeros_equipment/model.py b/src/aeros_equipment/model.py index ca4588e..50b96de 100644 --- a/src/aeros_equipment/model.py +++ b/src/aeros_equipment/model.py @@ -115,3 +115,9 @@ class AerosEquipmentCustomParameterData(Base, DefaultMixin): level = Column(String(20), nullable=False) failure_rates = Column(ARRAY(Numeric), nullable=True) mttr = Column(Numeric, nullable=True) + + +class AerosEquipmentGroup(Base, DefaultMixin): + __tablename__ = "rbd_ms_aeros_group_equipment" + + group_name = Column(String(100), nullable=False) diff --git a/src/aeros_equipment/service.py b/src/aeros_equipment/service.py index 9c6cbb7..b09540a 100644 --- a/src/aeros_equipment/service.py +++ b/src/aeros_equipment/service.py @@ -10,7 +10,7 @@ from src.auth.service import CurrentUser from src.config import AEROS_BASE_URL, DEFAULT_PROJECT_NAME from src.database.core import DbSession from src.database.service import search_filter_sort_paginate -from .model import AerosEquipment, AerosEquipmentDetail, MasterEquipment +from .model import AerosEquipment, AerosEquipmentDetail, MasterEquipment, AerosEquipmentGroup from .schema import EquipmentConfiguration from src.aeros_project.model import AerosProject from src.aeros_simulation.model import AerosNode @@ -288,11 +288,17 @@ async def update_equipment_for_simulation(*, db_session: DbSession, project_name AerosNode.node_type == "RegularNode" )) + rbd_group = Select(AerosEquipmentGroup) + print("Getting equipment nodes") equipment_nodes = await db_session.execute(equipments) + rbd_group_nodes = await db_session.execute(rbd_group) + + group_nodes = [group.group_name for group in rbd_group_nodes.scalars().all()] reg_nodes = [node.location_tag for node in equipment_nodes.scalars().all()] + reg_nodes.extend(group_nodes) nodes_data = await get_aeros_equipment_by_location_tag( location_tag=reg_nodes, project_name=project_name