feat: bpmn设计器添加UserTask签名配置

This commit is contained in:
Lesan 2025-01-16 14:40:14 +08:00
parent 37964e740f
commit 69ccd83af3
3 changed files with 31 additions and 2 deletions

View File

@ -1438,6 +1438,20 @@
"isBody": true "isBody": true
} }
] ]
},
{
"name": "SignEnable",
"superClass": ["Element"],
"meta": {
"allowedIn": ["bpmn:UserTask"]
},
"properties": [
{
"name": "value",
"type": "Boolean",
"isBody": true
}
]
} }
], ],
"emumerations": [] "emumerations": []

View File

@ -1,5 +1,5 @@
<template> <template>
<div class="process-panel__container" :style="{ width: `${width}px` }"> <div class="process-panel__container" :style="{ width: `${width}px`, maxHeight: '600px' }">
<el-collapse v-model="activeTab" v-if="isReady"> <el-collapse v-model="activeTab" v-if="isReady">
<el-collapse-item name="base"> <el-collapse-item name="base">
<!-- class="panel-tab__title" --> <!-- class="panel-tab__title" -->

View File

@ -5,6 +5,7 @@
4. 操作按钮 4. 操作按钮
5. 字段权限 5. 字段权限
6. 审批类型 6. 审批类型
7. 是否需要签名
--> -->
<template> <template>
<div> <div>
@ -161,6 +162,11 @@
</el-radio-group> </el-radio-group>
</div> </div>
</div> </div>
<el-divider content-position="left">是否需要签名</el-divider>
<el-form-item prop="signEnable">
<el-switch v-model="signEnable.value" active-text="是" inactive-text="否" />
</el-form-item>
</div> </div>
</template> </template>
@ -218,6 +224,9 @@ const { formType, fieldsPermissionConfig, getNodeConfigFormFields } = useFormFie
// //
const approveType = ref({ value: ApproveType.USER }) const approveType = ref({ value: ApproveType.USER })
//
const signEnable = ref({ value: false })
const elExtensionElements = ref() const elExtensionElements = ref()
const otherExtensions = ref() const otherExtensions = ref()
const bpmnElement = ref() const bpmnElement = ref()
@ -325,6 +334,11 @@ const resetCustomConfigList = () => {
ex.$type !== `${prefix}:ApproveType` ex.$type !== `${prefix}:ApproveType`
) ?? [] ) ?? []
//
signEnable.value =
elExtensionElements.value.values?.filter((ex) => ex.$type === `${prefix}:SignEnable`)?.[0] ||
bpmnInstances().moddle.create(`${prefix}:SignEnable`, { value: false })
// //
updateElementExtensions() updateElementExtensions()
} }
@ -373,7 +387,8 @@ const updateElementExtensions = () => {
assignEmptyUserIdsEl.value, assignEmptyUserIdsEl.value,
approveType.value, approveType.value,
...buttonsSettingEl.value, ...buttonsSettingEl.value,
...fieldsPermissionEl.value ...fieldsPermissionEl.value,
signEnable.value
] ]
}) })
bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), { bpmnInstances().modeling.updateProperties(toRaw(bpmnElement.value), {