|
@@ -9,13 +9,13 @@
|
|
|
<el-input v-model="state.queryParams.Keyword" placeholder="工单编码/标题" clearable @keyup.enter="queryList" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8">
|
|
|
- <el-form-item label="审批状态" prop="VisitApplyState">
|
|
|
- <el-select v-model="state.queryParams.VisitApplyState" placeholder="请选择审批状态" clearable class="w100">
|
|
|
- <el-option v-for="item in visitApplyState" :value="item.key" :key="item.key" :label="item.value" />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8">
|
|
|
+ <el-form-item label="审批状态" prop="VisitApplyState">
|
|
|
+ <el-select v-model="state.queryParams.VisitApplyState" placeholder="请选择审批状态" clearable class="w100">
|
|
|
+ <el-option v-for="item in visitApplyState" :value="item.key" :key="item.key" :label="item.value" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8">
|
|
|
<el-form-item label=" ">
|
|
|
<el-button type="primary" @click="queryList" :loading="state.loading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
|
|
@@ -43,11 +43,11 @@
|
|
|
<span>{{ row.order?.isProvince ? '省工单' : '市工单' }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="工单标题" show-overflow-tooltip width="400">
|
|
|
- <template #default="{ row }">
|
|
|
- <span class="color-primary">{{ row.order?.title }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
+ <el-table-column label="工单标题" show-overflow-tooltip width="400">
|
|
|
+ <template #default="{ row }">
|
|
|
+ <span class="color-primary">{{ row.order?.title }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column prop="order.sourceChannel" label="来源方式" show-overflow-tooltip></el-table-column>
|
|
|
<el-table-column prop="sourceChannel" label="回访方式" show-overflow-tooltip></el-table-column>
|
|
|
<el-table-column prop="order.acceptType" label="受理类型" show-overflow-tooltip width="150"></el-table-column>
|
|
@@ -88,8 +88,7 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column label="不满意原因" show-overflow-tooltip width="150">
|
|
|
<template #default="{ row }">
|
|
|
- {{ row.orderVisit?.orderVisitDetails[0].orgNoSatisfiedReason?.map((item) => item.value).join(',') }}
|
|
|
-
|
|
|
+ {{ row.orderVisit?.orderVisitDetails[0].orgNoSatisfiedReason?.map((item) => item.value).join(',') }}
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="visitApplyStateText" label="二次回访状态" show-overflow-tooltip width="120"></el-table-column>
|
|
@@ -99,9 +98,20 @@
|
|
|
<el-table-column prop="examinOpinion" label="审批意见" show-overflow-tooltip width="200"></el-table-column>
|
|
|
<el-table-column label="操作" width="190" fixed="right" align="center">
|
|
|
<template #default="{ row }">
|
|
|
- <el-button link type="primary" @click="onAudit(row)" title="审批" v-if="[0].includes(row.visitApplyState)"> 审批 </el-button>
|
|
|
- <el-button link type="primary" @click="onDetail(row)" title="查看审批详情" v-if="[1,2].includes(row.visitApplyState)"> 二次回访详情 </el-button>
|
|
|
- <order-detail :order="row.order"/>
|
|
|
+ <el-button
|
|
|
+ link
|
|
|
+ type="primary"
|
|
|
+ @click="onAudit(row)"
|
|
|
+ title="审批"
|
|
|
+ v-if="[0].includes(row.visitApplyState)"
|
|
|
+ v-auth="'business:secondVisitAudit:audit'"
|
|
|
+ >
|
|
|
+ 审批
|
|
|
+ </el-button>
|
|
|
+ <el-button link type="primary" @click="onDetail(row)" title="查看审批详情" v-if="[1, 2].includes(row.visitApplyState)">
|
|
|
+ 二次回访详情
|
|
|
+ </el-button>
|
|
|
+ <order-detail :order="row.order" />
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<template #empty>
|
|
@@ -116,10 +126,10 @@
|
|
|
@pagination="queryList"
|
|
|
/>
|
|
|
</el-card>
|
|
|
- <!-- 二次回访 -->
|
|
|
- <second-visit ref="secondVisitRef" @updateList="queryList"/>
|
|
|
- <!-- 回访详情 -->
|
|
|
- <second-visit-detail ref="secondVisitDetailRef" />
|
|
|
+ <!-- 二次回访 -->
|
|
|
+ <second-visit ref="secondVisitRef" @updateList="queryList" />
|
|
|
+ <!-- 回访详情 -->
|
|
|
+ <second-visit-detail ref="secondVisitDetailRef" />
|
|
|
</div>
|
|
|
</template>
|
|
|
<script setup lang="ts" name="secondVisitAudit">
|
|
@@ -129,7 +139,7 @@ import { auth } from '/@/utils/authFunction';
|
|
|
import { throttle } from '/@/utils/tools';
|
|
|
import { formatDate } from '/@/utils/formatTime';
|
|
|
import { useRouter } from 'vue-router';
|
|
|
-import {secondVisitBaseData, secondVisitList} from "/@/api/business/secondVisit";
|
|
|
+import { secondVisitBaseData, secondVisitList } from '/@/api/business/secondVisit';
|
|
|
// 引入组件
|
|
|
const SecondVisit = defineAsyncComponent(() => import('/@/views/business/secondVisit/components/Visit.vue'));
|
|
|
const SecondVisitDetail = defineAsyncComponent(() => import('/@/views/business/secondVisit/components/Visit-detail.vue'));
|
|
@@ -143,7 +153,7 @@ const state = reactive(<any>{
|
|
|
PageIndex: 1,
|
|
|
PageSize: 10,
|
|
|
Keyword: null, // 关键字
|
|
|
- VisitApplyState:null, // 审批中
|
|
|
+ VisitApplyState: null, // 审批中
|
|
|
},
|
|
|
tableData: [], //表单
|
|
|
loading: false, // 加载
|
|
@@ -151,26 +161,26 @@ const state = reactive(<any>{
|
|
|
});
|
|
|
// 基础信息
|
|
|
const visitApplyState = ref<EmptyArrayType>([]); // 回访状态
|
|
|
-const getBaseData = async()=>{
|
|
|
- try {
|
|
|
- const res = await secondVisitBaseData();
|
|
|
- visitApplyState.value = res.result?.visitApplyState ?? [];
|
|
|
- } catch (error) {
|
|
|
- console.log(error);
|
|
|
- }
|
|
|
-}
|
|
|
+const getBaseData = async () => {
|
|
|
+ try {
|
|
|
+ const res = await secondVisitBaseData();
|
|
|
+ visitApplyState.value = res.result?.visitApplyState ?? [];
|
|
|
+ } catch (error) {
|
|
|
+ console.log(error);
|
|
|
+ }
|
|
|
+};
|
|
|
/** 获取列表 */
|
|
|
const queryList = throttle(() => {
|
|
|
if (!auth('business:secondVisitAudit:query')) ElMessage.error('抱歉,您没有权限查看二次回访审批!');
|
|
|
else {
|
|
|
- secondVisitList(state.queryParams)
|
|
|
- .then((res) => {
|
|
|
- state.tableData = res.result?.items ?? [];
|
|
|
- state.total = res.result?.total ?? 0;
|
|
|
- })
|
|
|
- .catch((err) => {
|
|
|
- console.log(err);
|
|
|
- });
|
|
|
+ secondVisitList(state.queryParams)
|
|
|
+ .then((res) => {
|
|
|
+ state.tableData = res.result?.items ?? [];
|
|
|
+ state.total = res.result?.total ?? 0;
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ console.log(err);
|
|
|
+ });
|
|
|
}
|
|
|
}, 300);
|
|
|
|
|
@@ -193,15 +203,15 @@ const onExport = () => {
|
|
|
// 审批
|
|
|
const secondVisitRef = ref<RefType>();
|
|
|
const onAudit = (row: any) => {
|
|
|
- secondVisitRef.value.openDialog(row,true);
|
|
|
+ secondVisitRef.value.openDialog(row, true);
|
|
|
};
|
|
|
// 查看审批详情
|
|
|
const secondVisitDetailRef = ref<RefType>();
|
|
|
-const onDetail = (row:any)=>{
|
|
|
- secondVisitDetailRef.value.openDialog(row);
|
|
|
-}
|
|
|
+const onDetail = (row: any) => {
|
|
|
+ secondVisitDetailRef.value.openDialog(row);
|
|
|
+};
|
|
|
onMounted(() => {
|
|
|
- getBaseData();
|
|
|
+ getBaseData();
|
|
|
queryList();
|
|
|
});
|
|
|
-</script>
|
|
|
+</script>
|