Skip to content

Commit 745adf9

Browse files
fix: Adding nodes in the execution details
1 parent 54e4423 commit 745adf9

File tree

5 files changed

+152
-47
lines changed

5 files changed

+152
-47
lines changed

ui/src/components/ai-chat/component/knowledge-source-component/ExecutionDetailCard.vue

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1081,6 +1081,104 @@
10811081
</template>
10821082
<slot></slot>
10831083
</template>
1084+
<!-- 文本文件 -->
1085+
<template v-if="data.type === WorkflowType.DataSourceLocalNode">
1086+
<div class="card-never border-r-6">
1087+
<h5 class="p-8-12">
1088+
{{ $t('common.param.outputParam') }}
1089+
</h5>
1090+
1091+
<div class="p-8-12 border-t-dashed lighter">
1092+
<div class="mb-8">
1093+
{{ data.file_list || '-' }}
1094+
</div>
1095+
</div>
1096+
</div>
1097+
</template>
1098+
<!-- 文档分段 -->
1099+
<template v-if="data.type === WorkflowType.DocumentSplitNode">
1100+
<div class="card-never border-r-6">
1101+
<h5 class="p-8-12">
1102+
{{ $t('common.param.inputParam') }}
1103+
</h5>
1104+
<div class="p-8-12 border-t-dashed lighter">
1105+
<div v-for="(f, i) in data.result_list" :key="i" class="mb-8">
1106+
<span class="color-secondary">{{ f.name }}:</span> {{ f.input_value }}
1107+
</div>
1108+
</div>
1109+
</div>
1110+
<div class="card-never border-r-6 mt-8">
1111+
<h5 class="p-8-12">
1112+
{{ $t('common.param.outputParam') }}(每个文档仅能预览前五个分段)
1113+
</h5>
1114+
<div class="p-8-12 border-t-dashed lighter">
1115+
<el-radio-group v-model="currentParagraph" class="app-radio-button-group mb-8">
1116+
<template
1117+
v-for="(paragrapg, ParagraphIndex) in data.paragraph_list"
1118+
:key="ParagraphIndex"
1119+
>
1120+
<el-radio-button :label="paragrapg.name" :value="ParagraphIndex" />
1121+
</template>
1122+
</el-radio-group>
1123+
<template v-if="data.paragraph_list?.length > 0">
1124+
<template
1125+
v-for="(paragraph, pId) in data.paragraph_list?.[currentParagraph]?.paragraphs"
1126+
:key="pId"
1127+
>
1128+
<ParagraphCard :data="paragraph" :content="paragraph.content" :index="pId">
1129+
<template #footer>
1130+
<span class="color-secondary">
1131+
{{ $t('common.character') }}:{{ paragraph.content.length }}</span
1132+
>
1133+
</template>
1134+
</ParagraphCard>
1135+
</template>
1136+
</template>
1137+
<template v-else> -</template>
1138+
</div>
1139+
</div>
1140+
</template>
1141+
<!-- 知识库写入 -->
1142+
<template v-if="data.type === WorkflowType.KnowledgeWriteNode">
1143+
<div class="card-never border-r-6">
1144+
<h5 class="p-8-12">
1145+
{{ $t('common.param.inputParam') }}
1146+
</h5>
1147+
<div class="p-8-12 border-t-dashed lighter">
1148+
<div v-for="(f, i) in data.result_list" :key="i" class="mb-8">
1149+
<span class="color-secondary">{{ f.name }}:</span> {{ f.input_value }}
1150+
</div>
1151+
</div>
1152+
</div>
1153+
<div class="card-never border-r-6 mt-8">
1154+
<h5 class="p-8-12">写入内容</h5>
1155+
<div class="p-8-12 border-t-dashed lighter">
1156+
<el-radio-group v-model="currentWriteContent" class="app-radio-button-group mb-8">
1157+
<template
1158+
v-for="(paragrapg, ParagraphIndex) in data.write_content"
1159+
:key="ParagraphIndex"
1160+
>
1161+
<el-radio-button :label="paragrapg.name" :value="ParagraphIndex" />
1162+
</template>
1163+
</el-radio-group>
1164+
<template v-if="data.write_content?.length > 0">
1165+
<template
1166+
v-for="(paragraph, pId) in data.write_content?.[currentWriteContent]?.paragraphs"
1167+
:key="pId"
1168+
>
1169+
<ParagraphCard :data="paragraph" :content="paragraph.content" :index="pId">
1170+
<template #footer>
1171+
<span class="color-secondary">
1172+
{{ $t('common.character') }}:{{ paragraph.content.length }}</span
1173+
>
1174+
</template>
1175+
</ParagraphCard>
1176+
</template>
1177+
</template>
1178+
<template v-else> -</template>
1179+
</div>
1180+
</div>
1181+
</template>
10841182
<template v-else>
10851183
<div class="card-never border-r-6">
10861184
<h5 class="p-8-12">{{ $t('chat.executionDetails.errMessage') }}</h5>
@@ -1106,5 +1204,7 @@ const props = defineProps<{
11061204
data: any
11071205
}>()
11081206
const currentLoopNode = ref(0)
1207+
const currentParagraph = ref(0)
1208+
const currentWriteContent = ref(0)
11091209
</script>
11101210
<style lang="scss" scoped></style>

ui/src/components/ai-chat/component/knowledge-source-component/ParagraphCard.vue

Lines changed: 34 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -18,39 +18,41 @@
1818
</el-scrollbar>
1919

