修改部分按钮重复点击
This commit is contained in:
@@ -11,34 +11,22 @@
|
||||
</template>
|
||||
<!-- 情况一:流程表单 -->
|
||||
<el-col v-if="processInstance?.processDefinition?.formType === 10" :offset="6" :span="16">
|
||||
<form-create
|
||||
v-model="detailForm.value"
|
||||
v-model:api="fApi"
|
||||
:option="detailForm.option"
|
||||
:rule="detailForm.rule"
|
||||
/>
|
||||
<form-create v-model="detailForm.value" v-model:api="fApi" :option="detailForm.option"
|
||||
:rule="detailForm.rule" />
|
||||
</el-col>
|
||||
<!-- 情况二:业务表单 -->
|
||||
<div v-if="processInstance?.processDefinition?.formType === 20">
|
||||
<BusinessFormComponent :id="processInstance.businessKey" :applyTitle="processInstance.name" />
|
||||
</div>
|
||||
</el-card>
|
||||
<el-card
|
||||
v-for="(item, index) in runningTasks"
|
||||
:key="index"
|
||||
v-loading="processInstanceLoading"
|
||||
class="box-card"
|
||||
>
|
||||
<el-card v-for="(item, index) in runningTasks" :key="index" v-loading="processInstanceLoading"
|
||||
class="box-card">
|
||||
<template #header>
|
||||
<span class="el-icon-picture-outline">当前任务【{{ item.name }}】</span>
|
||||
</template>
|
||||
<el-col :offset="6" :span="16">
|
||||
<el-form
|
||||
:ref="'form' + index"
|
||||
:model="auditForms[index]"
|
||||
:rules="auditRule"
|
||||
label-width="100px"
|
||||
>
|
||||
<el-form :ref="'form' + index" :model="auditForms[index]" :rules="auditRule"
|
||||
label-width="100px">
|
||||
<el-form-item v-if="processInstance && processInstance.name" label="流程名">
|
||||
{{ processInstance.name }}
|
||||
</el-form-item>
|
||||
@@ -55,20 +43,12 @@
|
||||
{{ runningTasks[index]?.formName }}
|
||||
</span>
|
||||
</template>
|
||||
<form-create
|
||||
v-model="approveForms[index].value"
|
||||
v-model:api="approveFormFApis[index]"
|
||||
:option="approveForms[index].option"
|
||||
:rule="approveForms[index].rule"
|
||||
/>
|
||||
<form-create v-model="approveForms[index].value" v-model:api="approveFormFApis[index]"
|
||||
:option="approveForms[index].option" :rule="approveForms[index].rule" />
|
||||
</el-card>
|
||||
|
||||
<el-form-item label="审批建议" prop="reason" style="margin-top: 15px">
|
||||
<el-input
|
||||
v-model="auditForms[index].reason"
|
||||
placeholder="请输入审批建议"
|
||||
type="textarea"
|
||||
/>
|
||||
<el-input v-model="auditForms[index].reason" placeholder="请输入审批建议" type="textarea" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label='抄送人' prop='copyUserIds'>-->
|
||||
<!-- <el-select v-model='auditForms[index].copyUserIds' multiple placeholder='请选择抄送人'>-->
|
||||
@@ -82,8 +62,10 @@
|
||||
<!-- </el-form-item>-->
|
||||
</el-form>
|
||||
<div style="margin-bottom: 20px; margin-left: 10%; font-size: 14px">
|
||||
<el-button type="success" :icon="Select" @click="handleAudit(item, true)">通过</el-button>
|
||||
<el-button type="danger" :icon="Close" @click="handleAudit(item, false)">不通过</el-button>
|
||||
<el-button type="success" :icon="Select" @click="handleAudit(item, true)"
|
||||
:loading="loading">通过</el-button>
|
||||
<el-button type="danger" :icon="Close" @click="handleAudit(item, false)"
|
||||
:loading="loading">不通过</el-button>
|
||||
<!-- <el-button type='primary' @click='openTaskUpdateAssigneeForm(item.id)'>-->
|
||||
<!-- <Icon icon='ep:edit' />-->
|
||||
<!-- 转办-->
|
||||
@@ -100,7 +82,7 @@
|
||||
</div>
|
||||
</el-col>
|
||||
</el-card>
|
||||
|
||||
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="申请信息" name="申请信息" v-if="runningTasks.length == 0">
|
||||
<!-- 申请信息 -->
|
||||
@@ -110,12 +92,8 @@
|
||||
</template>
|
||||
<!-- 情况一:流程表单 -->
|
||||
<el-col v-if="processInstance?.processDefinition?.formType === 10" :offset="6" :span="16">
|
||||
<form-create
|
||||
v-model="detailForm.value"
|
||||
v-model:api="fApi"
|
||||
:option="detailForm.option"
|
||||
:rule="detailForm.rule"
|
||||
/>
|
||||
<form-create v-model="detailForm.value" v-model:api="fApi" :option="detailForm.option"
|
||||
:rule="detailForm.rule" />
|
||||
</el-col>
|
||||
<!-- 情况二:业务表单 -->
|
||||
<div v-if="processInstance?.processDefinition?.formType === 20">
|
||||
@@ -125,22 +103,12 @@
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="审批记录" name="审批记录">
|
||||
<!-- 审批记录 -->
|
||||
<ProcessInstanceTaskList
|
||||
:loading="tasksLoad"
|
||||
:process-instance="processInstance"
|
||||
:tasks="tasks"
|
||||
@refresh="getTaskList"
|
||||
/>
|
||||
<ProcessInstanceTaskList :loading="tasksLoad" :process-instance="processInstance" :tasks="tasks"
|
||||
@refresh="getTaskList" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="流程图" name="流程图">
|
||||
<ProcessInstanceBpmnViewer
|
||||
ref="mapRef"
|
||||
:id="`${id}`"
|
||||
:bpmn-xml="bpmnXml"
|
||||
:loading="processInstanceLoading"
|
||||
:process-instance="processInstance"
|
||||
:tasks="tasks"
|
||||
/>
|
||||
<ProcessInstanceBpmnViewer ref="mapRef" :id="`${id}`" :bpmn-xml="bpmnXml"
|
||||
:loading="processInstanceLoading" :process-instance="processInstance" :tasks="tasks" />
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
<ContentWrap>
|
||||
@@ -192,6 +160,7 @@ const processInstanceLoading = ref(false) // 流程实例的加载中
|
||||
const processInstance = ref({}) // 流程实例
|
||||
const bpmnXml = ref('') // BPMN XML
|
||||
const tasksLoad = ref(true) // 任务的加载中
|
||||
const loading = ref(false) // 任务的加载中
|
||||
const tasks = ref<any[]>([]) // 任务列表
|
||||
// ========== 审批信息 ==========
|
||||
const runningTasks = ref<any[]>([]) // 运行中的任务
|
||||
@@ -226,6 +195,7 @@ watch(
|
||||
|
||||
/** 处理审批通过和不通过的操作 */
|
||||
const handleAudit = async (task, pass) => {
|
||||
loading.value = true
|
||||
// 1.1 获得对应表单
|
||||
const index = runningTasks.value.indexOf(task)
|
||||
const auditFormRef = proxy.$refs['form' + index][0]
|
||||
@@ -262,7 +232,10 @@ const handleAudit = async (task, pass) => {
|
||||
ElMessage.success('审批不通过成功')
|
||||
}
|
||||
// 2.2 加载最新数据
|
||||
getDetail()
|
||||
await getDetail()
|
||||
await setTimeout(() => {
|
||||
loading.value = false
|
||||
}, 0);
|
||||
}
|
||||
|
||||
/** 转派审批人 */
|
||||
@@ -479,6 +452,7 @@ onMounted(async () => {
|
||||
height: calc(100vh - 200px) !important;
|
||||
overflow: auto !important;
|
||||
}
|
||||
|
||||
::v-deep .el-col-offset-6 {
|
||||
margin-left: 15% !important;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user