From 952cdb1bc7ba7f5adf99742326c00e33497257f6 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Sun, 4 Jan 2026 13:55:09 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20get=5Fbatch=5Fdag=E8=BF=98=E6=98=AF?= =?UTF-8?q?=E5=8F=AA=E8=BF=94=E5=9B=9E=E7=9B=B4=E6=8E=A5=E5=89=8D=E5=90=8E?= =?UTF-8?q?=E7=BA=A7=E5=88=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/wpm/services.py | 53 ++++++++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/apps/wpm/services.py b/apps/wpm/services.py index 3f296312..7b265863 100644 --- a/apps/wpm/services.py +++ b/apps/wpm/services.py @@ -1062,6 +1062,7 @@ def get_batch_dag(batch_number: str, method="full"): } if method == "full": + raise ParseError("不支持获取全局关系链条") # 完整DAG模式 - 收集所有相关批次和边(原逻辑) nodes_set = {batch_ins.id} edges = [] @@ -1118,33 +1119,33 @@ def get_batch_dag(batch_number: str, method="full"): }) # 查询作为source的其他关系 - leftLogs = BatchLog.objects.filter(source_id__in=left_source_ids).exclude(id__in=exist_log_ids) - for log in leftLogs: - source = log.source.id - target = log.target.id - nodes_set.add(log.target.id) - edges.append({ - 'id': log.id, - 'source': source, - 'target': target, - "handover": log.handover.id if log.handover else None, - "mlog": log.mlog.id if log.mlog else None, - 'label': r_dict.get(log.relation_type, ""), - }) + # leftLogs = BatchLog.objects.filter(source_id__in=left_source_ids).exclude(id__in=exist_log_ids) + # for log in leftLogs: + # source = log.source.id + # target = log.target.id + # nodes_set.add(log.target.id) + # edges.append({ + # 'id': log.id, + # 'source': source, + # 'target': target, + # "handover": log.handover.id if log.handover else None, + # "mlog": log.mlog.id if log.mlog else None, + # 'label': r_dict.get(log.relation_type, ""), + # }) - rightLogs = BatchLog.objects.filter(target_id__in=right_target_ids).exclude(id__in=exist_log_ids) - for log in rightLogs: - source = log.source.id - target = log.target.id - nodes_set.add(log.source.id) - edges.append({ - 'id': log.id, - 'source': source, - 'target': target, - "handover": log.handover.id if log.handover else None, - "mlog": log.mlog.id if log.mlog else None, - 'label': r_dict.get(log.relation_type, ""), - }) + # rightLogs = BatchLog.objects.filter(target_id__in=right_target_ids).exclude(id__in=exist_log_ids) + # for log in rightLogs: + # source = log.source.id + # target = log.target.id + # nodes_set.add(log.source.id) + # edges.append({ + # 'id': log.id, + # 'source': source, + # 'target': target, + # "handover": log.handover.id if log.handover else None, + # "mlog": log.mlog.id if log.mlog else None, + # 'label': r_dict.get(log.relation_type, ""), + # }) else: raise ParseError("不支持的查询方法,请使用'full'或'direct'")