mirror of
https://github.com/1Panel-dev/MaxKB.git
synced 2025-12-26 01:33:05 +00:00
fix: 修复历史数据没有展示变量值的问题
--bug=1046515 --user=刘瑞斌 【应用】查看历史对话,默认没有带变量值,点击重新生成答案会报错 https://www.tapd.cn/57709429/s/1579777
This commit is contained in:
parent
bbeed0e276
commit
91391b0354
|
|
@ -15,6 +15,7 @@
|
|||
<el-collapse-transition>
|
||||
<div v-show="showUserInput" class="mt-16">
|
||||
<DynamicsForm
|
||||
:key="dynamicsFormRefresh"
|
||||
v-model="form_data"
|
||||
:model="form_data"
|
||||
label-position="left"
|
||||
|
|
@ -347,7 +348,19 @@ watch(
|
|||
{ deep: true }
|
||||
)
|
||||
|
||||
// 用于刷新动态表单
|
||||
const dynamicsFormRefresh = ref(0)
|
||||
function handleInputFieldList() {
|
||||
dynamicsFormRefresh.value++
|
||||
// 给变量赋默认值, 最后一个对话记录的值
|
||||
const record = chatList.value[chatList.value.length - 1]
|
||||
let default_value: any = {}
|
||||
if (record) {
|
||||
record.execution_details[0].global_fields.reduce((pre: any, next: any) => {
|
||||
pre[next.key] = next.value
|
||||
return pre
|
||||
}, default_value)
|
||||
}
|
||||
props.data.work_flow?.nodes
|
||||
?.filter((v: any) => v.id === 'base-node')
|
||||
.map((v: any) => {
|
||||
|
|
@ -361,6 +374,7 @@ function handleInputFieldList() {
|
|||
field: v.variable,
|
||||
input_type: 'TextInput',
|
||||
label: v.name,
|
||||
default_value: default_value[v.variable],
|
||||
required: v.is_required
|
||||
}
|
||||
case 'select':
|
||||
|
|
@ -368,6 +382,7 @@ function handleInputFieldList() {
|
|||
field: v.variable,
|
||||
input_type: 'SingleSelect',
|
||||
label: v.name,
|
||||
default_value: default_value[v.variable],
|
||||
required: v.is_required,
|
||||
option_list: v.optionList.map((o: any) => {
|
||||
return { key: o, value: o }
|
||||
|
|
@ -378,6 +393,7 @@ function handleInputFieldList() {
|
|||
field: v.variable,
|
||||
input_type: 'DatePicker',
|
||||
label: v.name,
|
||||
default_value: default_value[v.variable],
|
||||
required: v.is_required,
|
||||
attrs: {
|
||||
format: 'YYYY-MM-DD HH:mm:ss',
|
||||
|
|
@ -400,6 +416,7 @@ function handleInputFieldList() {
|
|||
field: v.variable,
|
||||
input_type: 'TextInput',
|
||||
label: v.name,
|
||||
default_value: default_value[v.variable],
|
||||
required: v.is_required
|
||||
}
|
||||
case 'select':
|
||||
|
|
@ -407,6 +424,7 @@ function handleInputFieldList() {
|
|||
field: v.variable,
|
||||
input_type: 'SingleSelect',
|
||||
label: v.name,
|
||||
default_value: default_value[v.variable],
|
||||
required: v.is_required,
|
||||
option_list: v.optionList.map((o: any) => {
|
||||
return { key: o, value: o }
|
||||
|
|
@ -417,6 +435,7 @@ function handleInputFieldList() {
|
|||
field: v.variable,
|
||||
input_type: 'DatePicker',
|
||||
label: v.name,
|
||||
default_value: default_value[v.variable],
|
||||
required: v.is_required,
|
||||
attrs: {
|
||||
format: 'YYYY-MM-DD HH:mm:ss',
|
||||
|
|
@ -445,6 +464,7 @@ watch(
|
|||
() => props.record,
|
||||
(value) => {
|
||||
chatList.value = value
|
||||
handleInputFieldList()
|
||||
},
|
||||
{
|
||||
immediate: true
|
||||
|
|
|
|||
Loading…
Reference in New Issue