Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions apps/application/serializers/application_serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -552,6 +552,7 @@ def publish(self, instance, with_valid=True):
dataset_list = self.list_dataset(with_valid=False)
dataset_id_list = self.update_reverse_search_node(work_flow,
[str(dataset.get('id')) for dataset in dataset_list])

application.work_flow = work_flow
application.save()
# 插入知识库关联关系
Expand Down Expand Up @@ -589,7 +590,7 @@ def update_search_node(self, work_flow, user_dataset_id_list: List):

def update_reverse_search_node(self, work_flow, user_dataset_id_list: List):
search_node_list = self.get_search_node(work_flow)
dataset_id_list = []
result_dataset_id_list = []
for search_node in search_node_list:
node_data = search_node.get('properties', {}).get('node_data', {})
dataset_id_list = node_data.get('dataset_id_list', [])
Expand All @@ -603,8 +604,8 @@ def update_reverse_search_node(self, work_flow, user_dataset_id_list: List):
source_dataset_id_list = list({*source_dataset_id_list, *dataset_id_list})
node_data['source_dataset_id_list'] = []
node_data['dataset_id_list'] = source_dataset_id_list
dataset_id_list = [*source_dataset_id_list, *dataset_id_list]
return list(set(dataset_id_list))
result_dataset_id_list = [*source_dataset_id_list, *result_dataset_id_list]
return list(set(result_dataset_id_list))

def profile(self, with_valid=True):
if with_valid:
Expand Down Expand Up @@ -667,6 +668,8 @@ def edit(self, instance: Dict, with_valid=True):

@staticmethod
def save_application_mapping(dataset_id_list, application_id):
# 需要排除已删除的数据集
dataset_id_list = [dataset.id for dataset in QuerySet(DataSet).filter(id__in=dataset_id_list)]
# 删除已经关联的id
QuerySet(ApplicationDatasetMapping).filter(dataset_id__in=dataset_id_list,
application_id=application_id).delete()
Expand Down