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();
+ }
}
});
-
+
@@ -259,8 +268,8 @@ watch(visible, () => {
{{ model.remark || '-' }}
-
-
+
+
diff --git a/src/components/custom/work-flow/workflow-task-apply-modal.vue b/src/components/custom/work-flow/workflow-task-apply-modal.vue
index 6cf844ae..babb2475 100644
--- a/src/components/custom/work-flow/workflow-task-apply-modal.vue
+++ b/src/components/custom/work-flow/workflow-task-apply-modal.vue
@@ -1,5 +1,6 @@
-
+
@@ -98,7 +98,7 @@ watch(visible, () => {
-
+
diff --git a/src/typings/api/workflow.api.d.ts b/src/typings/api/workflow.api.d.ts
index b9fd5634..28ed7c11 100644
--- a/src/typings/api/workflow.api.d.ts
+++ b/src/typings/api/workflow.api.d.ts
@@ -374,6 +374,8 @@ declare namespace Api {
version: string;
/** 运行时长 */
runDuration: string;
+ /** 附件 */
+ attachmentList: Api.System.Oss[];
}>;
type InstanceIdWithHisTask = CommonType.RecordNullable<{
diff --git a/src/typings/components.d.ts b/src/typings/components.d.ts
index d8341c2f..403eafb2 100644
--- a/src/typings/components.d.ts
+++ b/src/typings/components.d.ts
@@ -97,6 +97,7 @@ declare module 'vue' {
NGi: typeof import('naive-ui')['NGi']
NGrid: typeof import('naive-ui')['NGrid']
NGridItem: typeof import('naive-ui')['NGridItem']
+ NIcon: typeof import('naive-ui')['NIcon']
NInput: typeof import('naive-ui')['NInput']
NInputGroup: typeof import('naive-ui')['NInputGroup']
NInputGroupLabel: typeof import('naive-ui')['NInputGroupLabel']