diff --git a/apps/web-antd/src/views/bpm/processInstance/detail/modules/operation-button.vue b/apps/web-antd/src/views/bpm/processInstance/detail/modules/operation-button.vue index 1c5b186de03b3c6c49b51b201c2c58b6fdfcec65..63ca567e5c25e40fb2f3fc18269aed942560c2a8 100644 --- a/apps/web-antd/src/views/bpm/processInstance/detail/modules/operation-button.vue +++ b/apps/web-antd/src/views/bpm/processInstance/detail/modules/operation-button.vue @@ -772,12 +772,12 @@ defineExpose({ loadTodoTask }); name="signPicUrl" ref="approveSignFormRef" > - -
+
+ diff --git a/apps/web-antd/src/views/bpm/processInstance/detail/modules/signature.vue b/apps/web-antd/src/views/bpm/processInstance/detail/modules/signature.vue index 3698f6594509a5fafd266ae936cc0f7f01f65e07..4122c1fc041d79790c9df6a3be5ae1adb38161bb 100644 --- a/apps/web-antd/src/views/bpm/processInstance/detail/modules/signature.vue +++ b/apps/web-antd/src/views/bpm/processInstance/detail/modules/signature.vue @@ -5,7 +5,7 @@ import { useVbenModal } from '@vben/common-ui'; import { IconifyIcon } from '@vben/icons'; import { base64ToFile } from '@vben/utils'; -import { Button, message, Space, Tooltip } from 'ant-design-vue'; +import { Button, Space, Tooltip } from 'ant-design-vue'; import Vue3Signature from 'vue3-signature'; import { uploadFile } from '#/api/infra/file'; @@ -20,28 +20,22 @@ const signature = ref>(); const [Modal, modalApi] = useVbenModal({ async onConfirm() { - // TODO @jason:这里需要使用类似 modalApi.lock() 么?类似别的模块 - message.success({ - content: '签名上传中,请稍等...', - }); - const signFileUrl = await uploadFile({ - file: base64ToFile(signature?.value?.save('image/jpeg') || '', '签名'), - }); - emits('success', signFileUrl); - // TODO @jason:是不是不用主动 close? - await modalApi.close(); - }, - // TODO @jason:这个是不是下面方法,可以删除; - onOpenChange(visible) { - if (!visible) { - modalApi.close(); + modalApi.lock(); + try { + const signFileUrl = await uploadFile({ + file: base64ToFile(signature?.value?.save('image/jpeg') || '', '签名'), + }); + emits('success', signFileUrl); + await modalApi.close(); + } finally { + modalApi.unlock(); } }, });