From 212361dc9430a592d1511ba0a27ddc3c35cf0493 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期一, 03 六月 2024 17:53:49 +0800 Subject: [PATCH] update 优化 去除请假案例状态字段 --- src/views/workflow/leave/leaveEdit.vue | 109 ++++++++++++++++++++++++++---------------------------- 1 files changed, 53 insertions(+), 56 deletions(-) diff --git a/src/views/workflow/leave/leaveEdit.vue b/src/views/workflow/leave/leaveEdit.vue index 83d5cd6..af25fad 100644 --- a/src/views/workflow/leave/leaveEdit.vue +++ b/src/views/workflow/leave/leaveEdit.vue @@ -4,36 +4,25 @@ <div style="display: flex; justify-content: space-between"> <div> <el-button - v-if=" - routeParams.type === 'add' || - (routeParams.type === 'update' && - form.processInstanceVo && - form.processInstanceVo.businessStatus && - (form.processInstanceVo.businessStatus === 'draft' || - form.processInstanceVo.businessStatus === 'cancel' || - form.processInstanceVo.businessStatus === 'back')) - " + v-if="routeParams.type === 'add' || + (routeParams.type === 'update' &&form.status && + (form.status === 'draft' || form.status === 'cancel' || form.status === 'back'))" :loading="buttonLoading" type="info" @click="submitForm('draft')" >鏆傚瓨</el-button > <el-button - v-if=" - routeParams.type === 'add' || - (routeParams.type === 'update' && - form.processInstanceVo && - (form.processInstanceVo.businessStatus === 'draft' || - form.processInstanceVo.businessStatus === 'cancel' || - form.processInstanceVo.businessStatus === 'back')) - " + v-if="routeParams.type === 'add' || + (routeParams.type === 'update' && form.status && + (form.status === 'draft' || form.status === 'cancel' || form.status === 'back'))" :loading="buttonLoading" type="primary" @click="submitForm('submit')" >鎻� 浜�</el-button > <el-button - v-if="routeParams.type === 'approval' && form.processInstanceVo && form.processInstanceVo.businessStatus === 'waiting'" + v-if="routeParams.type === 'approval' && form.status && form.status === 'waiting'" :loading="buttonLoading" type="primary" @click="approvalVerifyOpen" @@ -85,7 +74,7 @@ import SubmitVerify from '@/components/Process/submitVerify.vue'; import ApprovalRecord from '@/components/Process/approvalRecord.vue'; import { AxiosResponse } from 'axios'; - +import { StartProcessBo } from '@/api/workflow/workflowCommon/types'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; const buttonLoading = ref(false); @@ -120,9 +109,9 @@ const leaveFormRef = ref<ElFormInstance>(); -const submitFormData = ref<Record<string, any>>({ +const submitFormData = ref<StartProcessBo>({ businessKey: '', - processKey: '', + tableName: '', variables: {} }); const taskVariables = ref<Record<string, any>>({}); @@ -191,51 +180,59 @@ proxy?.$modal.msgError('璇峰亣鏃堕棿涓嶈兘涓虹┖'); return; } - leaveFormRef.value?.validate(async (valid: boolean) => { - form.value.startDate = leaveTime.value[0]; - form.value.endDate = leaveTime.value[1]; - if (valid) { - buttonLoading.value = true; - let res: AxiosResponse<LeaveVO>; - if (form.value.id) { - res = await updateLeave(form.value); - } else { - res = await addLeave(form.value); + try { + leaveFormRef.value?.validate(async (valid: boolean) => { + form.value.startDate = leaveTime.value[0]; + form.value.endDate = leaveTime.value[1]; + if (valid) { + buttonLoading.value = true; + let res: AxiosResponse<LeaveVO>; + if (form.value.id) { + res = await updateLeave(form.value); + } else { + res = await addLeave(form.value); + } + form.value = res.data; + if (status === 'draft') { + buttonLoading.value = false; + proxy?.$modal.msgSuccess('鏆傚瓨鎴愬姛'); + proxy.$tab.closePage(proxy.$route); + proxy.$router.go(-1); + } else { + await handleStartWorkFlow(res.data); + } } - form.value = res.data; - if (status === 'draft') { - buttonLoading.value = false; - proxy?.$modal.msgSuccess('鏆傚瓨鎴愬姛'); - proxy.$tab.closePage(proxy.$route); - proxy.$router.go(-1); - } else { - await handleStartWorkFlow(res.data); - } - } - }); + }); + } finally { + buttonLoading.value = false; + } }; //鎻愪氦鐢宠 const handleStartWorkFlow = async (data: LeaveVO) => { - submitFormData.value.processKey = 'leave1'; - submitFormData.value.businessKey = data.id; - //娴佺▼鍙橀噺 - taskVariables.value = { - entity: data, - leaveDays: data.leaveDays, - userList: [1, 2], - userList2: [1, 2] - }; - submitFormData.value.variables = taskVariables.value; - const resp = await startWorkFlow(submitFormData.value); - if (submitVerifyRef.value) { + try { + submitFormData.value.tableName = 'test_leave'; + submitFormData.value.businessKey = data.id; + //娴佺▼鍙橀噺 + taskVariables.value = { + entity: data, + leaveDays: data.leaveDays, + userList: [1, 3], + userList2: [1, 3] + }; + submitFormData.value.variables = taskVariables.value; + const resp = await startWorkFlow(submitFormData.value); + if (submitVerifyRef.value) { + buttonLoading.value = false; + submitVerifyRef.value.openDialog(resp.data.taskId); + } + } finally { buttonLoading.value = false; - submitVerifyRef.value.openDialog(resp.data.taskId); } }; //瀹℃壒璁板綍 const handleApprovalRecord = () => { - approvalRecordRef.value.init(processInstanceId.value); + approvalRecordRef.value.init(form.value.id); }; //鎻愪氦鍥炶皟 const submitCallback = async () => { -- Gitblit v1.9.3