diff --git a/src/views/bpm/processInstance/create/ProcessDefinitionDetail.vue b/src/views/bpm/processInstance/create/ProcessDefinitionDetail.vue index 7b8da933..50d3fbd7 100644 --- a/src/views/bpm/processInstance/create/ProcessDefinitionDetail.vue +++ b/src/views/bpm/processInstance/create/ProcessDefinitionDetail.vue @@ -24,12 +24,10 @@ - @@ -85,6 +83,7 @@ import type { ApiAttrs } from '@form-create/element-ui/types/config' import { useTagsViewStore } from '@/store/modules/tagsView' import * as ProcessInstanceApi from '@/api/bpm/processInstance' import * as DefinitionApi from '@/api/bpm/definition' +import { ApprovalNodeInfo } from '@/api/bpm/processInstance' defineOptions({ name: 'ProcessDefinitionDetail' }) const props = defineProps<{ @@ -153,20 +152,20 @@ const initProcessInfo = async (row: any, formVariables?: any) => { /** 获取审批详情 */ const getApprovalDetail = async (row: any) => { try { - const param = { - processDefinitionId: row.id - } - const data = await ProcessInstanceApi.getApprovalDetail(param) + const data = await ProcessInstanceApi.getApprovalDetail({ processDefinitionId: row.id }) if (!data) { message.error('查询不到审批详情信息!') return } + // 获取发起人自选的任务 - startUserSelectTasks.value = data.activityNodes?.filter(node => CandidateStrategy.START_USER_SELECT === node.candidateStrategy ) + startUserSelectTasks.value = data.activityNodes?.filter( + (node: ApprovalNodeInfo) => CandidateStrategy.START_USER_SELECT === node.candidateStrategy + ) for (const node of startUserSelectTasks.value) { - // 初始化数据 startUserSelectAssignees.value[node.id] = [] } + // 获取审批节点,显示 Timeline 的数据 activityNodes.value = data.activityNodes } finally { @@ -209,12 +208,14 @@ const submitForm = async () => { } } +/** 取消发起审批 */ const handleCancel = () => { emit('cancel') } -const selectUserConfirm = (id, userList) => { - startUserSelectAssignees.value[id] = userList?.map((item) => item.id) +/** 选择发起人 */ +const selectUserConfirm = (id: string, userList: any[]) => { + startUserSelectAssignees.value[id] = userList?.map((item: any) => item.id) } defineExpose({ initProcessInfo }) diff --git a/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue b/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue index 49c7e4e1..bb5ccc43 100644 --- a/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue +++ b/src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue @@ -39,17 +39,21 @@
@@ -169,11 +173,9 @@ withDefaults( defineProps<{ activityNodes: ProcessInstanceApi.ApprovalNodeInfo[] // 审批节点信息 showStatusIcon?: boolean // 是否显示头像右下角状态图标 - startUserSelectAssignees?: any // 发起人选择审批人的数据 }>(), { - showStatusIcon: true, // 默认值为 true - startUserSelectAssignees: () => {} + showStatusIcon: true // 默认值为 true } ) @@ -280,10 +282,10 @@ const handleSelectUser = (activityId, selectedList) => { const emit = defineEmits<{ selectUserConfirm: [id: any, userList: any[]] }>() -const customApprover: any = ref({}) // key:activityId,value:用户列表 TODO 芋艿:变量改下 +const customApproveUsers: any = ref({}) // key:activityId,value:用户列表 // 选择完成 -const handleUserSelectConfirm = (activityId, userList) => { - customApprover.value[activityId] = userList || [] +const handleUserSelectConfirm = (activityId: string, userList: any[]) => { + customApproveUsers.value[activityId] = userList || [] emit('selectUserConfirm', activityId, userList) }