mirror of
https://gitee.com/huangge1199_admin/vue-pro.git
synced 2024-11-26 17:21:53 +08:00
各个节点绑定值 修改等bug
This commit is contained in:
parent
548f8bc32c
commit
2be0ea5ffb
@ -9,14 +9,15 @@
|
|||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
:formatter="(row) => listenerTypeObject[row.listenerType]"
|
:formatter="(row) => listenerTypeObject[row.listenerType]"
|
||||||
/>
|
/>
|
||||||
<el-table-column label="操作" width="130px">
|
<el-table-column label="操作" width="100px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button size="small" @click="openListenerForm(scope.row, scope.$index)"
|
<el-button size="small" link @click="openListenerForm(scope.row, scope.$index)"
|
||||||
>编辑</el-button
|
>编辑</el-button
|
||||||
>
|
>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
<el-button
|
<el-button
|
||||||
size="small"
|
size="small"
|
||||||
|
link
|
||||||
style="color: #ff4d4f"
|
style="color: #ff4d4f"
|
||||||
@click="removeListener(scope.row, scope.$index)"
|
@click="removeListener(scope.row, scope.$index)"
|
||||||
>移除</el-button
|
>移除</el-button
|
||||||
@ -26,7 +27,6 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
<div class="element-drawer__button">
|
<div class="element-drawer__button">
|
||||||
<XButton
|
<XButton
|
||||||
size="mini"
|
|
||||||
type="primary"
|
type="primary"
|
||||||
preIcon="ep:plus"
|
preIcon="ep:plus"
|
||||||
title="添加监听器"
|
title="添加监听器"
|
||||||
@ -137,7 +137,7 @@
|
|||||||
<el-divider />
|
<el-divider />
|
||||||
<p class="listener-filed__title">
|
<p class="listener-filed__title">
|
||||||
<span><Icon icon="ep:menu" />注入字段:</span>
|
<span><Icon icon="ep:menu" />注入字段:</span>
|
||||||
<XButton type="primary" size="mini" @click="openListenerFieldForm(null)" title="添加字段" />
|
<XButton type="primary" @click="openListenerFieldForm(null)" title="添加字段" />
|
||||||
</p>
|
</p>
|
||||||
<el-table
|
<el-table
|
||||||
:data="fieldsListOfListener"
|
:data="fieldsListOfListener"
|
||||||
@ -163,16 +163,13 @@
|
|||||||
/>
|
/>
|
||||||
<el-table-column label="操作" width="130px">
|
<el-table-column label="操作" width="130px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button
|
<el-button size="small" link @click="openListenerFieldForm(scope.row, scope.$index)"
|
||||||
size="small"
|
|
||||||
type="text"
|
|
||||||
@click="openListenerFieldForm(scope.row, scope.$index)"
|
|
||||||
>编辑</el-button
|
>编辑</el-button
|
||||||
>
|
>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
<el-button
|
<el-button
|
||||||
size="small"
|
size="small"
|
||||||
type="text"
|
link
|
||||||
style="color: #ff4d4f"
|
style="color: #ff4d4f"
|
||||||
@click="removeListenerField(scope.row, scope.$index)"
|
@click="removeListenerField(scope.row, scope.$index)"
|
||||||
>移除</el-button
|
>移除</el-button
|
||||||
@ -293,9 +290,7 @@ const resetListenersList = () => {
|
|||||||
otherExtensionList.value = []
|
otherExtensionList.value = []
|
||||||
console.log(bpmnElement.value, 'bpmnElement.value')
|
console.log(bpmnElement.value, 'bpmnElement.value')
|
||||||
bpmnElementListeners.value =
|
bpmnElementListeners.value =
|
||||||
// bpmnElement.value.businessObject?.extensionElements?.filter(
|
bpmnElement.value.businessObject?.extensionElements?.values?.filter(
|
||||||
bpmnElement.value.businessObject?.extensionElements?.filter(
|
|
||||||
// bpmnElement.value.businessObject?.extensionElements?.values?.filter(
|
|
||||||
(ex) => ex.$type === `${prefix}:ExecutionListener`
|
(ex) => ex.$type === `${prefix}:ExecutionListener`
|
||||||
) ?? []
|
) ?? []
|
||||||
elementListenersList.value = bpmnElementListeners.value.map((listener) =>
|
elementListenersList.value = bpmnElementListeners.value.map((listener) =>
|
||||||
@ -396,8 +391,8 @@ const saveListenerConfig = async () => {
|
|||||||
// 保存其他配置
|
// 保存其他配置
|
||||||
console.log(bpmnElement.value, 'bpmnElement.value')
|
console.log(bpmnElement.value, 'bpmnElement.value')
|
||||||
otherExtensionList.value =
|
otherExtensionList.value =
|
||||||
bpmnElement.value.businessObject?.extensionElements?.filter(
|
// bpmnElement.value.businessObject?.extensionElements?.filter(
|
||||||
// bpmnElement.value.businessObject?.extensionElements?.values?.filter(
|
bpmnElement.value.businessObject?.extensionElements?.values?.filter(
|
||||||
(ex) => ex.$type !== `${prefix}:ExecutionListener`
|
(ex) => ex.$type !== `${prefix}:ExecutionListener`
|
||||||
) ?? []
|
) ?? []
|
||||||
console.log(bpmnElement.value, 'bpmnElement.value')
|
console.log(bpmnElement.value, 'bpmnElement.value')
|
||||||
@ -406,20 +401,10 @@ const saveListenerConfig = async () => {
|
|||||||
otherExtensionList.value.concat(bpmnElementListeners.value),
|
otherExtensionList.value.concat(bpmnElementListeners.value),
|
||||||
'otherExtensionList.value.concat(bpmnElementListeners.value).value'
|
'otherExtensionList.value.concat(bpmnElementListeners.value).value'
|
||||||
)
|
)
|
||||||
// updateElementExtensions(
|
updateElementExtensions(
|
||||||
// bpmnElement.value,
|
bpmnElement.value,
|
||||||
// // toRaw(bpmnElement.value),
|
otherExtensionList.value.concat(bpmnElementListeners.value)
|
||||||
// otherExtensionList.value.concat(bpmnElementListeners.value)
|
)
|
||||||
// // toRaw(otherExtensionList.value.concat(bpmnElementListeners.value))
|
|
||||||
// )
|
|
||||||
const extensions = window.bpmnInstances.moddle.create('bpmn:ExtensionElements', {
|
|
||||||
values: otherExtensionList.value.concat(bpmnElementListeners.value)
|
|
||||||
})
|
|
||||||
console.log(extensions, 'extensionsextensionsextensions')
|
|
||||||
console.log(extensions.values, 'extensionsextensionsextensions')
|
|
||||||
window.bpmnInstances.modeling.updateProperties(toRaw(bpmnElement.value), {
|
|
||||||
extensionElements: extensions.values
|
|
||||||
})
|
|
||||||
// 4. 隐藏侧边栏
|
// 4. 隐藏侧边栏
|
||||||
listenerFormModelVisible.value = false
|
listenerFormModelVisible.value = false
|
||||||
listenerForm.value = {}
|
listenerForm.value = {}
|
||||||
|
@ -17,13 +17,13 @@
|
|||||||
/>
|
/>
|
||||||
<el-table-column label="操作" width="90px">
|
<el-table-column label="操作" width="90px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button size="small" type="text" @click="openListenerForm(scope.row, scope.$index)"
|
<el-button size="small" link @click="openListenerForm(scope.row, scope.$index)"
|
||||||
>编辑</el-button
|
>编辑</el-button
|
||||||
>
|
>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
<el-button
|
<el-button
|
||||||
size="small"
|
size="small"
|
||||||
type="text"
|
link
|
||||||
style="color: #ff4d4f"
|
style="color: #ff4d4f"
|
||||||
@click="removeListener(scope.row, scope.$index)"
|
@click="removeListener(scope.row, scope.$index)"
|
||||||
>移除</el-button
|
>移除</el-button
|
||||||
@ -204,16 +204,13 @@
|
|||||||
/>
|
/>
|
||||||
<el-table-column label="操作" width="100px">
|
<el-table-column label="操作" width="100px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button
|
<el-button size="small" link @click="openListenerFieldForm(scope.row, scope.$index)"
|
||||||
size="small"
|
|
||||||
type="text"
|
|
||||||
@click="openListenerFieldForm(scope.row, scope.$index)"
|
|
||||||
>编辑</el-button
|
>编辑</el-button
|
||||||
>
|
>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
<el-button
|
<el-button
|
||||||
size="small"
|
size="small"
|
||||||
type="text"
|
link
|
||||||
style="color: #ff4d4f"
|
style="color: #ff4d4f"
|
||||||
@click="removeListenerField(scope.row, scope.$index)"
|
@click="removeListenerField(scope.row, scope.$index)"
|
||||||
>移除</el-button
|
>移除</el-button
|
||||||
@ -338,8 +335,7 @@ const resetListenersList = () => {
|
|||||||
bpmnElement.value = window.bpmnInstances.bpmnElement
|
bpmnElement.value = window.bpmnInstances.bpmnElement
|
||||||
otherExtensionList.value = []
|
otherExtensionList.value = []
|
||||||
bpmnElementListeners.value =
|
bpmnElementListeners.value =
|
||||||
bpmnElement.value.businessObject?.extensionElements?.filter(
|
bpmnElement.value.businessObject?.extensionElements?.values.filter(
|
||||||
// bpmnElement.value.businessObject?.extensionElements?.values.filter(
|
|
||||||
(ex) => ex.$type === `${prefix}:TaskListener`
|
(ex) => ex.$type === `${prefix}:TaskListener`
|
||||||
) ?? []
|
) ?? []
|
||||||
elementListenersList.value = bpmnElementListeners.value.map((listener) =>
|
elementListenersList.value = bpmnElementListeners.value.map((listener) =>
|
||||||
|
@ -1,25 +1,25 @@
|
|||||||
export const template = isTaskListener => {
|
export const template = isTaskListener => {
|
||||||
return `
|
return `
|
||||||
<div class="panel-tab__content">
|
<div class="panel-tab__content">
|
||||||
<el-table :data="elementListenersList" size="mini" border>
|
<el-table :data="elementListenersList" size="small" border>
|
||||||
<el-table-column label="序号" width="50px" type="index" />
|
<el-table-column label="序号" width="50px" type="index" />
|
||||||
<el-table-column label="事件类型" min-width="100px" prop="event" />
|
<el-table-column label="事件类型" min-width="100px" prop="event" />
|
||||||
<el-table-column label="监听器类型" min-width="100px" show-overflow-tooltip :formatter="row => listenerTypeObject[row.listenerType]" />
|
<el-table-column label="监听器类型" min-width="100px" show-overflow-tooltip :formatter="row => listenerTypeObject[row.listenerType]" />
|
||||||
<el-table-column label="操作" width="90px">
|
<el-table-column label="操作" width="90px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button size="mini" type="text" @click="openListenerForm(scope, scope.$index)">编辑</el-button>
|
<el-button size="small" type="text" @click="openListenerForm(scope, scope.$index)">编辑</el-button>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
<el-button size="mini" type="text" style="color: #ff4d4f" @click="removeListener(scope, scope.$index)">移除</el-button>
|
<el-button size="small" type="text" style="color: #ff4d4f" @click="removeListener(scope, scope.$index)">移除</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<div class="element-drawer__button">
|
<div class="element-drawer__button">
|
||||||
<el-button size="mini" type="primary" icon="el-icon-plus" @click="openListenerForm(null)">添加监听器</el-button>
|
<el-button size="small" type="primary" icon="el-icon-plus" @click="openListenerForm(null)">添加监听器</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 监听器 编辑/创建 部分 -->
|
<!-- 监听器 编辑/创建 部分 -->
|
||||||
<el-drawer :visible.sync="listenerFormModelVisible" title="执行监听器" :size="width + 'px'" append-to-body destroy-on-close>
|
<el-drawer :visible.sync="listenerFormModelVisible" title="执行监听器" :size="width + 'px'" append-to-body destroy-on-close>
|
||||||
<el-form size="mini" :model="listenerForm" label-width="96px" ref="listenerFormRef" @submit.native.prevent>
|
<el-form size="small" :model="listenerForm" label-width="96px" ref="listenerFormRef" @submit.native.prevent>
|
||||||
<el-form-item label="事件类型" prop="event" :rules="{ required: true, trigger: ['blur', 'change'] }">
|
<el-form-item label="事件类型" prop="event" :rules="{ required: true, trigger: ['blur', 'change'] }">
|
||||||
<el-select v-model="listenerForm.event">
|
<el-select v-model="listenerForm.event">
|
||||||
<el-option label="start" value="start" />
|
<el-option label="start" value="start" />
|
||||||
@ -115,31 +115,31 @@ export const template = isTaskListener => {
|
|||||||
<el-divider />
|
<el-divider />
|
||||||
<p class="listener-filed__title">
|
<p class="listener-filed__title">
|
||||||
<span><i class="el-icon-menu"></i>注入字段:</span>
|
<span><i class="el-icon-menu"></i>注入字段:</span>
|
||||||
<el-button size="mini" type="primary" @click="openListenerFieldForm(null)">添加字段</el-button>
|
<el-button size="small" type="primary" @click="openListenerFieldForm(null)">添加字段</el-button>
|
||||||
</p>
|
</p>
|
||||||
<el-table :data="fieldsListOfListener" size="mini" max-height="240" border fit style="flex: none">
|
<el-table :data="fieldsListOfListener" size="small" max-height="240" border fit style="flex: none">
|
||||||
<el-table-column label="序号" width="50px" type="index" />
|
<el-table-column label="序号" width="50px" type="index" />
|
||||||
<el-table-column label="字段名称" min-width="100px" prop="name" />
|
<el-table-column label="字段名称" min-width="100px" prop="name" />
|
||||||
<el-table-column label="字段类型" min-width="80px" show-overflow-tooltip :formatter="row => fieldTypeObject[row.fieldType]" />
|
<el-table-column label="字段类型" min-width="80px" show-overflow-tooltip :formatter="row => fieldTypeObject[row.fieldType]" />
|
||||||
<el-table-column label="字段值/表达式" min-width="100px" show-overflow-tooltip :formatter="row => row.string || row.expression" />
|
<el-table-column label="字段值/表达式" min-width="100px" show-overflow-tooltip :formatter="row => row.string || row.expression" />
|
||||||
<el-table-column label="操作" width="100px">
|
<el-table-column label="操作" width="100px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button size="mini" type="text" @click="openListenerFieldForm(scope, scope.$index)">编辑</el-button>
|
<el-button size="small" type="text" @click="openListenerFieldForm(scope, scope.$index)">编辑</el-button>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
<el-button size="mini" type="text" style="color: #ff4d4f" @click="removeListenerField(scope, scope.$index)">移除</el-button>
|
<el-button size="small" type="text" style="color: #ff4d4f" @click="removeListenerField(scope, scope.$index)">移除</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<div class="element-drawer__button">
|
<div class="element-drawer__button">
|
||||||
<el-button size="mini" @click="listenerFormModelVisible = false">取 消</el-button>
|
<el-button size="small" @click="listenerFormModelVisible = false">取 消</el-button>
|
||||||
<el-button size="mini" type="primary" @click="saveListenerConfig">保 存</el-button>
|
<el-button size="small" type="primary" @click="saveListenerConfig">保 存</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
|
|
||||||
<!-- 注入西段 编辑/创建 部分 -->
|
<!-- 注入西段 编辑/创建 部分 -->
|
||||||
<el-dialog title="字段配置" :visible.sync="listenerFieldFormModelVisible" width="600px" append-to-body destroy-on-close>
|
<el-dialog title="字段配置" :visible.sync="listenerFieldFormModelVisible" width="600px" append-to-body destroy-on-close>
|
||||||
<el-form :model="listenerFieldForm" size="mini" label-width="96px" ref="listenerFieldFormRef" style="height: 136px" @submit.native.prevent>
|
<el-form :model="listenerFieldForm" size="small" label-width="96px" ref="listenerFieldFormRef" style="height: 136px" @submit.native.prevent>
|
||||||
<el-form-item label="字段名称:" prop="name" :rules="{ required: true, trigger: ['blur', 'change'] }">
|
<el-form-item label="字段名称:" prop="name" :rules="{ required: true, trigger: ['blur', 'change'] }">
|
||||||
<el-input v-model="listenerFieldForm.name" clearable />
|
<el-input v-model="listenerFieldForm.name" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -168,8 +168,8 @@ export const template = isTaskListener => {
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<el-button size="mini" @click="listenerFieldFormModelVisible = false">取 消</el-button>
|
<el-button size="small" @click="listenerFieldFormModelVisible = false">取 消</el-button>
|
||||||
<el-button size="mini" type="primary" @click="saveListenerFiled">确 定</el-button>
|
<el-button size="small" type="primary" @click="saveListenerFiled">确 定</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
|
@ -4,14 +4,15 @@
|
|||||||
<el-table-column label="序号" width="50px" type="index" />
|
<el-table-column label="序号" width="50px" type="index" />
|
||||||
<el-table-column label="属性名" prop="name" min-width="100px" show-overflow-tooltip />
|
<el-table-column label="属性名" prop="name" min-width="100px" show-overflow-tooltip />
|
||||||
<el-table-column label="属性值" prop="value" min-width="100px" show-overflow-tooltip />
|
<el-table-column label="属性值" prop="value" min-width="100px" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="90px">
|
<el-table-column label="操作" width="110px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button type="text" @click="openAttributesForm(scope.row, scope.$index)"
|
<el-button link @click="openAttributesForm(scope.row, scope.$index)" size="small"
|
||||||
>编辑</el-button
|
>编辑</el-button
|
||||||
>
|
>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
<el-button
|
<el-button
|
||||||
type="text"
|
link
|
||||||
|
size="small"
|
||||||
style="color: #ff4d4f"
|
style="color: #ff4d4f"
|
||||||
@click="removeAttributes(scope.row, scope.$index)"
|
@click="removeAttributes(scope.row, scope.$index)"
|
||||||
>移除</el-button
|
>移除</el-button
|
||||||
@ -86,8 +87,8 @@ const resetAttributesList = () => {
|
|||||||
bpmnElement.value = window.bpmnInstances.bpmnElement
|
bpmnElement.value = window.bpmnInstances.bpmnElement
|
||||||
otherExtensionList.value = [] // 其他扩展配置
|
otherExtensionList.value = [] // 其他扩展配置
|
||||||
bpmnElementProperties.value =
|
bpmnElementProperties.value =
|
||||||
bpmnElement.value.businessObject?.extensionElements?.filter((ex) => {
|
// bpmnElement.value.businessObject?.extensionElements?.filter((ex) => {
|
||||||
// bpmnElement.value.businessObject?.extensionElements?.values.filter((ex) => {
|
bpmnElement.value.businessObject?.extensionElements?.values.filter((ex) => {
|
||||||
if (ex.$type !== `${prefix}:Properties`) {
|
if (ex.$type !== `${prefix}:Properties`) {
|
||||||
otherExtensionList.value.push(ex)
|
otherExtensionList.value.push(ex)
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,6 @@
|
|||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
<XButton
|
<XButton
|
||||||
size="mini"
|
|
||||||
type="primary"
|
type="primary"
|
||||||
preIcon="ep:plus"
|
preIcon="ep:plus"
|
||||||
style="margin-left: 8px"
|
style="margin-left: 8px"
|
||||||
|
@ -61,7 +61,7 @@ export function updateElementExtensions(element, extensionList) {
|
|||||||
values: extensionList
|
values: extensionList
|
||||||
})
|
})
|
||||||
window.bpmnInstances.modeling.updateProperties(toRaw(element), {
|
window.bpmnInstances.modeling.updateProperties(toRaw(element), {
|
||||||
extensionElements: extensions.values
|
extensionElements: extensions
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user