update 优化审批按钮判断
This commit is contained in:
		| @ -53,7 +53,7 @@ export const getHistoryList = (businessKey: string): AxiosPromise<Record<string, | ||||
|  * @param businessKey 业务id | ||||
|  * @returns | ||||
|  */ | ||||
| export const getHistoryRecord = (businessKey: string) => { | ||||
| export const getHistoryRecord = (businessKey: string | number) => { | ||||
|   return request({ | ||||
|     url: `/workflow/processInstance/getHistoryRecord/${businessKey}`, | ||||
|     method: 'get' | ||||
|  | ||||
| @ -67,7 +67,7 @@ const tabActiveName = ref('bpmn'); | ||||
| const bpmnViewRef = ref<BpmnView>(); | ||||
|  | ||||
| //初始化查询审批记录 | ||||
| const init = async (businessKey: string) => { | ||||
| const init = async (businessKey: string | number) => { | ||||
|   visible.value = true; | ||||
|   loading.value = true; | ||||
|   tabActiveName.value = 'bpmn'; | ||||
|  | ||||
| @ -1,22 +1,28 @@ | ||||
| <template> | ||||
|   <el-dialog v-model="visible" draggable :title="title" :width="width" :height="height" append-to-body | ||||
|     :close-on-click-modal="false"> | ||||
|     <div class="p-2" v-if="multiInstance === 'add'"> | ||||
|   <el-dialog v-model="visible" draggable :title="title" :width="width" :height="height" append-to-body :close-on-click-modal="false"> | ||||
|     <div v-if="multiInstance === 'add'" class="p-2"> | ||||
|       <el-row :gutter="20"> | ||||
|         <!-- 部门树 --> | ||||
|         <el-col :lg="4" :xs="24" style=""> | ||||
|           <el-card shadow="hover"> | ||||
|             <el-input v-model="deptName" placeholder="请输入部门名称" prefix-icon="Search" clearable /> | ||||
|             <el-tree class="mt-2" ref="deptTreeRef" node-key="id" :data="deptOptions" | ||||
|               :props="{ label: 'label', children: 'children' }" :expand-on-click-node="false" | ||||
|               :filter-node-method="filterNode" highlight-current default-expand-all | ||||
|               @node-click="handleNodeClick"></el-tree> | ||||
|             <el-tree | ||||
|               ref="deptTreeRef" | ||||
|               class="mt-2" | ||||
|               node-key="id" | ||||
|               :data="deptOptions" | ||||
|               :props="{ label: 'label', children: 'children' }" | ||||
|               :expand-on-click-node="false" | ||||
|               :filter-node-method="filterNode" | ||||
|               highlight-current | ||||
|               default-expand-all | ||||
|               @node-click="handleNodeClick" | ||||
|             ></el-tree> | ||||
|           </el-card> | ||||
|         </el-col> | ||||
|         <el-col :lg="20" :xs="24"> | ||||
|           <transition :enter-active-class="proxy?.animate.searchAnimate.enter" | ||||
|             :leave-active-class="proxy?.animate.searchAnimate.leave"> | ||||
|             <div class="search" v-show="showSearch"> | ||||
|           <transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave"> | ||||
|             <div v-show="showSearch" class="search"> | ||||
|               <el-form ref="queryFormRef" :model="queryParams" :inline="true"> | ||||
|                 <el-form-item label="用户名称" prop="userName"> | ||||
|                   <el-input v-model="queryParams.userName" placeholder="请输入用户名称" clearable @keyup.enter="handleQuery" /> | ||||
| @ -25,8 +31,8 @@ | ||||
|                   <el-input v-model="queryParams.phonenumber" placeholder="请输入手机号码" clearable @keyup.enter="handleQuery" /> | ||||
|                 </el-form-item> | ||||
|                 <el-form-item> | ||||
|                   <el-button type="primary" @click="handleQuery" icon="Search">搜索</el-button> | ||||
|                   <el-button @click="resetQuery" icon="Refresh">重置</el-button> | ||||
|                   <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button> | ||||
|                   <el-button icon="Refresh" @click="resetQuery">重置</el-button> | ||||
|                 </el-form-item> | ||||
|               </el-form> | ||||
|             </div> | ||||
| @ -35,17 +41,16 @@ | ||||
|           <el-card shadow="hover"> | ||||
|             <template #header> | ||||
|               <el-row :gutter="10"> | ||||
|                 <right-toolbar v-model:showSearch="showSearch" @queryTable="handleQuery" :search="true"></right-toolbar> | ||||
|                 <right-toolbar v-model:showSearch="showSearch" :search="true" @query-table="handleQuery"></right-toolbar> | ||||
|               </el-row> | ||||
|             </template> | ||||
|  | ||||
|             <el-table v-loading="loading" :data="userList" ref="multipleTableRef" row-key="userId" | ||||
|               @selection-change="handleSelectionChange"> | ||||
|             <el-table ref="multipleTableRef" v-loading="loading" :data="userList" row-key="userId" @selection-change="handleSelectionChange"> | ||||
|               <el-table-column type="selection" width="50" align="center" /> | ||||
|               <el-table-column label="用户编号" align="center" key="userId" prop="userId" /> | ||||
|               <el-table-column label="用户名称" align="center" key="userName" prop="userName" :show-overflow-tooltip="true" /> | ||||
|               <el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" :show-overflow-tooltip="true" /> | ||||
|               <el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" width="120" /> | ||||
|               <el-table-column key="userId" label="用户编号" align="center" prop="userId" /> | ||||
|               <el-table-column key="userName" label="用户名称" align="center" prop="userName" :show-overflow-tooltip="true" /> | ||||
|               <el-table-column key="nickName" label="用户昵称" align="center" prop="nickName" :show-overflow-tooltip="true" /> | ||||
|               <el-table-column key="phonenumber" label="手机号码" align="center" prop="phonenumber" width="120" /> | ||||
|               <el-table-column label="创建时间" align="center" prop="createTime" width="160"> | ||||
|                 <template #default="scope"> | ||||
|                   <span>{{ scope.row.createTime }}</span> | ||||
| @ -53,18 +58,23 @@ | ||||
|               </el-table-column> | ||||
|             </el-table> | ||||
|  | ||||
|             <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" | ||||
|               v-model:limit="queryParams.pageSize" @pagination="handleQuery" /> | ||||
|             <pagination | ||||
|               v-show="total > 0" | ||||
|               v-model:page="queryParams.pageNum" | ||||
|               v-model:limit="queryParams.pageSize" | ||||
|               :total="total" | ||||
|               @pagination="handleQuery" | ||||
|             /> | ||||
|           </el-card> | ||||
|           <el-card shadow="hover"> | ||||
|             <el-tag v-for="(user, index) in chooseUserList" :key="user.userId" style="margin:2px" closable | ||||
|               @close="handleCloseTag(user, index)">{{ user.userName }} | ||||
|             <el-tag v-for="(user, index) in chooseUserList" :key="user.userId" style="margin: 2px" closable @close="handleCloseTag(user, index)" | ||||
|               >{{ user.userName }} | ||||
|             </el-tag> | ||||
|           </el-card> | ||||
|         </el-col> | ||||
|       </el-row> | ||||
|     </div> | ||||
|     <div class="p-2" v-if="multiInstance === 'delete'"> | ||||
|     <div v-if="multiInstance === 'delete'" class="p-2"> | ||||
|       <el-table v-loading="loading" :data="taskList" @selection-change="handleTaskSelection"> | ||||
|         <el-table-column type="selection" width="55" /> | ||||
|         <el-table-column prop="name" label="任务名称" /> | ||||
| @ -285,7 +295,7 @@ const handleNodeClick = (data: DeptVO) => { | ||||
| //删除tag | ||||
| const handleCloseTag = (user: UserVO, index: any) => { | ||||
|   if (multipleTableRef.value.selection && multipleTableRef.value.selection.length > 0) { | ||||
|     multipleTableRef.value.selection.forEach((u: UserVO, i: Number) => { | ||||
|     multipleTableRef.value.selection.forEach((u: UserVO, i: number) => { | ||||
|       if (user.userId === u.userId) { | ||||
|         multipleTableRef.value.selection.splice(i, 1); | ||||
|       } | ||||
|  | ||||
| @ -3,34 +3,10 @@ | ||||
|     <el-card shadow="never"> | ||||
|       <div style="display: flex; justify-content: space-between"> | ||||
|         <div> | ||||
|           <el-button | ||||
|             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.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.status && form.status === 'waiting'" | ||||
|             :loading="buttonLoading" | ||||
|             type="primary" | ||||
|             @click="approvalVerifyOpen" | ||||
|             >审批</el-button | ||||
|           > | ||||
|           <el-button v-if="form.status !== 'draft'" type="primary" @click="handleApprovalRecord">流程进度</el-button> | ||||
|           <el-button v-if="submitButtonShow" :loading="buttonLoading" type="info" @click="submitForm('draft')">暂存</el-button> | ||||
|           <el-button v-if="submitButtonShow" :loading="buttonLoading" type="primary" @click="submitForm('submit')">提 交</el-button> | ||||
|           <el-button v-if="approvalButtonShow" :loading="buttonLoading" type="primary" @click="approvalVerifyOpen">审批</el-button> | ||||
|           <el-button v-if="form && form.id && form.status !== 'draft'" type="primary" @click="handleApprovalRecord">流程进度</el-button> | ||||
|         </div> | ||||
|         <div> | ||||
|           <el-button style="float: right" @click="goBack()">返回</el-button> | ||||
| @ -246,6 +222,21 @@ const goBack = () => { | ||||
| const approvalVerifyOpen = async () => { | ||||
|   submitVerifyRef.value.openDialog(routeParams.value.taskId); | ||||
| }; | ||||
| //校验提交按钮是否显示 | ||||
| const submitButtonShow = computed(() => { | ||||
|   return ( | ||||
|     routeParams.value.type === 'add' || | ||||
|     (routeParams.value.type === 'update' && | ||||
|       form.value.status && | ||||
|       (form.value.status === 'draft' || form.value.status === 'cancel' || form.value.status === 'back')) | ||||
|   ); | ||||
| }); | ||||
|  | ||||
| //校验审批按钮是否显示 | ||||
| const approvalButtonShow = computed(() => { | ||||
|   return routeParams.value.type === 'approval' && form.value.status && form.value.status === 'waiting'; | ||||
| }); | ||||
|  | ||||
| onMounted(() => { | ||||
|   nextTick(async () => { | ||||
|     routeParams.value = proxy.$route.query; | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 gssong
					gssong