|
@@ -1,15 +1,22 @@
|
|
|
<template>
|
|
|
<el-card shadow="never" class="mb20" style="position: relative" v-loading="state.tableLoading">
|
|
|
- <el-button link type="primary" style="position: absolute; right: 20px; top: 32px; z-index: 2" @click="linkList">
|
|
|
+ <el-button
|
|
|
+ link
|
|
|
+ type="primary"
|
|
|
+ style="position: absolute; right: 20px; top: 32px; z-index: 2"
|
|
|
+ @click="linkList"
|
|
|
+ v-auths="['home:orderTodo', 'home:orderSeatTodo']"
|
|
|
+ >
|
|
|
更多<SvgIcon name="ele-ArrowRight" />
|
|
|
</el-button>
|
|
|
- <el-tabs v-model="activeName" class="demo-tabs" @tab-change="handleChange">
|
|
|
- <el-tab-pane :name="item.value" v-for="item in tabsList" :key="item.value" :label="item.label"></el-tab-pane>
|
|
|
+ <el-tabs v-model="activeName" @tab-change="handleChange" v-if="auths(['home:orderTodo', 'home:orderSeatTodo'])">
|
|
|
+ <el-tab-pane name="0" label="工单待办" v-if="auth('home:orderTodo')"></el-tab-pane>
|
|
|
+ <el-tab-pane name="1" label="工单坐席待办" v-if="auth('home:orderSeatTodo')"></el-tab-pane>
|
|
|
</el-tabs>
|
|
|
<!-- 表格 -->
|
|
|
- <el-table :data="state.tableList" row-key="id">
|
|
|
+ <el-table :data="state.tableList" row-key="id" v-if="auths(['home:orderTodo', 'home:orderSeatTodo'])">
|
|
|
<!-- 工单待办 -->
|
|
|
- <template v-if="activeName === '0'">
|
|
|
+ <template v-if="activeName === '0' && auth('home:orderTodo')">
|
|
|
<el-table-column prop="no" label="工单编码" show-overflow-tooltip width="150"></el-table-column>
|
|
|
<el-table-column width="100" label="省/市工单" prop="isProvince">
|
|
|
<template #default="{ row }">
|
|
@@ -50,195 +57,59 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</template>
|
|
|
- <!-- 延期待办 -->
|
|
|
- <template v-if="activeName === '1'">
|
|
|
- <el-table-column prop="order.no" label="工单编码" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column width="100" label="省/市工单" prop="isProvince">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ row.order?.isProvince ? '省工单' : '市工单' }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="工单标题" show-overflow-tooltip width="300">
|
|
|
- <template #default="{ row }">
|
|
|
- <span class="color-primary">{{ row.order?.title }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="delayStateText" label="延期审批状态" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="expiredTime" label="受理时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.order?.expiredTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="延期申请时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="creatorOrgName" label="延期申请部门" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="creatorName" label="延期申请人" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="delayNum" label="延期申请时限" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="delayUnitText" label="延期申请单位" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="delayReason" label="申请理由" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column label="申请前期满时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.applyDelayTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="通过后期满时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.afterDelay, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="操作" width="160" fixed="right" align="center">
|
|
|
- <template #default="{ row }">
|
|
|
- <el-button link type="primary" @click="onDelayDetail(row)" title="查看延期详情"> 延期详情 </el-button>
|
|
|
- <order-detail :order="row.order" @updateList="handleChange('1')" />
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </template>
|
|
|
- <!-- 甄别待办 -->
|
|
|
- <template v-if="activeName === '2'">
|
|
|
- <el-table-column prop="order.no" label="工单编码" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column width="100" label="省/市工单" prop="isProvince">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ row.order?.isProvince ? '省工单' : '市工单' }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="工单标题" show-overflow-tooltip width="300">
|
|
|
- <template #default="{ row }">
|
|
|
- <span class="color-primary">{{ row.order?.title }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="statusText" label="甄别状态" show-overflow-tooltip></el-table-column>
|
|
|
- <el-table-column prop="currentStepName" label="当前节点" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column prop="order.sourceChannel" label="来源方式" show-overflow-tooltip></el-table-column>
|
|
|
- <el-table-column prop="order.acceptType" label="受理类型" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="expiredTime" label="受理人" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span
|
|
|
- >{{ row.order?.acceptorName }} <span v-if="row.order?.acceptorStaffNo">[{{ row.order?.acceptorStaffNo }}]</span>
|
|
|
- </span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="order.actualHandleOrgName" label="接办部门" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column prop="order.startTime" label="受理时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.order?.startTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="creationTime" label="甄别申请时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="creatorName" label="甄别申请人" show-overflow-tooltip width="170"></el-table-column>
|
|
|
- <el-table-column prop="creatorOrgName" label="甄别申请部门" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column prop="typeDicName" label="甄别申请类型" show-overflow-tooltip width="170"></el-table-column>
|
|
|
- <el-table-column prop="content" label="甄别申请原因" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column label="操作" width="160" fixed="right" align="center">
|
|
|
- <template #default="{ row }">
|
|
|
- <el-button link type="primary" @click="onDiscernDetail(row)" title="查看甄别详情"> 甄别详情 </el-button>
|
|
|
- <order-detail :order="row.order" @updateList="handleChange('2')" />
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </template>
|
|
|
- <!-- 发布待办 -->
|
|
|
- <template v-if="activeName === '3'">
|
|
|
+ <!-- 工单坐席待办 -->
|
|
|
+ <template v-if="activeName === '1' && auth('home:orderSeatTodo')">
|
|
|
<el-table-column prop="no" label="工单编码" show-overflow-tooltip width="150"></el-table-column>
|
|
|
<el-table-column width="100" label="省/市工单" prop="isProvince">
|
|
|
<template #default="{ row }">
|
|
|
<span>{{ row.isProvince ? '省工单' : '市工单' }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="statusText" label="发布状态" show-overflow-tooltip></el-table-column>
|
|
|
- <el-table-column label="工单标题" show-overflow-tooltip width="300">
|
|
|
+ <el-table-column prop="currentStepName" label="办理节点" show-overflow-tooltip width="150"></el-table-column>
|
|
|
+ <template v-if="state.queryParams.Status === 'false'">
|
|
|
+ <el-table-column prop="creationTime" label="节点签收时间" show-overflow-tooltip width="170">
|
|
|
+ <template #default="{ row }">
|
|
|
+ <span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </template>
|
|
|
+ <el-table-column label="工单状态" show-overflow-tooltip width="100" prop="statusText"></el-table-column>
|
|
|
+ <el-table-column label="标题" show-overflow-tooltip width="300">
|
|
|
<template #default="{ row }">
|
|
|
<span class="color-primary">{{ row.title }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="sourceChannel" label="来源方式" show-overflow-tooltip></el-table-column>
|
|
|
- <el-table-column prop="expiredTime" label="受理人" show-overflow-tooltip width="170">
|
|
|
+ <el-table-column label="生成时间" show-overflow-tooltip width="170">
|
|
|
<template #default="{ row }">
|
|
|
- <span
|
|
|
- >{{ row.acceptorName }} <span v-if="row.acceptorStaffNo">[{{ row.acceptorStaffNo }}]</span>
|
|
|
- </span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="counterSignTypeText" label="中心会签" show-overflow-tooltip width="100"></el-table-column>
|
|
|
- <el-table-column prop="actualHandleOrgName" label="接办部门" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="actualHandleTime" label="接办时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.actualHandleTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
+ <span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="startTime" label="受理时间" show-overflow-tooltip width="170">
|
|
|
+ <el-table-column label="受理时间" show-overflow-tooltip width="170">
|
|
|
<template #default="{ row }">
|
|
|
<span>{{ formatDate(row.startTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="办结时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.filedTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="操作" width="140" fixed="right" align="center">
|
|
|
- <template #default="{ row }">
|
|
|
- <el-button link type="primary" @click="onRelease(row)" title="发布工单"> 发布 </el-button>
|
|
|
- <order-detail :order="row" @updateList="handleChange('3')" />
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </template>
|
|
|
- <!-- 回访待办 -->
|
|
|
- <template v-if="activeName === '4'">
|
|
|
- <el-table-column prop="order.no" label="工单编码" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column label="工单标题" show-overflow-tooltip width="300">
|
|
|
+ <el-table-column label="工单期满时间" show-overflow-tooltip width="170">
|
|
|
<template #default="{ row }">
|
|
|
- <span class="color-primary">{{ row.order?.title }}</span>
|
|
|
+ <span>{{ formatDate(row.expiredTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="order.sourceChannel" label="来源方式" show-overflow-tooltip></el-table-column>
|
|
|
- <el-table-column prop="visitStateText" label="回访状态" show-overflow-tooltip></el-table-column>
|
|
|
- <el-table-column prop="order.acceptType" label="受理类型" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column prop="order.hotspotName" label="热点分类" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column prop="expiredTime" label="受理人" show-overflow-tooltip width="170">
|
|
|
+ <el-table-column prop="acceptType" label="受理类型" show-overflow-tooltip width="120"></el-table-column>
|
|
|
+ <el-table-column label="紧急程度" show-overflow-tooltip prop="emergencyLevelText"></el-table-column>
|
|
|
+ <el-table-column prop="sourceChannel" label="来源方式" show-overflow-tooltip width="120"></el-table-column>
|
|
|
+ <el-table-column prop="hotspotName" label="热点分类" show-overflow-tooltip width="100"></el-table-column>
|
|
|
+ <el-table-column prop="employeeName" label="受理人" show-overflow-tooltip width="150">
|
|
|
<template #default="{ row }">
|
|
|
<span
|
|
|
- >{{ row.order?.acceptorName }} <span v-if="row.order?.acceptorStaffNo">[{{ row.order?.acceptorStaffNo }}]</span>
|
|
|
+ >{{ row.acceptorName }} <span v-if="row.acceptorStaffNo">[{{ row.acceptorStaffNo }}]</span>
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="order.orgLevelOneName" label="一级部门" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column prop="order.actualHandleOrgName" label="接办部门" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column prop="order.startTime" label="受理时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.order?.startTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="办结时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.order?.filedTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="发布时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.publishTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="回访任务创建时间" show-overflow-tooltip width="170">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ formatDate(row.creationTime, 'YYYY-mm-dd HH:MM:SS') }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="employeeName" label="回访人" show-overflow-tooltip width="150"></el-table-column>
|
|
|
- <el-table-column label="是否接通" show-overflow-tooltip width="150">
|
|
|
- <template #default="{ row }">
|
|
|
- <span>{{ row.isPutThrough ? '未接通' : '已接通' }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
<el-table-column label="操作" width="140" fixed="right" align="center">
|
|
|
<template #default="{ row }">
|
|
|
- <el-button link type="primary" @click="onManpower(row)" title="工单回访"> 回访 </el-button>
|
|
|
- <order-detail :order="row.order" @updateList="handleChange('4')" />
|
|
|
+ <el-button link type="success" @click="onOrderEdit(row)" title="编辑工单" v-if="row.canEdit" v-auth="'todo:seats:edit'"> 修改 </el-button>
|
|
|
+ <el-button link type="primary" @click="onSign(row)" title="签收工单" v-if="row.canSign" v-auth="'todo:seats:sign'"> 签收 </el-button>
|
|
|
+ <order-detail :order="row" @updateList="handleChange('1')" v-if="row.workflowId" />
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</template>
|
|
@@ -246,32 +117,18 @@
|
|
|
<Empty />
|
|
|
</template>
|
|
|
</el-table>
|
|
|
- <!-- 延期详情 -->
|
|
|
- <delay-detail ref="delayDetailRef" @updateList="handleChange('1')" />
|
|
|
- <!-- 甄别详情 -->
|
|
|
- <discern-detail ref="discernDetailRef" @updateList="handleChange('2')" />
|
|
|
- <!-- 工单发布详情 -->
|
|
|
- <order-publish ref="orderPublishRef" @updateList="handleChange('3')" />
|
|
|
- <!-- 回访 -->
|
|
|
- <visit-detail ref="visitDetailRef" @updateList="handleChange('4')" />
|
|
|
+ <Empty v-else />
|
|
|
</el-card>
|
|
|
</template>
|
|
|
<script setup lang="ts">
|
|
|
-import { defineAsyncComponent, onMounted, reactive, ref } from 'vue';
|
|
|
+import { computed, defineAsyncComponent, onMounted, reactive, ref, watch, watchEffect } from 'vue';
|
|
|
import { formatDate } from '@/utils/formatTime';
|
|
|
import { useRouter } from 'vue-router';
|
|
|
-import { orderListTodo } from '@/api/todo/order';
|
|
|
-import { delayList } from '@/api/todo/delay';
|
|
|
-import { screenList } from '@/api/business/discern';
|
|
|
-import { publishList } from '@/api/todo/publish';
|
|
|
-import { visitList } from '@/api/todo/visit';
|
|
|
-import { ElButton } from 'element-plus';
|
|
|
+import { orderListTodo, orderSign, seatsListTodo } from '@/api/todo/order';
|
|
|
+import { ElButton, ElMessage, ElMessageBox } from 'element-plus';
|
|
|
+import { auth, auths } from '@/utils/authFunction';
|
|
|
|
|
|
const OrderDetail = defineAsyncComponent(() => import('@/components/OrderDetail/index.vue')); // 工单详情
|
|
|
-const DelayDetail = defineAsyncComponent(() => import('@/views/business/delay/components/Delay-detail.vue')); // 延期详情
|
|
|
-const DiscernDetail = defineAsyncComponent(() => import('@/views/business/discern/components/Discern-detail.vue')); // 甄别详情
|
|
|
-const OrderPublish = defineAsyncComponent(() => import('@/views/business/publish/component/Order-publish.vue')); // 发布详情
|
|
|
-const VisitDetail = defineAsyncComponent(() => import('/src/views/business/visit/component/Visit-detail.vue')); // 回访详情
|
|
|
const state = reactive<any>({
|
|
|
tableLoading: false, // 表格loading
|
|
|
tableList: [], //表格数据
|
|
@@ -280,49 +137,14 @@ const state = reactive<any>({
|
|
|
PageSize: 10,
|
|
|
},
|
|
|
});
|
|
|
-const tabsList = ref([
|
|
|
- {
|
|
|
- label: '工单待办',
|
|
|
- name: '0',
|
|
|
- },
|
|
|
- {
|
|
|
- label: '延期待办',
|
|
|
- name: '1',
|
|
|
- },
|
|
|
- {
|
|
|
- label: '甄别待办',
|
|
|
- name: '2',
|
|
|
- },
|
|
|
- {
|
|
|
- label: '发布待办',
|
|
|
- name: '3',
|
|
|
- },
|
|
|
- {
|
|
|
- label: '回访待办',
|
|
|
- name: '4',
|
|
|
- },
|
|
|
-]);
|
|
|
-const activeName = ref<string>('0'); // tab切换
|
|
|
-// 查看延期详情
|
|
|
-const delayDetailRef = ref<RefType>();
|
|
|
-const onDelayDetail = (row: any) => {
|
|
|
- delayDetailRef.value.openDialog(row);
|
|
|
-};
|
|
|
-// 查看甄别详情
|
|
|
-const discernDetailRef = ref<RefType>();
|
|
|
-const onDiscernDetail = (row: any) => {
|
|
|
- discernDetailRef.value.openDialog(row);
|
|
|
-};
|
|
|
-// 发布
|
|
|
-const orderPublishRef = ref<RefType>(); // 工单发布详情ref
|
|
|
-const onRelease = (row: any) => {
|
|
|
- orderPublishRef.value.openDialog(row);
|
|
|
-};
|
|
|
-// 工单回访
|
|
|
-const visitDetailRef = ref<RefType>(); // 工单回访ref
|
|
|
-const onManpower = (row: any) => {
|
|
|
- visitDetailRef.value.openDialog(row);
|
|
|
-};
|
|
|
+const activeName = ref('0');
|
|
|
+watchEffect(() => {
|
|
|
+ if (auth('home:orderTodo')) {
|
|
|
+ return (activeName.value = '0');
|
|
|
+ } else if (auth('home:orderSeatTodo')) {
|
|
|
+ return (activeName.value = '1');
|
|
|
+ }
|
|
|
+});
|
|
|
// tab切换
|
|
|
const handleChange = async (tab: any) => {
|
|
|
state.tableLoading = true;
|
|
@@ -336,41 +158,17 @@ const handleChange = async (tab: any) => {
|
|
|
state.tableLoading = false;
|
|
|
}
|
|
|
break;
|
|
|
- case '1': // 延期待办
|
|
|
+ case '1': // 工单待办
|
|
|
try {
|
|
|
- const res: any = await delayList({ ...state.queryParams, IsApply: 'false' });
|
|
|
+ const res: any = await seatsListTodo({ ...state.queryParams, IsHandled: 'false' });
|
|
|
state.tableList = res.result?.items ?? [];
|
|
|
state.tableLoading = false;
|
|
|
} catch (error) {
|
|
|
state.tableLoading = false;
|
|
|
}
|
|
|
break;
|
|
|
- case '2': //甄别待办
|
|
|
- try {
|
|
|
- const res: any = await screenList({ ...state.queryParams, Status: '0' });
|
|
|
- state.tableList = res.result?.items ?? [];
|
|
|
- state.tableLoading = false;
|
|
|
- } catch (error) {
|
|
|
- state.tableLoading = false;
|
|
|
- }
|
|
|
- break;
|
|
|
- case '3': // 发布待办
|
|
|
- try {
|
|
|
- const res: any = await publishList({ ...state.queryParams });
|
|
|
- state.tableList = res.result?.items ?? [];
|
|
|
- state.tableLoading = false;
|
|
|
- } catch (error) {
|
|
|
- state.tableLoading = false;
|
|
|
- }
|
|
|
- break;
|
|
|
- case '4': // 回访待办
|
|
|
- try {
|
|
|
- const res: any = await visitList({ ...state.queryParams, VisitState: '2' });
|
|
|
- state.tableList = res.result?.items ?? [];
|
|
|
- state.tableLoading = false;
|
|
|
- } catch (error) {
|
|
|
- state.tableLoading = false;
|
|
|
- }
|
|
|
+ default:
|
|
|
+ state.tableLoading = false;
|
|
|
break;
|
|
|
}
|
|
|
};
|
|
@@ -382,20 +180,44 @@ const linkList = () => {
|
|
|
case '0': // 工单待办
|
|
|
router.push('/todo/order');
|
|
|
break;
|
|
|
- case '1': // 延期待办
|
|
|
- router.push('/todo/delay');
|
|
|
- break;
|
|
|
- case '2': //甄别待办
|
|
|
- router.push('/todo/discern');
|
|
|
- break;
|
|
|
- case '3': // 发布待办
|
|
|
- router.push('/todo/publish');
|
|
|
- break;
|
|
|
- case '4': // 回访待办
|
|
|
- router.push('/todo/visit');
|
|
|
+ case '1': // 工单坐席待办
|
|
|
+ router.push('/todo/seats');
|
|
|
break;
|
|
|
}
|
|
|
};
|
|
|
+// 编辑工单
|
|
|
+const onOrderEdit = (row: any) => {
|
|
|
+ if (!router.hasRoute('orderAccept')) {
|
|
|
+ ElMessage.warning('未找到工单受理页面');
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ router.push({
|
|
|
+ name: 'orderAccept',
|
|
|
+ params: {
|
|
|
+ tagsViewName: '工单受理-' + row.no,
|
|
|
+ id: row.id,
|
|
|
+ callId: '0',
|
|
|
+ },
|
|
|
+ });
|
|
|
+};
|
|
|
+// 签收工单
|
|
|
+const onSign = (row: any) => {
|
|
|
+ ElMessageBox.confirm(`您确定要要签收【${row.title}】,是否继续?`, '提示', {
|
|
|
+ confirmButtonText: '确认',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ draggable: true,
|
|
|
+ cancelButtonClass: 'default-button',
|
|
|
+ autofocus: false,
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ orderSign(row.id).then(() => {
|
|
|
+ ElMessage.success('签收成功');
|
|
|
+ handleChange(activeName.value);
|
|
|
+ });
|
|
|
+ })
|
|
|
+ .catch(() => {});
|
|
|
+};
|
|
|
onMounted(() => {
|
|
|
handleChange(activeName.value);
|
|
|
});
|