|
@@ -6,17 +6,17 @@
|
|
|
<div class="search-segment" style="flex: 1 1 0%">
|
|
|
<el-input v-model="processName" placeholder="流程名称">
|
|
|
<template #append>
|
|
|
- <el-button icon="Search" @click="init" />
|
|
|
+ <el-button icon="Search" @click.stop="init" />
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</div>
|
|
|
<div class="search-segment">
|
|
|
<el-tooltip effect="dark" content="重置" placement="top">
|
|
|
- <el-button icon="Refresh" @click="resetSearch('external')" />
|
|
|
+ <el-button icon="Refresh" @click.stop="resetSearch('external')" />
|
|
|
</el-tooltip>
|
|
|
</div>
|
|
|
<div class="search-segment">
|
|
|
- <EditPopover placement="right" :width="320" :showFooter="false" v-model:visible="searchMoreVisible">
|
|
|
+ <EditPopover v-model:visible="searchMoreVisible" placement="right" :width="320" :show-footer="false">
|
|
|
<template #reference>
|
|
|
<el-button icon="Filter" />
|
|
|
</template>
|
|
@@ -27,12 +27,7 @@
|
|
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
<!-- 流程分组 -->
|
|
|
- <el-select
|
|
|
- v-if="currentTaskType !== 'pendingApproval'"
|
|
|
- v-model="value1"
|
|
|
- placeholder="流程分组"
|
|
|
- style="margin-bottom: 10px; width: 240px"
|
|
|
- >
|
|
|
+ <el-select v-if="currentTaskType !== 'pendingApproval'" v-model="value1" placeholder="流程分组" style="margin-bottom: 10px; width: 240px">
|
|
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
<!-- 流程状态 -->
|
|
@@ -79,23 +74,45 @@
|
|
|
<!--头部-->
|
|
|
<div class="header">
|
|
|
<el-text tag="b">{{ i.processName }}</el-text>
|
|
|
- <el-tag v-if="currentTaskType === 'pendingApproval'">待审批</el-tag>
|
|
|
- <template v-else>
|
|
|
- <el-tag v-if="i.instanceState === 0">审批中</el-tag>
|
|
|
- <el-tag v-if="i.instanceState === 1" type="success">审批通过</el-tag>
|
|
|
- <el-tag v-if="i.instanceState === 2" type="danger">审批拒绝</el-tag>
|
|
|
- <el-tag v-if="i.instanceState === 3">撤销审批</el-tag>
|
|
|
- <el-tag v-if="i.instanceState === 4" type="danger">超时结束</el-tag>
|
|
|
- <el-tag v-if="i.instanceState === 5" type="danger">强制终止</el-tag>
|
|
|
- </template>
|
|
|
+ <div>
|
|
|
+ <el-text v-if="['pendingApproval', 'pendingClaim'].indexOf(props.currentTaskType) !== -1" style="margin-right: 15px">{{
|
|
|
+ i.performType == 2 ? '会签' : i.performType == 3 ? '或签' : i.performType == 4 ? '票签' : ''
|
|
|
+ }}</el-text>
|
|
|
+
|
|
|
+ <el-tag v-if="currentTaskType === 'pendingApproval'">待审批</el-tag>
|
|
|
+ <template v-else>
|
|
|
+ <el-tag v-if="i.instanceState === 0">审批中</el-tag>
|
|
|
+ <el-tag v-if="i.instanceState === 1" type="success">审批通过</el-tag>
|
|
|
+ <el-tag v-if="i.instanceState === 2" type="danger">审批拒绝</el-tag>
|
|
|
+ <el-tag v-if="i.instanceState === 3">撤销审批</el-tag>
|
|
|
+ <el-tag v-if="i.instanceState === 4" type="danger">超时结束</el-tag>
|
|
|
+ <el-tag v-if="i.instanceState === 5" type="danger">强制终止</el-tag>
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<!--操作类容-->
|
|
|
- <div class="summary-list"></div>
|
|
|
+ <div class="summary-list">
|
|
|
+ <template v-if="['myReceived', 'myApplication', 'approved'].indexOf(currentTaskType) !== -1">
|
|
|
+ <div v-if="i.endTime" class="summary-item">
|
|
|
+ <div class="label">结束时间:</div>
|
|
|
+ <div class="value">{{ i.endTime }}</div>
|
|
|
+ </div>
|
|
|
+ <div v-if="i.duration" class="summary-item">
|
|
|
+ <div class="label">处理耗时:</div>
|
|
|
+ <div class="value">{{ i.duration }}</div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ <div class="summary-item">
|
|
|
+ <div class="label">当前所在节点:</div>
|
|
|
+ <div class="value">{{ i.currentNode }}</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<!--底部-->
|
|
|
<div class="footer">
|
|
|
<!-- 头像 -->
|
|
|
<div class="initiator">
|
|
|
- <FlowNodeAvatar :name="'等待后台补充用户'" />
|
|
|
+ <FlowNodeAvatar :name="i.createBy" />
|
|
|
</div>
|
|
|
<!-- 时间 -->
|
|
|
<div class="begin-time">提交于 {{ i.createTime }}</div>
|
|
@@ -236,6 +253,14 @@ const getPagedSatellites = async () => {
|
|
|
}
|
|
|
const { records, total, pages } = responseData
|
|
|
records.forEach(item => {
|
|
|
+ // todo .. 这里将每个模块的不同值进行调整
|
|
|
+ // 我收到、我申请 已审批 [结束时间 / 处理耗时 / 当前所在节点]
|
|
|
+ // 待审批、认领 [会签/货签/票钱、当前所在节点]
|
|
|
+ const flag1 = ['myReceived', 'myApplication', 'approved'].indexOf(props.currentTaskType) !== -1
|
|
|
+ const flag2 = ['pendingApproval', 'pendingClaim'].indexOf(props.currentTaskType) !== -1
|
|
|
+ item.currentNode = flag2 ? item.taskName : item.currentNode // 当前节点
|
|
|
+ item.createTime = flag2 ? item.launchTime : item.createTime // 创建时间
|
|
|
+ item.createBy = flag2 ? item.launchBy : item.createBy // 创建人
|
|
|
satelliteList.value.push(item)
|
|
|
})
|
|
|
totalNumber.value = total
|
|
@@ -358,6 +383,22 @@ const disabledInfinite = computed(() => noMore.value)
|
|
|
// 操作类容
|
|
|
.summary-list {
|
|
|
margin-top: 10px;
|
|
|
+ .summary-item {
|
|
|
+ display: flex;
|
|
|
+ min-height: 20px;
|
|
|
+ .label {
|
|
|
+ color: #9ba5b3;
|
|
|
+ overflow: hidden;
|
|
|
+ white-space: nowrap;
|
|
|
+ flex-shrink: 0;
|
|
|
+ }
|
|
|
+ .value {
|
|
|
+ color: #232730;
|
|
|
+ overflow: hidden;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ white-space: nowrap;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 底部
|