|
|
|
|
@ -7,6 +7,7 @@ import useUserStore from "@/stores/modules/user";
|
|
|
|
|
import {FlowNodeEnum} from "@/enums/flowEnums"; |
|
|
|
|
import feedback from "@/utils/feedback"; |
|
|
|
|
import {getEntryWindowRecord} from '@/api/report/flow'; |
|
|
|
|
import {getWorkList} from '@/api/work/index'; |
|
|
|
|
const catchStore = useCatchStore(); |
|
|
|
|
const userStore = useUserStore(); |
|
|
|
|
const uid = userStore.user.userName; |
|
|
|
|
@ -15,6 +16,7 @@ const tableData = ref([])
|
|
|
|
|
const ressDialog =ref(false) |
|
|
|
|
const activeTab = ref('all') |
|
|
|
|
const exportLoading = ref(false) |
|
|
|
|
const pendingWorkMap = ref(new Map()) |
|
|
|
|
const stageNodeMap = { |
|
|
|
|
pending: ['review'], |
|
|
|
|
auditing: ['first', 'second', 'third', 'Lead'], |
|
|
|
|
@ -110,7 +112,7 @@ const handleClick =(tab)=>{
|
|
|
|
|
const tabName = tab.props.name; |
|
|
|
|
activeTab.value = tabName; |
|
|
|
|
query.value.current = 1; |
|
|
|
|
query.value.code = tabName === 'recessed' ? '1' : 'all'; |
|
|
|
|
query.value.code = tabName === 'all' ? 'all' : tabName === 'recessed' ? '1' : '0'; |
|
|
|
|
syncNodeListByTab() |
|
|
|
|
getList() |
|
|
|
|
} |
|
|
|
|
@ -136,9 +138,15 @@ const inputGetList = (val) => {
|
|
|
|
|
//查询数据 |
|
|
|
|
const getList =async ()=>{ |
|
|
|
|
loading.value=true |
|
|
|
|
const res = await reportPage(query.value) |
|
|
|
|
const [res, pendingWorks] = await Promise.all([ |
|
|
|
|
reportPage(query.value), |
|
|
|
|
getWorkList('first') |
|
|
|
|
]) |
|
|
|
|
tableData.value=res.records |
|
|
|
|
total.value=res.total |
|
|
|
|
pendingWorkMap.value = new Map( |
|
|
|
|
pendingWorks.map(item => [item.reportId, item]) |
|
|
|
|
) |
|
|
|
|
loading.value=false |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -164,6 +172,39 @@ getList()
|
|
|
|
|
|
|
|
|
|
//查看详情 |
|
|
|
|
const router = useRouter(); |
|
|
|
|
const handleWork = (row) => { |
|
|
|
|
const work = pendingWorkMap.value.get(row.id) |
|
|
|
|
if (!work) return |
|
|
|
|
|
|
|
|
|
if (work.isWarning) { |
|
|
|
|
router.push({ |
|
|
|
|
path: '/warning/business', |
|
|
|
|
query: { |
|
|
|
|
reportId: work.reportId, |
|
|
|
|
flowId: work.flowId, |
|
|
|
|
isAudit: true, |
|
|
|
|
isLeader: true |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
const workQuery = { |
|
|
|
|
isEnd: work.reportType === '结算项目', |
|
|
|
|
id: work.reportId, |
|
|
|
|
backPath: '/entryWindow' |
|
|
|
|
} |
|
|
|
|
if (work.flowCode === 'initial') { |
|
|
|
|
workQuery.node = work.flowCode |
|
|
|
|
} else { |
|
|
|
|
workQuery.isAudit = true |
|
|
|
|
} |
|
|
|
|
router.push({ |
|
|
|
|
path: '/report/edit/controlPrice', |
|
|
|
|
query: workQuery |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
const getDetail =(row,code)=>{ |
|
|
|
|
debugger |
|
|
|
|
//判断是否为报审人 |
|
|
|
|
@ -564,8 +605,8 @@ const isAdminShow = ()=>{
|
|
|
|
|
|
|
|
|
|
<!-- 未删除:显示正常操作 --> |
|
|
|
|
<template v-else> |
|
|
|
|
<el-button link type="primary" v-if="pendingWorkMap.has(row.id)" @click="handleWork(row)">办理</el-button> |
|
|
|
|
<el-button link type="primary" v-if="row.applicantId === uid && row.isRecessed == 1" @click="getDetail(row,'edit')">编辑</el-button> |
|
|
|
|
<!-- <el-button link type="primary" v-else-if="row.flowUserId === uid" @click="getDetail(row,'audit')">审批</el-button>--> |
|
|
|
|
<el-button link type="primary" v-else @click="getDetail(row)">详情</el-button> |
|
|
|
|
<el-button link type="danger" v-if="isAdminShow() && row.isRecessed == 0 && row.isSelfData === '1'" @click="recessedShowFun(row,0)"> 退窗</el-button> |
|
|
|
|
<el-button link type="primary" v-if="(isAdminShow() || row.applicantId === uid) && row.isRecessed == 1" @click="recessedShowFun(row,1)">重新进窗</el-button> |
|
|
|
|
|