diff --git a/website/db/alg_model/alg_model.py b/website/db/alg_model/alg_model.py index e363111..764540a 100644 --- a/website/db/alg_model/alg_model.py +++ b/website/db/alg_model/alg_model.py @@ -52,4 +52,14 @@ class ModelRepositry(object): if not model or not model.suid: return "" - return model.suid \ No newline at end of file + return model.suid + + def get_model_by_id(self, model_id: int) -> Model | None: + + session = get_session() + with get_session() as session: + model = session.query(Model).filter(Model.id == model_id).first() + if not model: + return None + + return model \ No newline at end of file diff --git a/website/db/enterprise_busi_model/enterprise_busi_model.py b/website/db/enterprise_busi_model/enterprise_busi_model.py index c47a3cb..092a6cd 100644 --- a/website/db/enterprise_busi_model/enterprise_busi_model.py +++ b/website/db/enterprise_busi_model/enterprise_busi_model.py @@ -98,10 +98,12 @@ class EnterpriseBusiModelRepository(object): base_model_db = DB_alg_model.ModelRepositry() base_model = [] for base_model_id in base_model_ids: - base_model_suid = base_model_db.get_suid(base_model_id) + # base_model_suid = base_model_db.get_suid(base_model_id) + base_model_info = base_model_db.get_model_by_id(base_model_id) base_model.append({ 'id': base_model_id, - 'suid': base_model_suid + 'suid': base_model_info.suid, + 'name': base_model_info.name, }) data['base_models'] = json.dumps(base_model) new_data = copy.copy(data) @@ -146,7 +148,6 @@ class EnterpriseBusiModelRepository(object): 获取企业部署的业务模型列表 Args: - session (Session): SQLAlchemy 数据库会话 entity_id (int): 企业 ID page_no (int): 页码 page_size (int): 每页数量 diff --git a/website/db/file/file.py b/website/db/file/file.py index b6afb53..2f86acd 100644 --- a/website/db/file/file.py +++ b/website/db/file/file.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -from typing import List, Dict, Any +from typing import List, Dict, Any, Type from sqlalchemy import Column, Integer, String, DateTime, func, text from sqlalchemy.ext.declarative import declarative_base @@ -43,12 +43,12 @@ class File(Base): class FileRepository(object): - def get_file_by_md5(self, md5_list: List[str]) -> List(File): + def get_file_by_md5(self, md5_list: List[str]) -> List[File]: with get_session() as session: # return ( # session.query(File).filter(File.md5_str == md5_str).first() # ) - + return session.query(File).filter(File.md5_str.in_(md5_list)).all() \ No newline at end of file diff --git a/website/handlers/enterprise_busi_model/handler.py b/website/handlers/enterprise_busi_model/handler.py index 0427096..df865d1 100644 --- a/website/handlers/enterprise_busi_model/handler.py +++ b/website/handlers/enterprise_busi_model/handler.py @@ -155,7 +155,7 @@ class InfoHandler(APIHandler): link_nodes = db_model_node.get_nodes_by_busi_model(busimodel_id) link_node_list = [] for node in link_nodes: - link_node_list.append(node.node_id) + link_node_list.append({"node_id": node.node_id, "node_name": node.node_name}) self.finish({ "name": busi_model_data.name, @@ -166,7 +166,7 @@ class InfoHandler(APIHandler): "business_conf_name": business_conf_name, # 业务参数配置文件名 "business_conf_md5": busi_model_data.business_conf_file, # 业务参数配置md5 "business_conf_param": busi_model_data.business_conf_param, # 业务参数配置的字段 - "link_node_list": ",".join(link_node_list) # 关联节点的id,多个id逗号分割 + "link_node_list": link_node_list # 关联节点的id,多个id逗号分割 })