2020
<template #footer>
21-
<el-card
22-
shadow="never"
23-
style="--el-card-padding: 8px"
24-
class="w-full mb-12"
25-
v-if="data?.document_name?.trim()"
26-
>
27-
<el-text class="flex align-center item">
28-
<img :src="getImgUrl(data?.document_name?.trim())" alt="" width="20" class="mr-4" />
29-
<div class="ml-8">
30-
<div class="ml-4" v-if="data?.meta?.source_file_id || data?.meta?.source_url">
31-
<a
32-
:href="getFileUrl(data?.meta?.source_file_id) || data?.meta?.source_url"
33-
target="_blank"
34-
class="ellipsis-1"
35-
:title="data?.document_name?.trim()"
36-
>
37-
<span :title="data?.document_name?.trim()">{{ data?.document_name }}</span>
38-
</a>
21+
<slot name="footer">
22+
<el-card
23+
shadow="never"
24+
style="--el-card-padding: 8px"
25+
class="w-full mb-12"
26+
v-if="data?.document_name?.trim()"
27+
>
28+
<el-text class="flex align-center item">
29+
<img :src="getImgUrl(data?.document_name?.trim())" alt="" width="20" class="mr-4" />
30+
<div class="ml-8">
31+
<div class="ml-4" v-if="data?.meta?.source_file_id || data?.meta?.source_url">
32+
<a
33+
:href="getFileUrl(data?.meta?.source_file_id) || data?.meta?.source_url"
34+
target="_blank"
35+
class="ellipsis-1"
36+
:title="data?.document_name?.trim()"
37+
>
38+
<span :title="data?.document_name?.trim()">{{ data?.document_name }}</span>
39+
</a>
40+
</div>
41+
<div v-else @click="infoMessage(data)">
42+
<span class="ellipsis-1 break-all" :title="data?.document_name?.trim()">
43+
{{ data?.document_name?.trim() }}
44+
</span>
45+
</div>
3946
</div>
40-
<div v-else @click="infoMessage(data)">
41-
<span class="ellipsis-1 break-all" :title="data?.document_name?.trim()">
42-
{{ data?.document_name?.trim() }}
43-
</span>
44-
</div>
45-
</div>
46-
</el-text>
47-
</el-card>
48-
<div class="flex align-center border-t" style="padding: 12px 0 8px">
49-
<KnowledgeIcon :type="data?.knowledge_type" :size="18" class="mr-8" />
50-
<span class="ellipsis-1 break-all" :title="data?.knowledge_name">
51-
{{ data?.knowledge_name || '-' }}
52-
</span>
53-
</div>
47+
</el-text>
48+
</el-card>
49+
<div class="flex align-center border-t" style="padding: 12px 0 8px">
50+
<KnowledgeIcon :type="data?.knowledge_type" :size="18" class="mr-8" />
51+
<span class="ellipsis-1 break-all" :title="data?.knowledge_name">
52+
{{ data?.knowledge_name || '-' }}
53+
</span>
54+
</div>
55+
</slot>
5456
</template>
5557
</CardBox>
5658
</template>

ui/src/components/dynamics-form/items/radio/RadioCard.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ const option_list = computed(() => {
7575
</script>
7676
<style lang="scss" scoped>
7777
.radio_content {
78+
height: 32px;
7879
display: flex;
7980
flex-wrap: wrap;
8081
justify-content: flex-start;
@@ -94,7 +95,6 @@ const option_list = computed(() => {
9495
color: var(--el-color-primary);
9596
}
9697
.item {
97-
line-height: 22px;
9898
cursor: pointer;
9999
display: flex;
100100
justify-content: center;

ui/src/router/modules/document.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ const DocumentRouter = {
113113
name: 'knowledgeWorkflowSetting',
114114
meta: {
115115
title: 'views.workflow.workflow',
116-
icon: 'app-problems',
116+
icon: 'app-workflow',
117117
activeMenu: '/knowledge',
118118
parentPath: '/knowledge/:id/:folderId/:type',
119119
parentName: 'KnowledgeDetail',

ui/src/views/document/ImportWorkflowDocument.vue

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,20 @@
77
<el-card style="--el-card-padding: 0">
88
<div class="upload-document__main flex" v-loading="loading">
99
<div class="upload-document__component main-calc-height">
10-
<div class="upload-component p-24" style="min-width: 850px">
11-
<keep-alive>
12-
<component
13-
ref="ActionRef"
14-
:is="ak[active]"
15-
v-model:loading="loading"
16-
:workflow="_workflow"
17-
:knowledge_id="id"
18-
:id="action_id"
19-
></component>
20-
</keep-alive>
21-
</div>
10+
<el-scrollbar>
11+
<div class="upload-component p-24" style="min-width: 850px">
12+
<keep-alive>
13+
<component
14+
ref="ActionRef"
15+
:is="ak[active]"
16+
v-model:loading="loading"
17+
:workflow="_workflow"
18+
:knowledge_id="id"
19+
:id="action_id"
20+
></component>
21+
</keep-alive>
22+
</div>
23+
</el-scrollbar>
2224
</div>
2325
</div>
2426
</el-card>
@@ -118,7 +120,8 @@ const upload = () => {
118120
loadSharedApi({ type: 'knowledge', systemType: apiType.value })
119121
.workflowUpload(id, form_data.value, loading)
120122
.then((ok: any) => {
121-
router.go(-1)
123+
action_id.value = ok.data.id
124+
active.value = 'result'
122125
})
123126
})
124127
}

0 commit comments

Comments
 (0)