From 49224afe2da4aef14d038c3779b94da12f15cd36 Mon Sep 17 00:00:00 2001 From: AN <1983933789@qq.com> Date: Thu, 19 Jun 2025 23:14:25 +0800 Subject: [PATCH] =?UTF-8?q?feat(components):=20=E5=A2=9E=E5=BC=BA=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=E4=BF=A1=E6=81=AF=E9=9D=A2=E6=9D=BF=EF=BC=8C=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E9=99=84=E4=BB=B6=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../custom/work-flow/approval-info-panel.vue | 137 ++++++++++++++++-- .../custom/work-flow/leave-edit/index.vue | 21 ++- .../work-flow/workflow-task-apply-modal.vue | 14 +- src/typings/api/workflow.api.d.ts | 2 + src/typings/components.d.ts | 1 + 5 files changed, 146 insertions(+), 29 deletions(-) diff --git a/src/components/custom/work-flow/approval-info-panel.vue b/src/components/custom/work-flow/approval-info-panel.vue index f1ca72d1..48b7d36a 100644 --- a/src/components/custom/work-flow/approval-info-panel.vue +++ b/src/components/custom/work-flow/approval-info-panel.vue @@ -1,20 +1,31 @@ @@ -99,14 +197,21 @@ onMounted(() => {
- + - “威尔!着火了!快来帮忙!”我听到女朋友大喊。现在一个难题在我面前——是恢复一个重要的 Amazon 服务,还是救公寓的火。 + "威尔!着火了!快来帮忙!"我听到女朋友大喊。现在一个难题在我面前——是恢复一个重要的 Amazon 服务,还是救公寓的火。

我的脑海中忽然出现了 Amazon - 著名的领导力准则”客户至上“,有很多的客户还依赖我们的服务,我不能让他们失望!所以着火也不管了,女朋友喊我也无所谓,我开始 + 著名的领导力准则"客户至上",有很多的客户还依赖我们的服务,我不能让他们失望!所以着火也不管了,女朋友喊我也无所谓,我开始 debug 这个线上问题。
diff --git a/src/components/custom/work-flow/leave-edit/index.vue b/src/components/custom/work-flow/leave-edit/index.vue index 66e93fa0..eb502d95 100644 --- a/src/components/custom/work-flow/leave-edit/index.vue +++ b/src/components/custom/work-flow/leave-edit/index.vue @@ -7,6 +7,7 @@ import { fetchCreateLeave, fetchGetLeaveDetail, fetchStartWorkflow, fetchUpdateL import { useFormRules, useNaiveForm } from '@/hooks/common/form'; import { useDict } from '@/hooks/business/dict'; import { $t } from '@/locales'; +import ApprovalInfoPanel from '@/components/custom/work-flow/approval-info-panel.vue'; defineOptions({ name: 'LeaveEdit' @@ -36,6 +37,8 @@ const emit = defineEmits(); const visible = defineModel('visible', { default: false }); +const approvalInfoPanelRef = ref>(); + const { bool: taskApplyVisible, setTrue: setTaskApplyVisible } = useBoolean(); const { formRef, validate, restoreValidation } = useNaiveForm(); const { createRequiredRule } = useFormRules(); @@ -91,7 +94,9 @@ function createDefaultModelDetail(): ModelDetail { remark: '' }; } - +const showApprovalInfoPanel = computed(() => { + return modelDetail.status !== 'draft'; +}); type StartWorkflowModel = Api.Workflow.StartWorkflowOperateParams; const startWorkflowModel: StartWorkflowModel = reactive(createDefaultStartWorkflowModel()); @@ -207,16 +212,20 @@ function handleTaskFinished() { emit('submitted'); } -watch(visible, () => { +watch(visible, async () => { if (visible.value) { - handleUpdateModelWhenEdit(); + await handleUpdateModelWhenEdit(); restoreValidation(); + + if (showApprovalInfoPanel.value) { + approvalInfoPanelRef.value?.initData(); + } } });