|
|
|
@ -68,21 +68,6 @@ class EnterpriseBusiModel(Base):
|
|
|
|
|
return f"EnterpriseBusiModel(id={self.id}, suid='{self.suid}', name='{self.name}')"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class EnterpriseBusiModelNode(Base):
|
|
|
|
|
__tablename__ = 'enterprise_busi_model_node'
|
|
|
|
|
|
|
|
|
|
id = Column(Integer, primary_key=True)
|
|
|
|
|
suid = Column(String(10), nullable=False, default='')
|
|
|
|
|
entity_suid = Column(String(10))
|
|
|
|
|
busi_model_id = Column(Integer)
|
|
|
|
|
busi_model_suid = Column(String(10))
|
|
|
|
|
node_id = Column(Integer)
|
|
|
|
|
node_suid = Column(String(10))
|
|
|
|
|
create_time = Column(DateTime, default=func.current_timestamp())
|
|
|
|
|
|
|
|
|
|
def __repr__(self):
|
|
|
|
|
return f'<EnterpriseBusiModelNode(id={self.id}, suid={self.suid})>'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class EnterpriseBusiModelRepository(object):
|
|
|
|
|
|
|
|
|
@ -184,6 +169,22 @@ class EnterpriseBusiModelRepository(object):
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class EnterpriseBusiModelNode(Base):
|
|
|
|
|
__tablename__ = 'enterprise_busi_model_node'
|
|
|
|
|
|
|
|
|
|
id = Column(Integer, primary_key=True)
|
|
|
|
|
suid = Column(String(10), nullable=False, default='')
|
|
|
|
|
entity_suid = Column(String(10))
|
|
|
|
|
busi_model_id = Column(Integer)
|
|
|
|
|
busi_model_suid = Column(String(10))
|
|
|
|
|
node_id = Column(Integer)
|
|
|
|
|
node_suid = Column(String(10))
|
|
|
|
|
create_time = Column(DateTime, default=func.current_timestamp())
|
|
|
|
|
|
|
|
|
|
def __repr__(self):
|
|
|
|
|
return f'<EnterpriseBusiModelNode(id={self.id}, suid={self.suid})>'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class EnterpriseBusiModelNodeRepository(object):
|
|
|
|
|
# def get_by_id(self, id: int) -> Optional[EnterpriseBusiModelNode]:
|
|
|
|
|
# return self.db.query(EnterpriseBusiModelNode).filter(EnterpriseBusiModelNode.id == id).first()
|
|
|
|
@ -220,7 +221,32 @@ class EnterpriseBusiModelNodeRepository(object):
|
|
|
|
|
EnterpriseBusiModelNode.busi_model_id == busi_model_id).delete()
|
|
|
|
|
session.commit()
|
|
|
|
|
|
|
|
|
|
def get_busi_model_by_node_id(self, node_id: int) -> Optional[EnterpriseBusiModelNode]:
|
|
|
|
|
def get_busi_model_by_node_id(self, node_id: int, page_no: int = 1, page_size: int = 10) -> Dict[Any, Any]:
|
|
|
|
|
with get_session() as session:
|
|
|
|
|
model = session.query(EnterpriseBusiModelNode).filter(EnterpriseBusiModelNode.node_id == node_id).first()
|
|
|
|
|
return model
|
|
|
|
|
models = (
|
|
|
|
|
session.query(
|
|
|
|
|
EnterpriseBusiModel.id.label("busi_model_id"),
|
|
|
|
|
EnterpriseBusiModel.name.label("busi_model_name"),
|
|
|
|
|
EnterpriseBusiModel.create_time
|
|
|
|
|
)
|
|
|
|
|
.outerjoin(EnterpriseBusiModelNode, EnterpriseBusiModel.id == EnterpriseBusiModelNode.busi_model_id)
|
|
|
|
|
.filter(EnterpriseBusiModelNode.node_id == node_id)
|
|
|
|
|
.offset((page_no - 1) * page_size)
|
|
|
|
|
.limit(page_size)
|
|
|
|
|
.all()
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
total_count = session.query(func.count(EnterpriseBusiModelNode.id)).filter(
|
|
|
|
|
EnterpriseBusiModelNode.node_id == node_id).scalar()
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
"count": total_count,
|
|
|
|
|
"data": [
|
|
|
|
|
{
|
|
|
|
|
"busi_model_id": model.busi_model_id,
|
|
|
|
|
"busi_model_name": model.busi_model_name,
|
|
|
|
|
"create_time": model.create_time.strftime("%Y-%m-%d %H:%M:%S"),
|
|
|
|
|
} for model in models
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|