Skip to content

Commit 162842f

Browse files
committed
fix: Add global knowledge base information to the knowledge base workflow
1 parent b0120c7 commit 162842f

File tree

3 files changed

+25
-9
lines changed

3 files changed

+25
-9
lines changed

apps/knowledge/serializers/knowledge_workflow.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,11 @@ def action(self, instance: Dict, user, with_valid=True):
142142
knowledge_id=self.data.get("knowledge_id"),
143143
state=State.STARTED,
144144
meta=meta).save()
145+
knowledge = QuerySet(Knowledge).filter(id=self.data.get('knowledge_id')).first()
146+
instance['knowledge_base'] = {**(instance.get('knowledge_base') or {}),
147+
'knowledge': {'id': str(knowledge.id), 'name': knowledge.name,
148+
'desc': knowledge.desc,
149+
'workspace_id': knowledge.workspace_id}}
145150
work_flow_manage = KnowledgeWorkflowManage(
146151
Workflow.new_instance(knowledge_workflow.work_flow, WorkflowMode.KNOWLEDGE),
147152
{'knowledge_id': self.data.get("knowledge_id"), 'knowledge_action_id': knowledge_action_id, 'stream': True,
@@ -169,6 +174,11 @@ def upload_document(self, instance: Dict, user, with_valid=True):
169174
'user_name': user.username}
170175
KnowledgeAction(id=knowledge_action_id, knowledge_id=self.data.get("knowledge_id"), state=State.STARTED,
171176
meta=meta).save()
177+
knowledge = QuerySet(Knowledge).filter(id=self.data.get('knowledge_id')).first()
178+
instance['knowledge_base'] = {**(instance.get('knowledge_base') or {}),
179+
'knowledge': {'id': str(knowledge.id), 'name': knowledge.name,
180+
'desc': knowledge.desc,
181+
'workspace_id': knowledge.workspace_id}}
172182
work_flow_manage = KnowledgeWorkflowManage(
173183
Workflow.new_instance(knowledge_workflow_version.work_flow, WorkflowMode.KNOWLEDGE),
174184
{'knowledge_id': self.data.get("knowledge_id"), 'knowledge_action_id': knowledge_action_id, 'stream': True,

ui/src/workflow/common/app-node.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,10 @@ class AppNode extends HtmlResize.view {
7979
}
8080
if (this.props.model.type === 'knowledge-base-node') {
8181
let globalFields = []
82-
if (this.props.model.properties.user_input_field_list) {
83-
globalFields = this.props.model.properties.user_input_field_list.map((item: any) => ({
82+
if (this.props.model.properties.config?.globalFields) {
83+
globalFields = this.props.model.properties.config.globalFields.map((item: any) => ({
8484
label: typeof item.label == 'string' ? item.label : item.label.label,
85-
value: item.field,
85+
value: item.value,
8686
}))
8787
}
8888

ui/src/workflow/nodes/knowledge-base-node/index.vue

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,14 @@ const getResourceDetail = inject('getResourceDetail') as any
4545
const props = defineProps<{ nodeModel: any }>()
4646
4747
const UserInputFieldTableFef = ref()
48-
48+
const default_fields = [
49+
{
50+
label: '知识库',
51+
value: 'knowledge',
52+
globeLabel: `{{global.knowledge}}`,
53+
globeValue: `{{context['global'].knowledge}}`,
54+
},
55+
]
4956
const nodeFields = computed(() => {
5057
if (props.nodeModel.properties.user_input_field_list) {
5158
const fields = props.nodeModel.properties.user_input_field_list.map((item: any) => ({
@@ -54,15 +61,14 @@ const nodeFields = computed(() => {
5461
globeLabel: `{{global.${item.field}}}`,
5562
globeValue: `{{context['global'].${item.field}}}`,
5663
}))
57-
set(props.nodeModel.properties.config, 'globalFields', fields)
58-
return fields
64+
set(props.nodeModel.properties.config, 'globalFields', [...fields, ...default_fields])
65+
return [...fields, ...default_fields]
5966
}
60-
set(props.nodeModel.properties.config, 'globalFields', [])
67+
set(props.nodeModel.properties.config, 'globalFields', [default_fields])
6168
return []
6269
})
6370
const resource = getResourceDetail()
6471
6572
onMounted(() => {})
6673
</script>
67-
<style lang="scss" scoped>
68-
</style>
74+
<style lang="scss" scoped></style>

0 commit comments

Comments
 (0)